{"id":58293,"name":"typescript-language-server","ecosystem":"npm","repository_url":"https://github.com/typescript-language-server/typescript-language-server","issues_count":152,"created_at":"2025-08-05T13:18:44.681Z","updated_at":"2025-08-05T13:18:44.681Z","purl":"pkg:npm/typescript-language-server","metadata":{"id":2493202,"name":"typescript-language-server","ecosystem":"npm","description":"Language Server Protocol (LSP) implementation for TypeScript using tsserver","homepage":null,"licenses":"Apache-2.0","normalized_licenses":["Apache-2.0"],"repository_url":"https://github.com/typescript-language-server/typescript-language-server","keywords_array":[],"namespace":null,"versions_count":138,"first_release_published_at":"2017-08-11T05:47:14.343Z","latest_release_published_at":"2025-08-05T11:11:37.748Z","latest_release_number":"4.4.0","last_synced_at":"2025-08-08T06:32:53.347Z","created_at":"2022-04-10T02:34:18.856Z","updated_at":"2025-08-08T06:32:53.347Z","registry_url":"https://www.npmjs.com/package/typescript-language-server","install_command":"npm install typescript-language-server","documentation_url":null,"metadata":{"funding":null,"dist-tags":{"logs":"3.3.3-0","latest":"4.4.0"}},"repo_metadata":{"uuid":"105263586","full_name":"typescript-language-server/typescript-language-server","owner":"typescript-language-server","description":"TypeScript \u0026 JavaScript Language Server","archived":false,"fork":false,"pushed_at":"2024-01-22T18:35:39.000Z","size":2427,"stargazers_count":1584,"open_issues_count":21,"forks_count":178,"subscribers_count":20,"default_branch":"master","last_synced_at":"2024-01-23T17:25:55.794Z","etag":null,"topics":["hacktoberfest","language-server","language-server-protocol","lsp","typescript"],"latest_commit_sha":null,"homepage":"https://www.npmjs.com/package/typescript-language-server","language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"other","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/typescript-language-server.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null}},"created_at":"2017-09-29T11:10:41.000Z","updated_at":"2024-01-26T06:23:44.961Z","dependencies_parsed_at":"2023-12-10T22:23:22.854Z","dependency_job_id":"8ced54cf-4f07-483a-9d42-c2766da2b64b","html_url":"https://github.com/typescript-language-server/typescript-language-server","commit_stats":{"total_commits":512,"total_committers":45,"mean_commits":"11.377777777777778","dds":0.62890625,"last_synced_commit":"9f3e578792161095aab0eccb4c3e394dd9a4e697"},"previous_names":["theia-ide/typescript-language-server"],"tags_count":82,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/typescript-language-server%2Ftypescript-language-server","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/typescript-language-server%2Ftypescript-language-server/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/typescript-language-server%2Ftypescript-language-server/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/typescript-language-server%2Ftypescript-language-server/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/typescript-language-server","download_url":"https://codeload.github.com/typescript-language-server/typescript-language-server/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":190783917,"owners_count":12469943,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"},"owner_record":{"login":"typescript-language-server","name":"Typescript LSP","uuid":"88598215","kind":"organization","description":"","email":null,"website":null,"location":null,"twitter":null,"company":null,"icon_url":"https://avatars.githubusercontent.com/u/88598215?v=4","repositories_count":1,"last_synced_at":"2023-03-03T22:07:09.158Z","metadata":{"has_sponsors_listing":false},"html_url":"https://github.com/typescript-language-server","created_at":"2022-11-14T05:56:15.955Z","updated_at":"2023-03-03T22:07:09.173Z","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/typescript-language-server","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/typescript-language-server/repositories"},"tags":[{"name":"v4.3.1","sha":"a00c1cc364b3bcdbab0cf2ac3d5b6e6adc4d9377","kind":"commit","published_at":"2024-01-12T20:51:36.000Z","download_url":"https://codeload.github.com/typescript-language-server/typescript-language-server/tar.gz/v4.3.1","html_url":"https://github.com/typescript-language-server/typescript-language-server/releases/tag/v4.3.1","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/typescript-language-server%2Ftypescript-language-server/tags/v4.3.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/typescript-language-server%2Ftypescript-language-server/tags/v4.3.1/manifests"},{"name":"v4.3.0","sha":"80ef6149cd64b9859e402adb1ca3e7c410ab52b5","kind":"commit","published_at":"2024-01-09T08:07:34.000Z","download_url":"https://codeload.github.com/typescript-language-server/typescript-language-server/tar.gz/v4.3.0","html_url":"https://github.com/typescript-language-server/typescript-language-server/releases/tag/v4.3.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/typescript-language-server%2Ftypescript-language-server/tags/v4.3.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/typescript-language-server%2Ftypescript-language-server/tags/v4.3.0/manifests"},{"name":"v4.2.0","sha":"223a4977273f14ebd922e277cab1c538b79fbc9b","kind":"commit","published_at":"2023-12-09T21:24:53.000Z","download_url":"https://codeload.github.com/typescript-language-server/typescript-language-server/tar.gz/v4.2.0","html_url":"https://github.com/typescript-language-server/typescript-language-server/releases/tag/v4.2.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/typescript-language-server%2Ftypescript-language-server/tags/v4.2.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/typescript-language-server%2Ftypescript-language-server/tags/v4.2.0/manifests"},{"name":"v4.1.3","sha":"bc5e79fca03cfc42dffb4c83ebaef2ca856760f0","kind":"commit","published_at":"2023-11-27T08:00:19.000Z","download_url":"https://codeload.github.com/typescript-language-server/typescript-language-server/tar.gz/v4.1.3","html_url":"https://github.com/typescript-language-server/typescript-language-server/releases/tag/v4.1.3","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/typescript-language-server%2Ftypescript-language-server/tags/v4.1.3","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/typescript-language-server%2Ftypescript-language-server/tags/v4.1.3/manifests"},{"name":"v4.1.2","sha":"4498ac9b12d7c540b45e9869a61d1fb9d64b7422","kind":"commit","published_at":"2023-11-14T23:12:25.000Z","download_url":"https://codeload.github.com/typescript-language-server/typescript-language-server/tar.gz/v4.1.2","html_url":"https://github.com/typescript-language-server/typescript-language-server/releases/tag/v4.1.2","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/typescript-language-server%2Ftypescript-language-server/tags/v4.1.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/typescript-language-server%2Ftypescript-language-server/tags/v4.1.2/manifests"},{"name":"v4.1.1","sha":"25db04c6a0269839792fa54485273a53e2a5e771","kind":"commit","published_at":"2023-11-14T08:10:19.000Z","download_url":"https://codeload.github.com/typescript-language-server/typescript-language-server/tar.gz/v4.1.1","html_url":"https://github.com/typescript-language-server/typescript-language-server/releases/tag/v4.1.1","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/typescript-language-server%2Ftypescript-language-server/tags/v4.1.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/typescript-language-server%2Ftypescript-language-server/tags/v4.1.1/manifests"},{"name":"v4.1.0","sha":"94d566eabae5f012a54eea8623723448ab4c7efa","kind":"commit","published_at":"2023-11-08T08:23:21.000Z","download_url":"https://codeload.github.com/typescript-language-server/typescript-language-server/tar.gz/v4.1.0","html_url":"https://github.com/typescript-language-server/typescript-language-server/releases/tag/v4.1.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/typescript-language-server%2Ftypescript-language-server/tags/v4.1.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/typescript-language-server%2Ftypescript-language-server/tags/v4.1.0/manifests"},{"name":"v4.0.0","sha":"9ec5aaef82939fcc7a86f1d251a5e49f703d152a","kind":"commit","published_at":"2023-10-20T19:34:26.000Z","download_url":"https://codeload.github.com/typescript-language-server/typescript-language-server/tar.gz/v4.0.0","html_url":"https://github.com/typescript-language-server/typescript-language-server/releases/tag/v4.0.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/typescript-language-server%2Ftypescript-language-server/tags/v4.0.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/typescript-language-server%2Ftypescript-language-server/tags/v4.0.0/manifests"},{"name":"v3.3.2","sha":"9f3e578792161095aab0eccb4c3e394dd9a4e697","kind":"commit","published_at":"2023-04-17T08:35:45.000Z","download_url":"https://codeload.github.com/typescript-language-server/typescript-language-server/tar.gz/v3.3.2","html_url":"https://github.com/typescript-language-server/typescript-language-server/releases/tag/v3.3.2","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/typescript-language-server%2Ftypescript-language-server/tags/v3.3.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/typescript-language-server%2Ftypescript-language-server/tags/v3.3.2/manifests"},{"name":"v3.3.1","sha":"9d0120b5c24cf1205652f0857523ace59b1fc546","kind":"commit","published_at":"2023-03-27T21:36:26.000Z","download_url":"https://codeload.github.com/typescript-language-server/typescript-language-server/tar.gz/v3.3.1","html_url":"https://github.com/typescript-language-server/typescript-language-server/releases/tag/v3.3.1","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/typescript-language-server%2Ftypescript-language-server/tags/v3.3.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/typescript-language-server%2Ftypescript-language-server/tags/v3.3.1/manifests"},{"name":"v3.3.0","sha":"70eae7e0885d9b5b7841cad3ba033f3c9c6955d2","kind":"commit","published_at":"2023-02-20T13:08:15.000Z","download_url":"https://codeload.github.com/typescript-language-server/typescript-language-server/tar.gz/v3.3.0","html_url":"https://github.com/typescript-language-server/typescript-language-server/releases/tag/v3.3.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/typescript-language-server%2Ftypescript-language-server/tags/v3.3.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/typescript-language-server%2Ftypescript-language-server/tags/v3.3.0/manifests"},{"name":"v3.2.0","sha":"e5e85b9f47d93c289843a196acd42f7570006081","kind":"commit","published_at":"2023-02-16T07:12:30.000Z","download_url":"https://codeload.github.com/typescript-language-server/typescript-language-server/tar.gz/v3.2.0","html_url":"https://github.com/typescript-language-server/typescript-language-server/releases/tag/v3.2.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/typescript-language-server%2Ftypescript-language-server/tags/v3.2.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/typescript-language-server%2Ftypescript-language-server/tags/v3.2.0/manifests"},{"name":"v3.1.0","sha":"dfea05e51ef84d98c6b24029fa859c29ec508ac0","kind":"commit","published_at":"2023-02-04T22:39:42.000Z","download_url":"https://codeload.github.com/typescript-language-server/typescript-language-server/tar.gz/v3.1.0","html_url":"https://github.com/typescript-language-server/typescript-language-server/releases/tag/v3.1.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/typescript-language-server%2Ftypescript-language-server/tags/v3.1.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/typescript-language-server%2Ftypescript-language-server/tags/v3.1.0/manifests"},{"name":"v3.0.3","sha":"7dda79ac09235702e83b911586e603727dbf3b6e","kind":"commit","published_at":"2023-01-23T19:39:48.000Z","download_url":"https://codeload.github.com/typescript-language-server/typescript-language-server/tar.gz/v3.0.3","html_url":"https://github.com/typescript-language-server/typescript-language-server/releases/tag/v3.0.3","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/typescript-language-server%2Ftypescript-language-server/tags/v3.0.3","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/typescript-language-server%2Ftypescript-language-server/tags/v3.0.3/manifests"},{"name":"v3.0.2","sha":"d8b4cb698b6b74f12edb0a19e6c28b391cc0e985","kind":"commit","published_at":"2023-01-14T14:55:34.000Z","download_url":"https://codeload.github.com/typescript-language-server/typescript-language-server/tar.gz/v3.0.2","html_url":"https://github.com/typescript-language-server/typescript-language-server/releases/tag/v3.0.2","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/typescript-language-server%2Ftypescript-language-server/tags/v3.0.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/typescript-language-server%2Ftypescript-language-server/tags/v3.0.2/manifests"},{"name":"v3.0.1","sha":"5a39c1f801ab0cad725a2b8711c0e0d46606a08b","kind":"commit","published_at":"2022-12-30T10:23:21.000Z","download_url":"https://codeload.github.com/typescript-language-server/typescript-language-server/tar.gz/v3.0.1","html_url":"https://github.com/typescript-language-server/typescript-language-server/releases/tag/v3.0.1","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/typescript-language-server%2Ftypescript-language-server/tags/v3.0.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/typescript-language-server%2Ftypescript-language-server/tags/v3.0.1/manifests"},{"name":"v3.0.0","sha":"7bfda76d4719b62050126e02292ca7a5f2556726","kind":"commit","published_at":"2022-12-29T20:14:13.000Z","download_url":"https://codeload.github.com/typescript-language-server/typescript-language-server/tar.gz/v3.0.0","html_url":"https://github.com/typescript-language-server/typescript-language-server/releases/tag/v3.0.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/typescript-language-server%2Ftypescript-language-server/tags/v3.0.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/typescript-language-server%2Ftypescript-language-server/tags/v3.0.0/manifests"},{"name":"v2.3.0","sha":"f0f04e58b6220be29544366a81b7178a6d2167bb","kind":"commit","published_at":"2022-12-27T13:44:54.000Z","download_url":"https://codeload.github.com/typescript-language-server/typescript-language-server/tar.gz/v2.3.0","html_url":"https://github.com/typescript-language-server/typescript-language-server/releases/tag/v2.3.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/typescript-language-server%2Ftypescript-language-server/tags/v2.3.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/typescript-language-server%2Ftypescript-language-server/tags/v2.3.0/manifests"},{"name":"v2.2.0","sha":"e99948760bd4b00d36857d95b483615904cd54fd","kind":"commit","published_at":"2022-12-09T20:59:00.000Z","download_url":"https://codeload.github.com/typescript-language-server/typescript-language-server/tar.gz/v2.2.0","html_url":"https://github.com/typescript-language-server/typescript-language-server/releases/tag/v2.2.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/typescript-language-server%2Ftypescript-language-server/tags/v2.2.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/typescript-language-server%2Ftypescript-language-server/tags/v2.2.0/manifests"},{"name":"v2.1.0","sha":"a98b834bfe66d078f389a57dce8fd8b71924173b","kind":"commit","published_at":"2022-10-20T08:01:29.000Z","download_url":"https://codeload.github.com/typescript-language-server/typescript-language-server/tar.gz/v2.1.0","html_url":"https://github.com/typescript-language-server/typescript-language-server/releases/tag/v2.1.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/typescript-language-server%2Ftypescript-language-server/tags/v2.1.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/typescript-language-server%2Ftypescript-language-server/tags/v2.1.0/manifests"},{"name":"v2.0.1","sha":"4dbf0683106f0d9925e4360f0cc5a198067528b8","kind":"commit","published_at":"2022-10-07T22:13:53.000Z","download_url":"https://codeload.github.com/typescript-language-server/typescript-language-server/tar.gz/v2.0.1","html_url":"https://github.com/typescript-language-server/typescript-language-server/releases/tag/v2.0.1","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/typescript-language-server%2Ftypescript-language-server/tags/v2.0.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/typescript-language-server%2Ftypescript-language-server/tags/v2.0.1/manifests"},{"name":"v2.0.0","sha":"74bce980dbf0485d93cec2288f77048bc9a27e85","kind":"commit","published_at":"2022-09-28T18:41:02.000Z","download_url":"https://codeload.github.com/typescript-language-server/typescript-language-server/tar.gz/v2.0.0","html_url":"https://github.com/typescript-language-server/typescript-language-server/releases/tag/v2.0.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/typescript-language-server%2Ftypescript-language-server/tags/v2.0.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/typescript-language-server%2Ftypescript-language-server/tags/v2.0.0/manifests"},{"name":"v1.2.0","sha":"851a5273255f27be4539a3b433fe7ea2967a2716","kind":"commit","published_at":"2022-09-12T19:30:13.000Z","download_url":"https://codeload.github.com/typescript-language-server/typescript-language-server/tar.gz/v1.2.0","html_url":"https://github.com/typescript-language-server/typescript-language-server/releases/tag/v1.2.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/typescript-language-server%2Ftypescript-language-server/tags/v1.2.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/typescript-language-server%2Ftypescript-language-server/tags/v1.2.0/manifests"},{"name":"v1.1.2","sha":"9faa37f001a8a9e600914b80d3c549a0b37c78b5","kind":"commit","published_at":"2022-08-25T19:48:34.000Z","download_url":"https://codeload.github.com/typescript-language-server/typescript-language-server/tar.gz/v1.1.2","html_url":"https://github.com/typescript-language-server/typescript-language-server/releases/tag/v1.1.2","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/typescript-language-server%2Ftypescript-language-server/tags/v1.1.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/typescript-language-server%2Ftypescript-language-server/tags/v1.1.2/manifests"},{"name":"v1.1.1","sha":"4c0fa34be1aa1b6dd2ee385e6a142f03b40f817e","kind":"commit","published_at":"2022-08-22T05:41:00.000Z","download_url":"https://codeload.github.com/typescript-language-server/typescript-language-server/tar.gz/v1.1.1","html_url":"https://github.com/typescript-language-server/typescript-language-server/releases/tag/v1.1.1","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/typescript-language-server%2Ftypescript-language-server/tags/v1.1.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/typescript-language-server%2Ftypescript-language-server/tags/v1.1.1/manifests"},{"name":"v1.1.0","sha":"0aa211fcfba366625f29922f93ce9ee093fdba2c","kind":"commit","published_at":"2022-08-21T21:54:28.000Z","download_url":"https://codeload.github.com/typescript-language-server/typescript-language-server/tar.gz/v1.1.0","html_url":"https://github.com/typescript-language-server/typescript-language-server/releases/tag/v1.1.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/typescript-language-server%2Ftypescript-language-server/tags/v1.1.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/typescript-language-server%2Ftypescript-language-server/tags/v1.1.0/manifests"},{"name":"v1.0.0","sha":"ababf24515c858dcc5c3e78d1d28c44a2f0b1926","kind":"commit","published_at":"2022-08-06T09:39:00.000Z","download_url":"https://codeload.github.com/typescript-language-server/typescript-language-server/tar.gz/v1.0.0","html_url":"https://github.com/typescript-language-server/typescript-language-server/releases/tag/v1.0.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/typescript-language-server%2Ftypescript-language-server/tags/v1.0.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/typescript-language-server%2Ftypescript-language-server/tags/v1.0.0/manifests"},{"name":"v0.11.2","sha":"468e663f11b187203de022491df673c0a5846c2c","kind":"commit","published_at":"2022-06-24T22:38:56.000Z","download_url":"https://codeload.github.com/typescript-language-server/typescript-language-server/tar.gz/v0.11.2","html_url":"https://github.com/typescript-language-server/typescript-language-server/releases/tag/v0.11.2","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/typescript-language-server%2Ftypescript-language-server/tags/v0.11.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/typescript-language-server%2Ftypescript-language-server/tags/v0.11.2/manifests"},{"name":"v0.11.1","sha":"b1bdb04d33c87dc6e2c75c0b5a212f75738047ac","kind":"commit","published_at":"2022-06-13T13:34:28.000Z","download_url":"https://codeload.github.com/typescript-language-server/typescript-language-server/tar.gz/v0.11.1","html_url":"https://github.com/typescript-language-server/typescript-language-server/releases/tag/v0.11.1","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/typescript-language-server%2Ftypescript-language-server/tags/v0.11.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/typescript-language-server%2Ftypescript-language-server/tags/v0.11.1/manifests"},{"name":"v0.11.0","sha":"038d1e05d1d29778d7069424254e6521de0a484f","kind":"commit","published_at":"2022-06-06T20:29:06.000Z","download_url":"https://codeload.github.com/typescript-language-server/typescript-language-server/tar.gz/v0.11.0","html_url":"https://github.com/typescript-language-server/typescript-language-server/releases/tag/v0.11.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/typescript-language-server%2Ftypescript-language-server/tags/v0.11.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/typescript-language-server%2Ftypescript-language-server/tags/v0.11.0/manifests"},{"name":"v0.10.1","sha":"b8eb21885161f263856bbf387c496c2fe925d9ed","kind":"commit","published_at":"2022-05-18T22:19:07.000Z","download_url":"https://codeload.github.com/typescript-language-server/typescript-language-server/tar.gz/v0.10.1","html_url":"https://github.com/typescript-language-server/typescript-language-server/releases/tag/v0.10.1","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/typescript-language-server%2Ftypescript-language-server/tags/v0.10.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/typescript-language-server%2Ftypescript-language-server/tags/v0.10.1/manifests"},{"name":"v0.10.0","sha":"91e7325448e1caf8bda157c160bc765b0ede4cdb","kind":"commit","published_at":"2022-05-12T06:15:25.000Z","download_url":"https://codeload.github.com/typescript-language-server/typescript-language-server/tar.gz/v0.10.0","html_url":"https://github.com/typescript-language-server/typescript-language-server/releases/tag/v0.10.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/typescript-language-server%2Ftypescript-language-server/tags/v0.10.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/typescript-language-server%2Ftypescript-language-server/tags/v0.10.0/manifests"},{"name":"v0.9.7","sha":"6fe20dac1c28c684cf3214bfdbd98f05225090b9","kind":"commit","published_at":"2022-02-27T19:45:18.000Z","download_url":"https://codeload.github.com/typescript-language-server/typescript-language-server/tar.gz/v0.9.7","html_url":"https://github.com/typescript-language-server/typescript-language-server/releases/tag/v0.9.7","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/typescript-language-server%2Ftypescript-language-server/tags/v0.9.7","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/typescript-language-server%2Ftypescript-language-server/tags/v0.9.7/manifests"},{"name":"v0.9.6","sha":"d6d419bc7f0c326cc1f09f93d132d88186ddaf07","kind":"tag","published_at":"2022-02-02T08:40:26.000Z","download_url":"https://codeload.github.com/typescript-language-server/typescript-language-server/tar.gz/v0.9.6","html_url":"https://github.com/typescript-language-server/typescript-language-server/releases/tag/v0.9.6","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/typescript-language-server%2Ftypescript-language-server/tags/v0.9.6","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/typescript-language-server%2Ftypescript-language-server/tags/v0.9.6/manifests"},{"name":"v0.9.5","sha":"1fc51e81f7452e6d5b1860360281ee913dfc3fdd","kind":"tag","published_at":"2022-01-27T13:03:34.000Z","download_url":"https://codeload.github.com/typescript-language-server/typescript-language-server/tar.gz/v0.9.5","html_url":"https://github.com/typescript-language-server/typescript-language-server/releases/tag/v0.9.5","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/typescript-language-server%2Ftypescript-language-server/tags/v0.9.5","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/typescript-language-server%2Ftypescript-language-server/tags/v0.9.5/manifests"},{"name":"v0.9.4","sha":"b654e5e40e55cf56f96e396d6609f282b62e57b5","kind":"tag","published_at":"2022-01-19T21:18:11.000Z","download_url":"https://codeload.github.com/typescript-language-server/typescript-language-server/tar.gz/v0.9.4","html_url":"https://github.com/typescript-language-server/typescript-language-server/releases/tag/v0.9.4","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/typescript-language-server%2Ftypescript-language-server/tags/v0.9.4","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/typescript-language-server%2Ftypescript-language-server/tags/v0.9.4/manifests"},{"name":"v0.9.3","sha":"8c366b42383d0b03bff773dc000199272413a7cf","kind":"tag","published_at":"2022-01-16T22:35:30.000Z","download_url":"https://codeload.github.com/typescript-language-server/typescript-language-server/tar.gz/v0.9.3","html_url":"https://github.com/typescript-language-server/typescript-language-server/releases/tag/v0.9.3","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/typescript-language-server%2Ftypescript-language-server/tags/v0.9.3","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/typescript-language-server%2Ftypescript-language-server/tags/v0.9.3/manifests"},{"name":"v0.9.2","sha":"bab70ee71168d27dfc1fae460623674c848cc96a","kind":"tag","published_at":"2022-01-14T19:54:19.000Z","download_url":"https://codeload.github.com/typescript-language-server/typescript-language-server/tar.gz/v0.9.2","html_url":"https://github.com/typescript-language-server/typescript-language-server/releases/tag/v0.9.2","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/typescript-language-server%2Ftypescript-language-server/tags/v0.9.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/typescript-language-server%2Ftypescript-language-server/tags/v0.9.2/manifests"},{"name":"v0.9.1","sha":"bff8ce3cc142831e581a0397b5eefaba20e587fc","kind":"tag","published_at":"2022-01-07T10:58:31.000Z","download_url":"https://codeload.github.com/typescript-language-server/typescript-language-server/tar.gz/v0.9.1","html_url":"https://github.com/typescript-language-server/typescript-language-server/releases/tag/v0.9.1","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/typescript-language-server%2Ftypescript-language-server/tags/v0.9.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/typescript-language-server%2Ftypescript-language-server/tags/v0.9.1/manifests"},{"name":"v0.9.0","sha":"5ba55d94a6bfc2c94358bccb9df440a1671e0f0f","kind":"tag","published_at":"2022-01-07T09:55:02.000Z","download_url":"https://codeload.github.com/typescript-language-server/typescript-language-server/tar.gz/v0.9.0","html_url":"https://github.com/typescript-language-server/typescript-language-server/releases/tag/v0.9.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/typescript-language-server%2Ftypescript-language-server/tags/v0.9.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/typescript-language-server%2Ftypescript-language-server/tags/v0.9.0/manifests"},{"name":"v0.8.1","sha":"fb6c4cd2a07be15355b23819b9de8282c04402f8","kind":"tag","published_at":"2021-11-25T22:39:58.000Z","download_url":"https://codeload.github.com/typescript-language-server/typescript-language-server/tar.gz/v0.8.1","html_url":"https://github.com/typescript-language-server/typescript-language-server/releases/tag/v0.8.1","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/typescript-language-server%2Ftypescript-language-server/tags/v0.8.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/typescript-language-server%2Ftypescript-language-server/tags/v0.8.1/manifests"},{"name":"v0.8.0","sha":"6b8f9ae6c88172d9f278afacf7e60b1a4cb8ba26","kind":"tag","published_at":"2021-11-21T21:48:57.000Z","download_url":"https://codeload.github.com/typescript-language-server/typescript-language-server/tar.gz/v0.8.0","html_url":"https://github.com/typescript-language-server/typescript-language-server/releases/tag/v0.8.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/typescript-language-server%2Ftypescript-language-server/tags/v0.8.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/typescript-language-server%2Ftypescript-language-server/tags/v0.8.0/manifests"},{"name":"v0.7.1","sha":"4d68332ee95a1c8530f82b96148d341f88c07385","kind":"tag","published_at":"2021-11-10T09:57:13.000Z","download_url":"https://codeload.github.com/typescript-language-server/typescript-language-server/tar.gz/v0.7.1","html_url":"https://github.com/typescript-language-server/typescript-language-server/releases/tag/v0.7.1","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/typescript-language-server%2Ftypescript-language-server/tags/v0.7.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/typescript-language-server%2Ftypescript-language-server/tags/v0.7.1/manifests"},{"name":"v0.7.0","sha":"3197f2450fe44779ef5c3b44583dc4fd501a60d9","kind":"tag","published_at":"2021-11-09T22:19:43.000Z","download_url":"https://codeload.github.com/typescript-language-server/typescript-language-server/tar.gz/v0.7.0","html_url":"https://github.com/typescript-language-server/typescript-language-server/releases/tag/v0.7.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/typescript-language-server%2Ftypescript-language-server/tags/v0.7.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/typescript-language-server%2Ftypescript-language-server/tags/v0.7.0/manifests"},{"name":"v0.6.5","sha":"4c1da4a46de05c17bc3adf89b71f3f67d15b6c2e","kind":"tag","published_at":"2021-11-03T21:39:53.000Z","download_url":"https://codeload.github.com/typescript-language-server/typescript-language-server/tar.gz/v0.6.5","html_url":"https://github.com/typescript-language-server/typescript-language-server/releases/tag/v0.6.5","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/typescript-language-server%2Ftypescript-language-server/tags/v0.6.5","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/typescript-language-server%2Ftypescript-language-server/tags/v0.6.5/manifests"},{"name":"v0.6.4","sha":"43f2634b4bcff2cc0a322beb2d28abf9e3bfd4cd","kind":"tag","published_at":"2021-10-12T19:15:05.000Z","download_url":"https://codeload.github.com/typescript-language-server/typescript-language-server/tar.gz/v0.6.4","html_url":"https://github.com/typescript-language-server/typescript-language-server/releases/tag/v0.6.4","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/typescript-language-server%2Ftypescript-language-server/tags/v0.6.4","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/typescript-language-server%2Ftypescript-language-server/tags/v0.6.4/manifests"},{"name":"v0.6.3","sha":"e9f930816a6bcbc842774e0b23ccb3a2cfc2c2f4","kind":"tag","published_at":"2021-09-27T18:57:05.000Z","download_url":"https://codeload.github.com/typescript-language-server/typescript-language-server/tar.gz/v0.6.3","html_url":"https://github.com/typescript-language-server/typescript-language-server/releases/tag/v0.6.3","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/typescript-language-server%2Ftypescript-language-server/tags/v0.6.3","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/typescript-language-server%2Ftypescript-language-server/tags/v0.6.3/manifests"},{"name":"v0.6.2","sha":"1f795d4ebc862b95c7ae8543fb060e697f5a665c","kind":"tag","published_at":"2021-08-27T06:46:43.000Z","download_url":"https://codeload.github.com/typescript-language-server/typescript-language-server/tar.gz/v0.6.2","html_url":"https://github.com/typescript-language-server/typescript-language-server/releases/tag/v0.6.2","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/typescript-language-server%2Ftypescript-language-server/tags/v0.6.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/typescript-language-server%2Ftypescript-language-server/tags/v0.6.2/manifests"},{"name":"v0.6.1","sha":"c491e96cf82f88088c03c6b4e97eb2a115378f92","kind":"tag","published_at":"2021-08-16T07:25:46.000Z","download_url":"https://codeload.github.com/typescript-language-server/typescript-language-server/tar.gz/v0.6.1","html_url":"https://github.com/typescript-language-server/typescript-language-server/releases/tag/v0.6.1","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/typescript-language-server%2Ftypescript-language-server/tags/v0.6.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/typescript-language-server%2Ftypescript-language-server/tags/v0.6.1/manifests"},{"name":"v0.6.0","sha":"45a017ae4738f6837d98ce6b2d956df071f8a5c9","kind":"tag","published_at":"2021-08-12T13:19:51.000Z","download_url":"https://codeload.github.com/typescript-language-server/typescript-language-server/tar.gz/v0.6.0","html_url":"https://github.com/typescript-language-server/typescript-language-server/releases/tag/v0.6.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/typescript-language-server%2Ftypescript-language-server/tags/v0.6.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/typescript-language-server%2Ftypescript-language-server/tags/v0.6.0/manifests"},{"name":"v0.5.4","sha":"b902ace4138f90347cede6ec58444b259031ac07","kind":"tag","published_at":"2021-07-01T00:28:02.000Z","download_url":"https://codeload.github.com/typescript-language-server/typescript-language-server/tar.gz/v0.5.4","html_url":"https://github.com/typescript-language-server/typescript-language-server/releases/tag/v0.5.4","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/typescript-language-server%2Ftypescript-language-server/tags/v0.5.4","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/typescript-language-server%2Ftypescript-language-server/tags/v0.5.4/manifests"},{"name":"v0.5.2","sha":"bd5034aeff5f2da7db6d9ee6ab4e78c93f2f5a74","kind":"tag","published_at":"2021-07-01T00:15:55.000Z","download_url":"https://codeload.github.com/typescript-language-server/typescript-language-server/tar.gz/v0.5.2","html_url":"https://github.com/typescript-language-server/typescript-language-server/releases/tag/v0.5.2","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/typescript-language-server%2Ftypescript-language-server/tags/v0.5.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/typescript-language-server%2Ftypescript-language-server/tags/v0.5.2/manifests"},{"name":"v0.5.1","sha":"1622275e1d1194a2adba8852e46827b2fb74b733","kind":"tag","published_at":"2021-01-16T02:26:48.000Z","download_url":"https://codeload.github.com/typescript-language-server/typescript-language-server/tar.gz/v0.5.1","html_url":"https://github.com/typescript-language-server/typescript-language-server/releases/tag/v0.5.1","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/typescript-language-server%2Ftypescript-language-server/tags/v0.5.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/typescript-language-server%2Ftypescript-language-server/tags/v0.5.1/manifests"},{"name":"v0.5.0","sha":"2d9a970061d4f331bde31f6e42eae19d3bebbd93","kind":"tag","published_at":"2021-01-16T02:20:12.000Z","download_url":"https://codeload.github.com/typescript-language-server/typescript-language-server/tar.gz/v0.5.0","html_url":"https://github.com/typescript-language-server/typescript-language-server/releases/tag/v0.5.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/typescript-language-server%2Ftypescript-language-server/tags/v0.5.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/typescript-language-server%2Ftypescript-language-server/tags/v0.5.0/manifests"},{"name":"v0.4.0","sha":"20f1124cd2ed37a6abf04fee3a81435403f74514","kind":"tag","published_at":"2019-08-28T07:48:03.000Z","download_url":"https://codeload.github.com/typescript-language-server/typescript-language-server/tar.gz/v0.4.0","html_url":"https://github.com/typescript-language-server/typescript-language-server/releases/tag/v0.4.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/typescript-language-server%2Ftypescript-language-server/tags/v0.4.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/typescript-language-server%2Ftypescript-language-server/tags/v0.4.0/manifests"},{"name":"v0.3.8","sha":"5fc13013a0de790170df0c58709803e6a54ed88a","kind":"tag","published_at":"2019-05-16T13:24:58.000Z","download_url":"https://codeload.github.com/typescript-language-server/typescript-language-server/tar.gz/v0.3.8","html_url":"https://github.com/typescript-language-server/typescript-language-server/releases/tag/v0.3.8","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/typescript-language-server%2Ftypescript-language-server/tags/v0.3.8","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/typescript-language-server%2Ftypescript-language-server/tags/v0.3.8/manifests"},{"name":"v0.3.7","sha":"0d1c780d3780db2e069c9021e7a21c7806b079d3","kind":"tag","published_at":"2018-11-18T13:49:30.000Z","download_url":"https://codeload.github.com/typescript-language-server/typescript-language-server/tar.gz/v0.3.7","html_url":"https://github.com/typescript-language-server/typescript-language-server/releases/tag/v0.3.7","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/typescript-language-server%2Ftypescript-language-server/tags/v0.3.7","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/typescript-language-server%2Ftypescript-language-server/tags/v0.3.7/manifests"},{"name":"v0.3.6","sha":"89438c441fc4c833d781fe24cdacc3f3715ef170","kind":"tag","published_at":"2018-09-18T07:23:03.000Z","download_url":"https://codeload.github.com/typescript-language-server/typescript-language-server/tar.gz/v0.3.6","html_url":"https://github.com/typescript-language-server/typescript-language-server/releases/tag/v0.3.6","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/typescript-language-server%2Ftypescript-language-server/tags/v0.3.6","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/typescript-language-server%2Ftypescript-language-server/tags/v0.3.6/manifests"},{"name":"v0.3.5","sha":"084f7d3c6adc0ca4d909269ca69fdd7469ffecc8","kind":"tag","published_at":"2018-09-14T10:10:10.000Z","download_url":"https://codeload.github.com/typescript-language-server/typescript-language-server/tar.gz/v0.3.5","html_url":"https://github.com/typescript-language-server/typescript-language-server/releases/tag/v0.3.5","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/typescript-language-server%2Ftypescript-language-server/tags/v0.3.5","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/typescript-language-server%2Ftypescript-language-server/tags/v0.3.5/manifests"},{"name":"v0.3.4","sha":"aadac2f01d2b85609e5bdb770564abc1c07424b5","kind":"tag","published_at":"2018-09-12T07:23:33.000Z","download_url":"https://codeload.github.com/typescript-language-server/typescript-language-server/tar.gz/v0.3.4","html_url":"https://github.com/typescript-language-server/typescript-language-server/releases/tag/v0.3.4","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/typescript-language-server%2Ftypescript-language-server/tags/v0.3.4","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/typescript-language-server%2Ftypescript-language-server/tags/v0.3.4/manifests"},{"name":"v0.3.3","sha":"19affa59320b0ea46f08c0b009fea2b50e0b3041","kind":"tag","published_at":"2018-09-11T06:56:04.000Z","download_url":"https://codeload.github.com/typescript-language-server/typescript-language-server/tar.gz/v0.3.3","html_url":"https://github.com/typescript-language-server/typescript-language-server/releases/tag/v0.3.3","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/typescript-language-server%2Ftypescript-language-server/tags/v0.3.3","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/typescript-language-server%2Ftypescript-language-server/tags/v0.3.3/manifests"},{"name":"v0.3.2","sha":"8935d3dc93430306e8ae099665a6214b95f6789b","kind":"tag","published_at":"2018-09-06T17:27:43.000Z","download_url":"https://codeload.github.com/typescript-language-server/typescript-language-server/tar.gz/v0.3.2","html_url":"https://github.com/typescript-language-server/typescript-language-server/releases/tag/v0.3.2","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/typescript-language-server%2Ftypescript-language-server/tags/v0.3.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/typescript-language-server%2Ftypescript-language-server/tags/v0.3.2/manifests"},{"name":"v0.3.1","sha":"4f006413b39fd15cf0d2f36be54c75f928e5964b","kind":"tag","published_at":"2018-09-04T09:18:04.000Z","download_url":"https://codeload.github.com/typescript-language-server/typescript-language-server/tar.gz/v0.3.1","html_url":"https://github.com/typescript-language-server/typescript-language-server/releases/tag/v0.3.1","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/typescript-language-server%2Ftypescript-language-server/tags/v0.3.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/typescript-language-server%2Ftypescript-language-server/tags/v0.3.1/manifests"},{"name":"v0.2.1","sha":"3f4d88799f814ee26102689bcdf8ad32be1c08ec","kind":"tag","published_at":"2018-09-04T09:01:02.000Z","download_url":"https://codeload.github.com/typescript-language-server/typescript-language-server/tar.gz/v0.2.1","html_url":"https://github.com/typescript-language-server/typescript-language-server/releases/tag/v0.2.1","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/typescript-language-server%2Ftypescript-language-server/tags/v0.2.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/typescript-language-server%2Ftypescript-language-server/tags/v0.2.1/manifests"},{"name":"v0.2.0","sha":"294356916ab86a01f5e6b91c894dff3880415fe8","kind":"tag","published_at":"2018-07-30T08:06:20.000Z","download_url":"https://codeload.github.com/typescript-language-server/typescript-language-server/tar.gz/v0.2.0","html_url":"https://github.com/typescript-language-server/typescript-language-server/releases/tag/v0.2.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/typescript-language-server%2Ftypescript-language-server/tags/v0.2.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/typescript-language-server%2Ftypescript-language-server/tags/v0.2.0/manifests"},{"name":"v0.1.11","sha":"3f4b05557716aab6087d14119da93695f21e58d4","kind":"tag","published_at":"2018-04-25T19:36:10.000Z","download_url":"https://codeload.github.com/typescript-language-server/typescript-language-server/tar.gz/v0.1.11","html_url":"https://github.com/typescript-language-server/typescript-language-server/releases/tag/v0.1.11","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/typescript-language-server%2Ftypescript-language-server/tags/v0.1.11","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/typescript-language-server%2Ftypescript-language-server/tags/v0.1.11/manifests"},{"name":"v0.1.10","sha":"5f676985962ba5bd4ca78217df8bc36d8358b0ae","kind":"tag","published_at":"2018-04-25T19:08:17.000Z","download_url":"https://codeload.github.com/typescript-language-server/typescript-language-server/tar.gz/v0.1.10","html_url":"https://github.com/typescript-language-server/typescript-language-server/releases/tag/v0.1.10","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/typescript-language-server%2Ftypescript-language-server/tags/v0.1.10","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/typescript-language-server%2Ftypescript-language-server/tags/v0.1.10/manifests"},{"name":"v0.1.9","sha":"b286f8cd80b80a6beaea5eedb4a072ff51ef2010","kind":"tag","published_at":"2018-02-20T15:02:38.000Z","download_url":"https://codeload.github.com/typescript-language-server/typescript-language-server/tar.gz/v0.1.9","html_url":"https://github.com/typescript-language-server/typescript-language-server/releases/tag/v0.1.9","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/typescript-language-server%2Ftypescript-language-server/tags/v0.1.9","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/typescript-language-server%2Ftypescript-language-server/tags/v0.1.9/manifests"},{"name":"v0.1.8","sha":"1253b5c7ab0d87c0a53f808984676fbfbb56569f","kind":"tag","published_at":"2018-02-20T10:52:15.000Z","download_url":"https://codeload.github.com/typescript-language-server/typescript-language-server/tar.gz/v0.1.8","html_url":"https://github.com/typescript-language-server/typescript-language-server/releases/tag/v0.1.8","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/typescript-language-server%2Ftypescript-language-server/tags/v0.1.8","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/typescript-language-server%2Ftypescript-language-server/tags/v0.1.8/manifests"},{"name":"v0.1.7","sha":"364c7c73adc0013d2fc88b26bff1e26cfefd8b69","kind":"tag","published_at":"2018-02-17T07:05:06.000Z","download_url":"https://codeload.github.com/typescript-language-server/typescript-language-server/tar.gz/v0.1.7","html_url":"https://github.com/typescript-language-server/typescript-language-server/releases/tag/v0.1.7","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/typescript-language-server%2Ftypescript-language-server/tags/v0.1.7","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/typescript-language-server%2Ftypescript-language-server/tags/v0.1.7/manifests"},{"name":"v0.1.6","sha":"10a89575d6492f170b544aa298ad9d5b6fdaebf3","kind":"tag","published_at":"2018-02-10T18:23:26.000Z","download_url":"https://codeload.github.com/typescript-language-server/typescript-language-server/tar.gz/v0.1.6","html_url":"https://github.com/typescript-language-server/typescript-language-server/releases/tag/v0.1.6","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/typescript-language-server%2Ftypescript-language-server/tags/v0.1.6","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/typescript-language-server%2Ftypescript-language-server/tags/v0.1.6/manifests"},{"name":"v0.1.5","sha":"cd940f04cacfd625fb2affd28bacf8b832e2af1d","kind":"tag","published_at":"2017-11-17T11:16:33.000Z","download_url":"https://codeload.github.com/typescript-language-server/typescript-language-server/tar.gz/v0.1.5","html_url":"https://github.com/typescript-language-server/typescript-language-server/releases/tag/v0.1.5","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/typescript-language-server%2Ftypescript-language-server/tags/v0.1.5","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/typescript-language-server%2Ftypescript-language-server/tags/v0.1.5/manifests"},{"name":"v0.1.4","sha":"fe80761706f152445eec402e933b8d87c9d8fe9a","kind":"tag","published_at":"2017-10-24T08:23:09.000Z","download_url":"https://codeload.github.com/typescript-language-server/typescript-language-server/tar.gz/v0.1.4","html_url":"https://github.com/typescript-language-server/typescript-language-server/releases/tag/v0.1.4","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/typescript-language-server%2Ftypescript-language-server/tags/v0.1.4","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/typescript-language-server%2Ftypescript-language-server/tags/v0.1.4/manifests"},{"name":"v0.1.3","sha":"1c289386c5f8de2d4b1a0f048e3abe05405ea718","kind":"tag","published_at":"2017-10-06T06:33:00.000Z","download_url":"https://codeload.github.com/typescript-language-server/typescript-language-server/tar.gz/v0.1.3","html_url":"https://github.com/typescript-language-server/typescript-language-server/releases/tag/v0.1.3","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/typescript-language-server%2Ftypescript-language-server/tags/v0.1.3","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/typescript-language-server%2Ftypescript-language-server/tags/v0.1.3/manifests"},{"name":"v0.1.2","sha":"e80d2f3cad993ce16bc1224d3295b920fefee63b","kind":"tag","published_at":"2017-10-03T14:50:50.000Z","download_url":"https://codeload.github.com/typescript-language-server/typescript-language-server/tar.gz/v0.1.2","html_url":"https://github.com/typescript-language-server/typescript-language-server/releases/tag/v0.1.2","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/typescript-language-server%2Ftypescript-language-server/tags/v0.1.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/typescript-language-server%2Ftypescript-language-server/tags/v0.1.2/manifests"},{"name":"v0.1.1","sha":"37157842661c0a5b4740548edbba4fdec96863f9","kind":"tag","published_at":"2017-10-03T14:42:08.000Z","download_url":"https://codeload.github.com/typescript-language-server/typescript-language-server/tar.gz/v0.1.1","html_url":"https://github.com/typescript-language-server/typescript-language-server/releases/tag/v0.1.1","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/typescript-language-server%2Ftypescript-language-server/tags/v0.1.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/typescript-language-server%2Ftypescript-language-server/tags/v0.1.1/manifests"},{"name":"v0.0.7","sha":"92e33317c1416354beda325c2c45e33a12558daf","kind":"tag","published_at":"2017-10-01T14:40:49.000Z","download_url":"https://codeload.github.com/typescript-language-server/typescript-language-server/tar.gz/v0.0.7","html_url":"https://github.com/typescript-language-server/typescript-language-server/releases/tag/v0.0.7","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/typescript-language-server%2Ftypescript-language-server/tags/v0.0.7","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/typescript-language-server%2Ftypescript-language-server/tags/v0.0.7/manifests"},{"name":"v0.0.6","sha":"a49cc30f487dd365b7cfdb3acd6175de4dc506f0","kind":"tag","published_at":"2017-10-01T10:06:46.000Z","download_url":"https://codeload.github.com/typescript-language-server/typescript-language-server/tar.gz/v0.0.6","html_url":"https://github.com/typescript-language-server/typescript-language-server/releases/tag/v0.0.6","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/typescript-language-server%2Ftypescript-language-server/tags/v0.0.6","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/typescript-language-server%2Ftypescript-language-server/tags/v0.0.6/manifests"},{"name":"v0.0.5","sha":"58cc9f72682188721b83ed829d6b96e766c49e03","kind":"tag","published_at":"2017-09-30T21:59:34.000Z","download_url":"https://codeload.github.com/typescript-language-server/typescript-language-server/tar.gz/v0.0.5","html_url":"https://github.com/typescript-language-server/typescript-language-server/releases/tag/v0.0.5","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/typescript-language-server%2Ftypescript-language-server/tags/v0.0.5","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/typescript-language-server%2Ftypescript-language-server/tags/v0.0.5/manifests"},{"name":"v0.0.4","sha":"12b3a330443f23928ff6ce0900aab36175f79649","kind":"tag","published_at":"2017-09-30T18:53:26.000Z","download_url":"https://codeload.github.com/typescript-language-server/typescript-language-server/tar.gz/v0.0.4","html_url":"https://github.com/typescript-language-server/typescript-language-server/releases/tag/v0.0.4","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/typescript-language-server%2Ftypescript-language-server/tags/v0.0.4","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/typescript-language-server%2Ftypescript-language-server/tags/v0.0.4/manifests"},{"name":"v0.0.3","sha":"94d38ba2b3ecdfd4dbf8bc50eb73112ecf966c31","kind":"tag","published_at":"2017-09-29T13:56:50.000Z","download_url":"https://codeload.github.com/typescript-language-server/typescript-language-server/tar.gz/v0.0.3","html_url":"https://github.com/typescript-language-server/typescript-language-server/releases/tag/v0.0.3","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/typescript-language-server%2Ftypescript-language-server/tags/v0.0.3","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/typescript-language-server%2Ftypescript-language-server/tags/v0.0.3/manifests"},{"name":"v0.0.2","sha":"48842ace7cc8cee5b5a3da7bd52d7807d6e6ba84","kind":"tag","published_at":"2017-09-29T13:05:50.000Z","download_url":"https://codeload.github.com/typescript-language-server/typescript-language-server/tar.gz/v0.0.2","html_url":"https://github.com/typescript-language-server/typescript-language-server/releases/tag/v0.0.2","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/typescript-language-server%2Ftypescript-language-server/tags/v0.0.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/typescript-language-server%2Ftypescript-language-server/tags/v0.0.2/manifests"}]},"repo_metadata_updated_at":"2024-03-13T13:41:58.774Z","dependent_packages_count":110,"downloads":2542515,"downloads_period":"last-month","dependent_repos_count":433,"rankings":{"downloads":0.4622563918876303,"dependent_repos_count":0.8393975972868886,"dependent_packages_count":0.4122404954705291,"stargazers_count":2.221324961024219,"forks_count":2.6467130264148255,"docker_downloads_count":0.6074589438418854,"average":1.1982319026543296},"purl":"pkg:npm/typescript-language-server","advisories":[],"docker_usage_url":"https://docker.ecosyste.ms/usage/npm/typescript-language-server","docker_dependents_count":33,"docker_downloads_count":105243,"usage_url":"https://repos.ecosyste.ms/usage/npm/typescript-language-server","dependent_repositories_url":"https://repos.ecosyste.ms/api/v1/usage/npm/typescript-language-server/dependencies","status":null,"funding_links":[],"critical":null,"issue_metadata":{"last_synced_at":"2024-03-05T21:44:28.986Z","issues_count":88,"pull_requests_count":160,"avg_time_to_close_issue":8093947.897435897,"avg_time_to_close_pull_request":2661796.78,"issues_closed_count":78,"pull_requests_closed_count":150,"pull_request_authors_count":14,"issue_authors_count":80,"avg_comments_per_issue":4.454545454545454,"avg_comments_per_pull_request":1.09375,"merged_pull_requests_count":135,"bot_issues_count":1,"bot_pull_requests_count":114,"past_year_issues_count":51,"past_year_pull_requests_count":110,"past_year_avg_time_to_close_issue":571720.7555555556,"past_year_avg_time_to_close_pull_request":1102155.54,"past_year_issues_closed_count":45,"past_year_pull_requests_closed_count":100,"past_year_pull_request_authors_count":8,"past_year_issue_authors_count":48,"past_year_avg_comments_per_issue":2.686274509803922,"past_year_avg_comments_per_pull_request":1.1454545454545455,"past_year_bot_issues_count":0,"past_year_bot_pull_requests_count":88,"past_year_merged_pull_requests_count":92,"issues_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/repositories/typescript-language-server%2Ftypescript-language-server/issues"},"versions_url":"https://packages.ecosyste.ms/api/v1/registries/npmjs.org/packages/typescript-language-server/versions","version_numbers_url":"https://packages.ecosyste.ms/api/v1/registries/npmjs.org/packages/typescript-language-server/version_numbers","dependent_packages_url":"https://packages.ecosyste.ms/api/v1/registries/npmjs.org/packages/typescript-language-server/dependent_packages","related_packages_url":"https://packages.ecosyste.ms/api/v1/registries/npmjs.org/packages/typescript-language-server/related_packages","maintainers":[{"uuid":"rchl","login":"rchl","name":null,"email":"rchl2k@gmail.com","url":null,"packages_count":21,"html_url":"https://www.npmjs.com/~rchl","role":null,"created_at":"2022-11-15T12:08:23.125Z","updated_at":"2022-11-15T12:08:23.125Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/npmjs.org/maintainers/rchl/packages"},{"uuid":"donniewest","login":"donniewest","name":null,"email":"me@donniewest.com","url":null,"packages_count":10,"html_url":"https://www.npmjs.com/~donniewest","role":null,"created_at":"2022-11-15T12:08:23.090Z","updated_at":"2022-11-15T12:08:23.090Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/npmjs.org/maintainers/donniewest/packages"},{"uuid":"prabir","login":"prabir","name":null,"email":"mail@prabir.me","url":null,"packages_count":3,"html_url":"https://www.npmjs.com/~prabir","role":null,"created_at":"2022-11-15T12:08:22.962Z","updated_at":"2022-11-15T12:08:22.962Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/npmjs.org/maintainers/prabir/packages"}],"registry":{"name":"npmjs.org","url":"https://registry.npmjs.org","ecosystem":"npm","default":true,"packages_count":5096264,"maintainers_count":1040632,"namespaces_count":307328,"keywords_count":719068,"github":"npm","metadata":{"funded_packages_count":153952},"icon_url":"https://github.com/npm.png","created_at":"2022-04-04T15:19:23.081Z","updated_at":"2025-08-05T06:18:14.973Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/npmjs.org/packages","maintainers_url":"https://packages.ecosyste.ms/api/v1/registries/npmjs.org/maintainers","namespaces_url":"https://packages.ecosyste.ms/api/v1/registries/npmjs.org/namespaces"}},"unique_repositories_count":67,"unique_repositories_count_past_30_days":18,"recent_issues":[{"uuid":"4610062846","node_id":"PR_kwDOSdscls7jwaym","number":4,"state":"open","title":"deps(deps): bump the all-dependencies group across 1 directory with 79 updates","user":"dependabot[bot]","labels":[],"assignees":[],"locked":false,"comments_count":1,"pull_request":true,"closed_at":null,"author_association":null,"state_reason":null,"created_at":"2026-06-08T04:37:07.000Z","updated_at":"2026-06-08T04:37:07.000Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"deps(deps): bump","group_name":"all-dependencies","update_count":79,"packages":[{"name":"@eslint-react/eslint-plugin","old_version":"2.13.0","new_version":"5.8.16","repository_url":"https://github.com/Rel1cx/eslint-react"},{"name":"@eslint/js","old_version":"9.39.2","new_version":"10.0.1","repository_url":"https://github.com/eslint/eslint"},{"name":"@typescript-eslint/eslint-plugin","old_version":"8.56.0","new_version":"8.60.1","repository_url":"https://github.com/typescript-eslint/typescript-eslint"},{"name":"@typescript-eslint/parser","old_version":"8.56.0","new_version":"8.60.1","repository_url":"https://github.com/typescript-eslint/typescript-eslint"},{"name":"eslint","old_version":"9.39.2","new_version":"10.4.1","repository_url":"https://github.com/eslint/eslint"},{"name":"eslint-import-resolver-typescript","old_version":"4.4.4","new_version":"4.4.5","repository_url":"https://github.com/import-js/eslint-import-resolver-typescript"},{"name":"eslint-plugin-react-hooks","old_version":"7.0.1","new_version":"7.1.1","repository_url":"https://github.com/facebook/react"},{"name":"globals","old_version":"17.3.0","new_version":"17.6.0","repository_url":"https://github.com/sindresorhus/globals"},{"name":"graphql","old_version":"16.12.0","new_version":"16.14.1","repository_url":"https://github.com/graphql/graphql-js"},{"name":"happy-dom","old_version":"20.6.2","new_version":"20.10.2","repository_url":"https://github.com/capricorn86/happy-dom"},{"name":"jiti","old_version":"2.6.1","new_version":"2.7.0","repository_url":"https://github.com/unjs/jiti"},{"name":"lint-staged","old_version":"16.2.7","new_version":"17.0.7","repository_url":"https://github.com/lint-staged/lint-staged"},{"name":"mermaid","old_version":"11.12.3","new_version":"11.15.0","repository_url":"https://github.com/mermaid-js/mermaid"},{"name":"prettier","old_version":"3.8.1","new_version":"3.8.3","repository_url":"https://github.com/prettier/prettier"},{"name":"react","old_version":"19.2.4","new_version":"19.2.7","repository_url":"https://github.com/facebook/react"},{"name":"@types/react","old_version":"19.2.14","new_version":"19.2.17","repository_url":"https://github.com/DefinitelyTyped/DefinitelyTyped"},{"name":"typescript","old_version":"5.9.3","new_version":"6.0.3","repository_url":"https://github.com/microsoft/TypeScript"},{"name":"typescript-eslint","old_version":"8.56.0","new_version":"8.60.1","repository_url":"https://github.com/typescript-eslint/typescript-eslint"},{"name":"typescript-language-server","old_version":"5.1.3","new_version":"5.3.0","repository_url":"https://github.com/typescript-language-server/typescript-language-server"},{"name":"vite","old_version":"7.3.1","new_version":"8.0.16","repository_url":"https://github.com/vitejs/vite"},{"name":"vitepress","old_version":"2.0.0-alpha.16","new_version":"2.0.0-alpha.17","repository_url":"https://github.com/vuejs/vitepress"},{"name":"vitepress-plugin-llms","old_version":"1.11.0","new_version":"1.13.1","repository_url":"https://github.com/okineadev/vitepress-plugin-llms"},{"name":"vitest","old_version":"4.0.18","new_version":"4.1.8","repository_url":"https://github.com/vitest-dev/vitest"},{"name":"wrangler","old_version":"4.66.0","new_version":"4.98.0","repository_url":"https://github.com/cloudflare/workers-sdk"},{"name":"@ai-sdk/openai","old_version":"3.0.29","new_version":"3.0.68","repository_url":"https://github.com/vercel/ai"},{"name":"@better-auth/passkey","old_version":"1.4.18","new_version":"1.6.14","repository_url":"https://github.com/better-auth/better-auth"},{"name":"@better-auth/stripe","old_version":"1.4.18","new_version":"1.6.14","repository_url":"https://github.com/better-auth/better-auth"},{"name":"@trpc/server","old_version":"11.10.0","new_version":"11.17.0","repository_url":"https://github.com/trpc/trpc"},{"name":"ai","old_version":"6.0.91","new_version":"6.0.197","repository_url":"https://github.com/vercel/ai"},{"name":"better-auth","old_version":"1.4.18","new_version":"1.6.14","repository_url":"https://github.com/better-auth/better-auth"},{"name":"drizzle-orm","old_version":"0.45.1","new_version":"0.45.2","repository_url":"https://github.com/drizzle-team/drizzle-orm"},{"name":"postgres","old_version":"3.4.8","new_version":"3.4.9","repository_url":"https://github.com/porsager/postgres"},{"name":"resend","old_version":"6.9.2","new_version":"6.12.4","repository_url":"https://github.com/resend/resend-node"},{"name":"stripe","old_version":"20.3.1","new_version":"22.2.0","repository_url":"https://github.com/stripe/stripe-node"},{"name":"@cloudflare/workers-types","old_version":"4.20260218.0","new_version":"4.20260608.1","repository_url":"https://github.com/cloudflare/workerd"},{"name":"@types/bun","old_version":"1.3.9","new_version":"1.3.14","repository_url":"https://github.com/DefinitelyTyped/DefinitelyTyped"},{"name":"hono","old_version":"4.11.10","new_version":"4.12.23","repository_url":"https://github.com/honojs/hono"},{"name":"zod","old_version":"4.3.6","new_version":"4.4.3","repository_url":"https://github.com/colinhacks/zod"},{"name":"@radix-ui/react-checkbox","old_version":"1.3.3","new_version":"1.3.4","repository_url":"https://github.com/radix-ui/primitives"},{"name":"@radix-ui/react-radio-group","old_version":"1.3.8","new_version":"1.4.0","repository_url":"https://github.com/radix-ui/primitives"},{"name":"@radix-ui/react-scroll-area","old_version":"1.2.10","new_version":"1.2.11","repository_url":"https://github.com/radix-ui/primitives"},{"name":"@radix-ui/react-select","old_version":"2.2.6","new_version":"2.3.0","repository_url":"https://github.com/radix-ui/primitives"},{"name":"@radix-ui/react-separator","old_version":"1.1.8","new_version":"1.1.9","repository_url":"https://github.com/radix-ui/primitives"},{"name":"@radix-ui/react-switch","old_version":"1.2.6","new_version":"1.3.0","repository_url":"https://github.com/radix-ui/primitives"},{"name":"@tanstack/react-query","old_version":"5.90.21","new_version":"5.101.0","repository_url":"https://github.com/TanStack/query"},{"name":"@tanstack/react-router","old_version":"1.161.1","new_version":"1.170.15","repository_url":"https://github.com/TanStack/router"},{"name":"@trpc/client","old_version":"11.10.0","new_version":"11.17.0","repository_url":"https://github.com/trpc/trpc"},{"name":"@trpc/tanstack-react-query","old_version":"11.10.0","new_version":"11.17.0","repository_url":"https://github.com/trpc/trpc"},{"name":"jotai","old_version":"2.17.1","new_version":"2.20.0","repository_url":"https://github.com/pmndrs/jotai"},{"name":"jotai-effect","old_version":"2.2.3","new_version":"2.3.1","repository_url":"https://github.com/jotaijs/jotai-effect"},{"name":"lucide-react","old_version":"0.574.0","new_version":"1.17.0","repository_url":"https://github.com/lucide-icons/lucide"},{"name":"react-dom","old_version":"19.2.4","new_version":"19.2.7","repository_url":"https://github.com/facebook/react"},{"name":"react-error-boundary","old_version":"6.1.1","new_version":"6.1.2","repository_url":"https://github.com/bvaughn/react-error-boundary"},{"name":"tailwind-merge","old_version":"3.4.1","new_version":"3.6.0","repository_url":"https://github.com/dcastil/tailwind-merge"},{"name":"@tailwindcss/postcss","old_version":"4.2.0","new_version":"4.3.0","repository_url":"https://github.com/tailwindlabs/tailwindcss"},{"name":"@tanstack/react-query-devtools","old_version":"5.91.3","new_version":"5.101.0","repository_url":"https://github.com/TanStack/query"},{"name":"@tanstack/react-router-devtools","old_version":"1.161.1","new_version":"1.167.0","repository_url":"https://github.com/TanStack/router"},{"name":"@tanstack/router-plugin","old_version":"1.161.1","new_version":"1.168.18","repository_url":"https://github.com/TanStack/router"},{"name":"@types/node","old_version":"25.2.3","new_version":"25.9.2","repository_url":"https://github.com/DefinitelyTyped/DefinitelyTyped"},{"name":"@vitejs/plugin-react","old_version":"5.1.4","new_version":"6.0.2","repository_url":"https://github.com/vitejs/vite-plugin-react"},{"name":"@vitejs/plugin-react-swc","old_version":"4.2.3","new_version":"4.3.1","repository_url":"https://github.com/vitejs/vite-plugin-react"},{"name":"autoprefixer","old_version":"10.4.24","new_version":"10.5.0","repository_url":"https://github.com/postcss/autoprefixer"},{"name":"globby","old_version":"16.1.1","new_version":"16.2.0","repository_url":"https://github.com/sindresorhus/globby"},{"name":"@react-email/components","old_version":"1.0.8","new_version":"1.0.12","repository_url":"https://github.com/resend/react-email"},{"name":"@react-email/render","old_version":"2.0.4","new_version":"2.0.8","repository_url":"https://github.com/resend/react-email"},{"name":"@react-email/preview-server","old_version":"5.2.8","new_version":"5.2.10","repository_url":"https://github.com/resend/react-email"},{"name":"react-email","old_version":"5.2.8","new_version":"6.5.0","repository_url":"https://github.com/resend/react-email"},{"name":"@astrojs/react","old_version":"4.4.2","new_version":"5.0.7","repository_url":"https://github.com/withastro/astro"},{"name":"astro","old_version":"5.17.2","new_version":"6.4.4","repository_url":"https://github.com/withastro/astro"},{"name":"dotenv","old_version":"17.3.1","new_version":"17.4.2","repository_url":"https://github.com/motdotla/dotenv"},{"name":"drizzle-kit","old_version":"0.31.9","new_version":"0.31.10","repository_url":"https://github.com/drizzle-team/drizzle-orm"},{"name":"@radix-ui/react-avatar","old_version":"1.1.11","new_version":"1.1.12","repository_url":"https://github.com/radix-ui/primitives"},{"name":"@radix-ui/react-dialog","old_version":"1.1.15","new_version":"1.1.16","repository_url":"https://github.com/radix-ui/primitives"},{"name":"@radix-ui/react-label","old_version":"2.1.8","new_version":"2.1.9","repository_url":"https://github.com/radix-ui/primitives"},{"name":"@modelcontextprotocol/sdk","old_version":"1.26.0","new_version":"1.29.0","repository_url":"https://github.com/modelcontextprotocol/typescript-sdk"},{"name":"got","old_version":"14.6.6","new_version":"15.0.5","repository_url":"https://github.com/sindresorhus/got"}],"path":null,"ecosystem":"npm"},"body":"Bumps the all-dependencies group with 76 updates in the / directory:\n\n| Package | From | To |\n| --- | --- | --- |\n| [@eslint-react/eslint-plugin](https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin) | `2.13.0` | `5.8.16` |\n| [@eslint/js](https://github.com/eslint/eslint/tree/HEAD/packages/js) | `9.39.2` | `10.0.1` |\n| [@typescript-eslint/eslint-plugin](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin) | `8.56.0` | `8.60.1` |\n| [@typescript-eslint/parser](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/parser) | `8.56.0` | `8.60.1` |\n| [eslint](https://github.com/eslint/eslint) | `9.39.2` | `10.4.1` |\n| [eslint-import-resolver-typescript](https://github.com/import-js/eslint-import-resolver-typescript) | `4.4.4` | `4.4.5` |\n| [eslint-plugin-react-hooks](https://github.com/facebook/react/tree/HEAD/packages/eslint-plugin-react-hooks) | `7.0.1` | `7.1.1` |\n| [globals](https://github.com/sindresorhus/globals) | `17.3.0` | `17.6.0` |\n| [graphql](https://github.com/graphql/graphql-js) | `16.12.0` | `16.14.1` |\n| [happy-dom](https://github.com/capricorn86/happy-dom) | `20.6.2` | `20.10.2` |\n| [jiti](https://github.com/unjs/jiti) | `2.6.1` | `2.7.0` |\n| [lint-staged](https://github.com/lint-staged/lint-staged) | `16.2.7` | `17.0.7` |\n| [mermaid](https://github.com/mermaid-js/mermaid) | `11.12.3` | `11.15.0` |\n| [prettier](https://github.com/prettier/prettier) | `3.8.1` | `3.8.3` |\n| [react](https://github.com/facebook/react/tree/HEAD/packages/react) | `19.2.4` | `19.2.7` |\n| [@types/react](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/react) | `19.2.14` | `19.2.17` |\n| [typescript](https://github.com/microsoft/TypeScript) | `5.9.3` | `6.0.3` |\n| [typescript-eslint](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/typescript-eslint) | `8.56.0` | `8.60.1` |\n| [typescript-language-server](https://github.com/typescript-language-server/typescript-language-server) | `5.1.3` | `5.3.0` |\n| [vite](https://github.com/vitejs/vite/tree/HEAD/packages/vite) | `7.3.1` | `8.0.16` |\n| [vitepress](https://github.com/vuejs/vitepress) | `2.0.0-alpha.16` | `2.0.0-alpha.17` |\n| [vitepress-plugin-llms](https://github.com/okineadev/vitepress-plugin-llms) | `1.11.0` | `1.13.1` |\n| [vitest](https://github.com/vitest-dev/vitest/tree/HEAD/packages/vitest) | `4.0.18` | `4.1.8` |\n| [wrangler](https://github.com/cloudflare/workers-sdk/tree/HEAD/packages/wrangler) | `4.66.0` | `4.98.0` |\n| [@ai-sdk/openai](https://github.com/vercel/ai/tree/HEAD/packages/openai) | `3.0.29` | `3.0.68` |\n| [@better-auth/passkey](https://github.com/better-auth/better-auth/tree/HEAD/packages/passkey) | `1.4.18` | `1.6.14` |\n| [@better-auth/stripe](https://github.com/better-auth/better-auth/tree/HEAD/packages/stripe) | `1.4.18` | `1.6.14` |\n| [@trpc/server](https://github.com/trpc/trpc/tree/HEAD/packages/server) | `11.10.0` | `11.17.0` |\n| [ai](https://github.com/vercel/ai/tree/HEAD/packages/ai) | `6.0.91` | `6.0.197` |\n| [better-auth](https://github.com/better-auth/better-auth/tree/HEAD/packages/better-auth) | `1.4.18` | `1.6.14` |\n| [drizzle-orm](https://github.com/drizzle-team/drizzle-orm) | `0.45.1` | `0.45.2` |\n| [postgres](https://github.com/porsager/postgres) | `3.4.8` | `3.4.9` |\n| [resend](https://github.com/resend/resend-node) | `6.9.2` | `6.12.4` |\n| [stripe](https://github.com/stripe/stripe-node) | `20.3.1` | `22.2.0` |\n| [@cloudflare/workers-types](https://github.com/cloudflare/workerd) | `4.20260218.0` | `4.20260608.1` |\n| [@types/bun](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/bun) | `1.3.9` | `1.3.14` |\n| [hono](https://github.com/honojs/hono) | `4.11.10` | `4.12.23` |\n| [zod](https://github.com/colinhacks/zod) | `4.3.6` | `4.4.3` |\n| [@radix-ui/react-checkbox](https://github.com/radix-ui/primitives/tree/HEAD/packages/react/checkbox) | `1.3.3` | `1.3.4` |\n| [@radix-ui/react-radio-group](https://github.com/radix-ui/primitives/tree/HEAD/packages/react/radio-group) | `1.3.8` | `1.4.0` |\n| [@radix-ui/react-scroll-area](https://github.com/radix-ui/primitives/tree/HEAD/packages/react/scroll-area) | `1.2.10` | `1.2.11` |\n| [@radix-ui/react-select](https://github.com/radix-ui/primitives/tree/HEAD/packages/react/select) | `2.2.6` | `2.3.0` |\n| [@radix-ui/react-separator](https://github.com/radix-ui/primitives/tree/HEAD/packages/react/separator) | `1.1.8` | `1.1.9` |\n| [@radix-ui/react-switch](https://github.com/radix-ui/primitives/tree/HEAD/packages/react/switch) | `1.2.6` | `1.3.0` |\n| [@tanstack/react-query](https://github.com/TanStack/query/tree/HEAD/packages/react-query) | `5.90.21` | `5.101.0` |\n| [@tanstack/react-router](https://github.com/TanStack/router/tree/HEAD/packages/react-router) | `1.161.1` | `1.170.15` |\n| [@trpc/client](https://github.com/trpc/trpc/tree/HEAD/packages/client) | `11.10.0` | `11.17.0` |\n| [@trpc/tanstack-react-query](https://github.com/trpc/trpc/tree/HEAD/packages/tanstack-react-query) | `11.10.0` | `11.17.0` |\n| [jotai](https://github.com/pmndrs/jotai) | `2.17.1` | `2.20.0` |\n| [jotai-effect](https://github.com/jotaijs/jotai-effect) | `2.2.3` | `2.3.1` |\n| [lucide-react](https://github.com/lucide-icons/lucide/tree/HEAD/packages/lucide-react) | `0.574.0` | `1.17.0` |\n| [react-dom](https://github.com/facebook/react/tree/HEAD/packages/react-dom) | `19.2.4` | `19.2.7` |\n| [react-error-boundary](https://github.com/bvaughn/react-error-boundary) | `6.1.1` | `6.1.2` |\n| [tailwind-merge](https://github.com/dcastil/tailwind-merge) | `3.4.1` | `3.6.0` |\n| [@tailwindcss/postcss](https://github.com/tailwindlabs/tailwindcss/tree/HEAD/packages/@tailwindcss-postcss) | `4.2.0` | `4.3.0` |\n| [@tanstack/react-query-devtools](https://github.com/TanStack/query/tree/HEAD/packages/react-query-devtools) | `5.91.3` | `5.101.0` |\n| [@tanstack/react-router-devtools](https://github.com/TanStack/router/tree/HEAD/packages/react-router-devtools) | `1.161.1` | `1.167.0` |\n| [@tanstack/router-plugin](https://github.com/TanStack/router/tree/HEAD/packages/router-plugin) | `1.161.1` | `1.168.18` |\n| [@types/node](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/node) | `25.2.3` | `25.9.2` |\n| [@vitejs/plugin-react](https://github.com/vitejs/vite-plugin-react/tree/HEAD/packages/plugin-react) | `5.1.4` | `6.0.2` |\n| [@vitejs/plugin-react-swc](https://github.com/vitejs/vite-plugin-react/tree/HEAD/packages/plugin-react-swc) | `4.2.3` | `4.3.1` |\n| [autoprefixer](https://github.com/postcss/autoprefixer) | `10.4.24` | `10.5.0` |\n| [globby](https://github.com/sindresorhus/globby) | `16.1.1` | `16.2.0` |\n| [@react-email/components](https://github.com/resend/react-email/tree/HEAD/packages/components) | `1.0.8` | `1.0.12` |\n| [@react-email/render](https://github.com/resend/react-email/tree/HEAD/packages/render) | `2.0.4` | `2.0.8` |\n| [@react-email/preview-server](https://github.com/resend/react-email/tree/HEAD/packages/preview-server) | `5.2.8` | `5.2.10` |\n| [react-email](https://github.com/resend/react-email/tree/HEAD/packages/react-email) | `5.2.8` | `6.5.0` |\n| [@astrojs/react](https://github.com/withastro/astro/tree/HEAD/packages/integrations/react) | `4.4.2` | `5.0.7` |\n| [astro](https://github.com/withastro/astro/tree/HEAD/packages/astro) | `5.17.2` | `6.4.4` |\n| [dotenv](https://github.com/motdotla/dotenv) | `17.3.1` | `17.4.2` |\n| [drizzle-kit](https://github.com/drizzle-team/drizzle-orm) | `0.31.9` | `0.31.10` |\n| [@radix-ui/react-avatar](https://github.com/radix-ui/primitives/tree/HEAD/packages/react/avatar) | `1.1.11` | `1.1.12` |\n| [@radix-ui/react-dialog](https://github.com/radix-ui/primitives/tree/HEAD/packages/react/dialog) | `1.1.15` | `1.1.16` |\n| [@radix-ui/react-label](https://github.com/radix-ui/primitives/tree/HEAD/packages/react/label) | `2.1.8` | `2.1.9` |\n| [@modelcontextprotocol/sdk](https://github.com/modelcontextprotocol/typescript-sdk) | `1.26.0` | `1.29.0` |\n| [got](https://github.com/sindresorhus/got) | `14.6.6` | `15.0.5` |\n\n\nUpdates `@eslint-react/eslint-plugin` from 2.13.0 to 5.8.16\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/Rel1cx/eslint-react/releases\"\u003e@​eslint-react/eslint-plugin's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev5.8.16 (2026-06-07)\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003ch3\u003e🐞 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAligned dependency versions across monorepo (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1853\"\u003e#1853\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/Rel1cx/eslint-react/compare/v5.8.15...v5.8.16\"\u003ehttps://github.com/Rel1cx/eslint-react/compare/v5.8.15...v5.8.16\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003eAttestation\u003c/h2\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/attestations/30180921\"\u003ehttps://github.com/Rel1cx/eslint-react/attestations/30180921\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev5.8.15 (2026-06-07)\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003ch3\u003e📝 Documentation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdded under-construction callouts and refined kit pages on the website (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1850\"\u003e#1850\u003c/a\u003e, \u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1851\"\u003e#1851\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eRemoved \u003ccode\u003eAGENTS.md\u003c/code\u003e and \u003ccode\u003eCONTRIBUTING.md\u003c/code\u003e documents and references (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1848\"\u003e#1848\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eUpdated home and third-party plugins pages on the website.\u003c/li\u003e\n\u003cli\u003eUpdated issue template guidance and labels.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🏗️ Internal\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eBumped \u003ccode\u003e@types/*\u003c/code\u003e dependencies (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1852\"\u003e#1852\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eRelaxed checklist requirements in issue templates (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1849\"\u003e#1849\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/Rel1cx/eslint-react/compare/v5.8.13...v5.8.15\"\u003ehttps://github.com/Rel1cx/eslint-react/compare/v5.8.13...v5.8.15\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003eAttestation\u003c/h2\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/attestations/30180297\"\u003ehttps://github.com/Rel1cx/eslint-react/attestations/30180297\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev5.8.13 (2026-06-07)\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003ch3\u003e📝 Documentation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdded \u003ccode\u003eGoogleCloudPlatform/gke-mcp\u003c/code\u003e and removed archived \u003ccode\u003eantfu/shiki-stream\u003c/code\u003e from community projects on the website.\u003c/li\u003e\n\u003cli\u003eImproved RSC Directives wording in documentation.\u003c/li\u003e\n\u003cli\u003eRemoved the \u003ccode\u003eno-multiple-children-in-title\u003c/code\u003e recipe from the website.\u003c/li\u003e\n\u003cli\u003eRemoved the kit beta banner from the website (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1846\"\u003e#1846\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🏗️ Internal\u003c/h3\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/Rel1cx/eslint-react/blob/main/CHANGELOG.md\"\u003e@​eslint-react/eslint-plugin's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev5.8.16 (2026-06-07)\u003c/h2\u003e\n\u003ch3\u003e🐞 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAligned dependency versions across monorepo (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1853\"\u003e#1853\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/Rel1cx/eslint-react/compare/v5.8.15...v5.8.16\"\u003ehttps://github.com/Rel1cx/eslint-react/compare/v5.8.15...v5.8.16\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev5.8.15 (2026-06-07)\u003c/h2\u003e\n\u003ch3\u003e📝 Documentation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdded under-construction callouts and refined kit pages on the website (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1850\"\u003e#1850\u003c/a\u003e, \u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1851\"\u003e#1851\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eRemoved \u003ccode\u003eAGENTS.md\u003c/code\u003e and \u003ccode\u003eCONTRIBUTING.md\u003c/code\u003e documents and references (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1848\"\u003e#1848\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eUpdated home and third-party plugins pages on the website.\u003c/li\u003e\n\u003cli\u003eUpdated issue template guidance and labels.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🏗️ Internal\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eBumped \u003ccode\u003e@types/*\u003c/code\u003e dependencies (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1852\"\u003e#1852\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eRelaxed checklist requirements in issue templates (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1849\"\u003e#1849\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/Rel1cx/eslint-react/compare/v5.8.13...v5.8.15\"\u003ehttps://github.com/Rel1cx/eslint-react/compare/v5.8.13...v5.8.15\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev5.8.13 (2026-06-06)\u003c/h2\u003e\n\u003ch3\u003e📝 Documentation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdded \u003ccode\u003eGoogleCloudPlatform/gke-mcp\u003c/code\u003e and removed archived \u003ccode\u003eantfu/shiki-stream\u003c/code\u003e from community projects on the website.\u003c/li\u003e\n\u003cli\u003eImproved RSC Directives wording in documentation.\u003c/li\u003e\n\u003cli\u003eRemoved the \u003ccode\u003eno-multiple-children-in-title\u003c/code\u003e recipe from the website.\u003c/li\u003e\n\u003cli\u003eRemoved the kit beta banner from the website (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1846\"\u003e#1846\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🏗️ Internal\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdded \u003ccode\u003eRuleListener\u003c/code\u003e return type to all rule \u003ccode\u003ecreate\u003c/code\u003e functions (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1845\"\u003e#1845\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdded boundary and edge case tests for \u003ccode\u003ereact-dom\u003c/code\u003e rules, JSX rules, and \u003ccode\u003enaming-convention\u003c/code\u003e rules (\u003ccode\u003econtext-name\u003c/code\u003e, \u003ccode\u003eid-name\u003c/code\u003e, \u003ccode\u003eref-name\u003c/code\u003e).\u003c/li\u003e\n\u003cli\u003eAdded identifier resolution tests for \u003ccode\u003ereact-x/no-leaked-conditional-rendering\u003c/code\u003e (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1844\"\u003e#1844\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eBumped \u003ccode\u003epnpm\u003c/code\u003e and updated lockfile.\u003c/li\u003e\n\u003cli\u003eBumped \u003ccode\u003etsdown\u003c/code\u003e to \u003ccode\u003e0.22.2\u003c/code\u003e and updated dependencies.\u003c/li\u003e\n\u003cli\u003eRemoved redundant single-argument \u003ccode\u003emerge()\u003c/code\u003e calls in rules (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1843\"\u003e#1843\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eSwitched GitHub workflows to \u003ccode\u003eubuntu-latest\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003eUpdated website brand assets and icons.\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/Rel1cx/eslint-react/compare/v5.8.12...v5.8.13\"\u003ehttps://github.com/Rel1cx/eslint-react/compare/v5.8.12...v5.8.13\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev5.8.12 (2026-06-05)\u003c/h2\u003e\n\u003ch3\u003e🪄 Improvements\u003c/h3\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/f9e975424aab7552f53308ec40c07eee58086dbb\"\u003e\u003ccode\u003ef9e9754\u003c/code\u003e\u003c/a\u003e release: 5.8.16\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/8719df27f74222afa045f08ed8e79d5d0833de3e\"\u003e\u003ccode\u003e8719df2\u003c/code\u003e\u003c/a\u003e release: 5.8.15\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/1022e493f015bcec49babc6c4a3bbb838bcfc311\"\u003e\u003ccode\u003e1022e49\u003c/code\u003e\u003c/a\u003e release: 5.8.14\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/81cdcc982434b841e2a7b3732644d122932f3229\"\u003e\u003ccode\u003e81cdcc9\u003c/code\u003e\u003c/a\u003e chore(deps): bump @types/* dependencies (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1852\"\u003e#1852\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/ad1aada15ceee6a331f4514fcb6638d6db468323\"\u003e\u003ccode\u003ead1aada\u003c/code\u003e\u003c/a\u003e docs: remove \u003ccode\u003eAGENTS.md\u003c/code\u003e and \u003ccode\u003eCONTRIBUTING.md\u003c/code\u003e docs and references (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1848\"\u003e#1848\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/e2920e3d2296471d1c4b498da17c13eb4750aa8a\"\u003e\u003ccode\u003ee2920e3\u003c/code\u003e\u003c/a\u003e release: 5.8.13\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/e68a316467cc907dda9e9a6f91f89f7f68c067f8\"\u003e\u003ccode\u003ee68a316\u003c/code\u003e\u003c/a\u003e chore: bump tsdown to 0.22.2 and update deps\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/de7d846106872352dcbed7713541d99c03bd5bac\"\u003e\u003ccode\u003ede7d846\u003c/code\u003e\u003c/a\u003e release: 5.8.12\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/3498c34b904454c44425ed148107ef8f5184eecf\"\u003e\u003ccode\u003e3498c34\u003c/code\u003e\u003c/a\u003e release: 5.8.11\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/0ee67d6c2f890f20165ee540773b8eda37adf9cf\"\u003e\u003ccode\u003e0ee67d6\u003c/code\u003e\u003c/a\u003e docs: update Meta legal name and add brand assets page (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1832\"\u003e#1832\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/Rel1cx/eslint-react/commits/v5.8.16/plugins/eslint-plugin\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@eslint/js` from 9.39.2 to 10.0.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/eslint/eslint/releases\"\u003e@​eslint/js's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev10.0.1\u003c/h2\u003e\n\u003ch2\u003eBug Fixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/c87d5bded54c5cf491eb04c24c9d09bbbd42c23e\"\u003e\u003ccode\u003ec87d5bd\u003c/code\u003e\u003c/a\u003e fix: update eslint (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20531\"\u003e#20531\u003c/a\u003e) (renovate[bot])\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/d84100115c14691691058f00779c94e74fca946a\"\u003e\u003ccode\u003ed841001\u003c/code\u003e\u003c/a\u003e fix: update \u003ccode\u003eminimatch\u003c/code\u003e to \u003ccode\u003e10.2.1\u003c/code\u003e to address security vulnerabilities (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20519\"\u003e#20519\u003c/a\u003e) (루밀LuMir)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/04c21475b3004904948f02049f2888b401d82c78\"\u003e\u003ccode\u003e04c2147\u003c/code\u003e\u003c/a\u003e fix: update error message for unused suppressions (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20496\"\u003e#20496\u003c/a\u003e) (fnx)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/38b089c1726feac0e31a31d47941bd99e29ce003\"\u003e\u003ccode\u003e38b089c\u003c/code\u003e\u003c/a\u003e fix: update dependency \u003ccode\u003e@​eslint/config-array\u003c/code\u003e to ^0.23.1 (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20484\"\u003e#20484\u003c/a\u003e) (renovate[bot])\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eDocumentation\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/5b3dbce50a1404a9f118afe810cefeee79388a2a\"\u003e\u003ccode\u003e5b3dbce\u003c/code\u003e\u003c/a\u003e docs: add AI acknowledgement section to templates (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20431\"\u003e#20431\u003c/a\u003e) (루밀LuMir)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/6f23076037d5879f20fb3be2ef094293b1e8d38c\"\u003e\u003ccode\u003e6f23076\u003c/code\u003e\u003c/a\u003e docs: toggle nav in no-JS mode (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20476\"\u003e#20476\u003c/a\u003e) (Tanuj Kanti)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/b69cfb32a16c5d5e9986390d484fae1d21e406f9\"\u003e\u003ccode\u003eb69cfb3\u003c/code\u003e\u003c/a\u003e docs: Update README (GitHub Actions Bot)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eChores\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/e5c281ffd038a3a7a3e5364db0b9378e0ad83020\"\u003e\u003ccode\u003ee5c281f\u003c/code\u003e\u003c/a\u003e chore: updates for v9.39.3 release (Jenkins)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/8c3832adb77cd993b4a24891900d5eeaaf093cdc\"\u003e\u003ccode\u003e8c3832a\u003c/code\u003e\u003c/a\u003e chore: update \u003ccode\u003e@​typescript-eslint/parser\u003c/code\u003e to ^8.56.0 (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20514\"\u003e#20514\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/8330d238ae6adb68bb6a1c9381e38cfedd990d94\"\u003e\u003ccode\u003e8330d23\u003c/code\u003e\u003c/a\u003e test: add tests for config-api (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20493\"\u003e#20493\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/37d6e91e88fa6a2ca6d8726679096acff21ba6cc\"\u003e\u003ccode\u003e37d6e91\u003c/code\u003e\u003c/a\u003e chore: remove eslint v10 prereleases from eslint-config-eslint deps (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20494\"\u003e#20494\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/da7cd0e79197ad16e17052eef99df141de6dbfb1\"\u003e\u003ccode\u003eda7cd0e\u003c/code\u003e\u003c/a\u003e refactor: cleanup error message templates (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20479\"\u003e#20479\u003c/a\u003e) (Francesco Trotta)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/84fb885d49ac810e79a9491276b4828b53d913e5\"\u003e\u003ccode\u003e84fb885\u003c/code\u003e\u003c/a\u003e chore: package.json update for \u003ccode\u003e@​eslint/js\u003c/code\u003e release (Jenkins)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/1f667344b57c4c09b548d94bcfac1f91b6e5c63d\"\u003e\u003ccode\u003e1f66734\u003c/code\u003e\u003c/a\u003e chore: add \u003ccode\u003eeslint\u003c/code\u003e to \u003ccode\u003epeerDependencies\u003c/code\u003e of \u003ccode\u003e@eslint/js\u003c/code\u003e (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20467\"\u003e#20467\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev10.0.0\u003c/h2\u003e\n\u003ch2\u003eBreaking Changes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/f9e54f43a5e497cdfa179338b431093245cb787b\"\u003e\u003ccode\u003ef9e54f4\u003c/code\u003e\u003c/a\u003e feat!: estimate rule-tester failure location (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20420\"\u003e#20420\u003c/a\u003e) (ST-DDT)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/a176319d8ade1a7d9b2d7fb8f038f55a2662325f\"\u003e\u003ccode\u003ea176319\u003c/code\u003e\u003c/a\u003e feat!: replace \u003ccode\u003echalk\u003c/code\u003e with \u003ccode\u003estyleText\u003c/code\u003e and add \u003ccode\u003ecolor\u003c/code\u003e to \u003ccode\u003eResultsMeta\u003c/code\u003e (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20227\"\u003e#20227\u003c/a\u003e) (루밀LuMir)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/c7046e6c1e03c4ca0eee4888a1f2eba4c6454f84\"\u003e\u003ccode\u003ec7046e6\u003c/code\u003e\u003c/a\u003e feat!: enable JSX reference tracking (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20152\"\u003e#20152\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/fa31a608901684fbcd9906d1907e66561d16e5aa\"\u003e\u003ccode\u003efa31a60\u003c/code\u003e\u003c/a\u003e feat!: add \u003ccode\u003ename\u003c/code\u003e to configs (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20015\"\u003e#20015\u003c/a\u003e) (Kirk Waiblinger)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/3383e7ec9028166cafc8ea7986c2f7498d0049f0\"\u003e\u003ccode\u003e3383e7e\u003c/code\u003e\u003c/a\u003e fix!: remove deprecated \u003ccode\u003eSourceCode\u003c/code\u003e methods (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20137\"\u003e#20137\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/501abd0e916a35554c58b7c0365537f1fa3880ce\"\u003e\u003ccode\u003e501abd0\u003c/code\u003e\u003c/a\u003e feat!: update dependency minimatch to v10 (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20246\"\u003e#20246\u003c/a\u003e) (renovate[bot])\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/ca4d3b40085de47561f89656a2207d09946ed45e\"\u003e\u003ccode\u003eca4d3b4\u003c/code\u003e\u003c/a\u003e fix!: stricter rule tester assertions for valid test cases (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20125\"\u003e#20125\u003c/a\u003e) (唯然)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/96512a66c86402fb0538cdcb6cd30b9073f6bf3b\"\u003e\u003ccode\u003e96512a6\u003c/code\u003e\u003c/a\u003e fix!: Remove deprecated rule context methods (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20086\"\u003e#20086\u003c/a\u003e) (Nicholas C. Zakas)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/c69fdacdb2e886b9d965568a397aa8220db3fe90\"\u003e\u003ccode\u003ec69fdac\u003c/code\u003e\u003c/a\u003e feat!: remove eslintrc support (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20037\"\u003e#20037\u003c/a\u003e) (Francesco Trotta)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/208b5cc34a8374ff81412b5bec2e0800eebfbd04\"\u003e\u003ccode\u003e208b5cc\u003c/code\u003e\u003c/a\u003e feat!: Use \u003ccode\u003eScopeManager#addGlobals()\u003c/code\u003e (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20132\"\u003e#20132\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/a2ee188ea7a38a0c6155f3d39e2b00e1d0f36e14\"\u003e\u003ccode\u003ea2ee188\u003c/code\u003e\u003c/a\u003e fix!: add \u003ccode\u003euniqueItems: true\u003c/code\u003e in \u003ccode\u003eno-invalid-regexp\u003c/code\u003e option (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20155\"\u003e#20155\u003c/a\u003e) (Tanuj Kanti)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/a89059dbf2832d417dd493ee81483227ec44e4ab\"\u003e\u003ccode\u003ea89059d\u003c/code\u003e\u003c/a\u003e feat!: Program range span entire source text (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20133\"\u003e#20133\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/39a6424373d915fa9de0d7b0caba9a4dc3da9b53\"\u003e\u003ccode\u003e39a6424\u003c/code\u003e\u003c/a\u003e fix!: assert 'text' is a string across all RuleFixer methods (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20082\"\u003e#20082\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/f28fbf846244e043c92b355b224d121b06140b44\"\u003e\u003ccode\u003ef28fbf8\u003c/code\u003e\u003c/a\u003e fix!: Deprecate \u003ccode\u003e\u0026quot;always\u0026quot;\u003c/code\u003e and \u003ccode\u003e\u0026quot;as-needed\u0026quot;\u003c/code\u003e options of the \u003ccode\u003eradix\u003c/code\u003e rule (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20223\"\u003e#20223\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/aa3fb2b233e929b37220be940575f42c280e0b98\"\u003e\u003ccode\u003eaa3fb2b\u003c/code\u003e\u003c/a\u003e fix!: tighten \u003ccode\u003efunc-names\u003c/code\u003e schema (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20119\"\u003e#20119\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/f6c0ed0311dcfee853367d5068c765d066e6b756\"\u003e\u003ccode\u003ef6c0ed0\u003c/code\u003e\u003c/a\u003e feat!: report \u003ccode\u003eeslint-env\u003c/code\u003e comments as errors (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20128\"\u003e#20128\u003c/a\u003e) (Francesco Trotta)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/4bf739fb533e59f7f0a66b65f7bc80be0f37d8db\"\u003e\u003ccode\u003e4bf739f\u003c/code\u003e\u003c/a\u003e fix!: remove deprecated \u003ccode\u003eLintMessage#nodeType\u003c/code\u003e and \u003ccode\u003eTestCaseError#type\u003c/code\u003e (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20096\"\u003e#20096\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/523c076866400670fb2192a3f55dbf7ad3469247\"\u003e\u003ccode\u003e523c076\u003c/code\u003e\u003c/a\u003e feat!: drop support for jiti \u0026lt; 2.2.0 (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20016\"\u003e#20016\u003c/a\u003e) (michael faith)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/454a292c95f34dad232411ddac06408e6383bb64\"\u003e\u003ccode\u003e454a292\u003c/code\u003e\u003c/a\u003e feat!: update \u003ccode\u003eeslint:recommended\u003c/code\u003e configuration (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20210\"\u003e#20210\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/4f880ee02992e1bf0e96ebaba679985e2d1295f1\"\u003e\u003ccode\u003e4f880ee\u003c/code\u003e\u003c/a\u003e feat!: remove \u003ccode\u003ev10_*\u003c/code\u003e and inactive \u003ccode\u003eunstable_*\u003c/code\u003e flags (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20225\"\u003e#20225\u003c/a\u003e) (sethamus)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/f18115c363a4ac7671a4c7f30ee13d57ebba330f\"\u003e\u003ccode\u003ef18115c\u003c/code\u003e\u003c/a\u003e feat!: \u003ccode\u003eno-shadow-restricted-names\u003c/code\u003e report \u003ccode\u003eglobalThis\u003c/code\u003e by default (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20027\"\u003e#20027\u003c/a\u003e) (sethamus)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/c6358c31fbd3937b92d89be2618ffdf5a774604e\"\u003e\u003ccode\u003ec6358c3\u003c/code\u003e\u003c/a\u003e feat!: Require Node.js \u003ccode\u003e^20.19.0 || ^22.13.0 || \u0026gt;=24\u003c/code\u003e (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20160\"\u003e#20160\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eFeatures\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/bff9091927811497dbf066b0e3b85ecb37d43822\"\u003e\u003ccode\u003ebff9091\u003c/code\u003e\u003c/a\u003e feat: handle \u003ccode\u003eArray.fromAsync\u003c/code\u003e in \u003ccode\u003earray-callback-return\u003c/code\u003e (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20457\"\u003e#20457\u003c/a\u003e) (Francesco Trotta)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/290c594bb50c439fb71bc75521ee5360daa8c222\"\u003e\u003ccode\u003e290c594\u003c/code\u003e\u003c/a\u003e feat: add \u003ccode\u003eself\u003c/code\u003e to \u003ccode\u003eno-implied-eval\u003c/code\u003e rule (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20468\"\u003e#20468\u003c/a\u003e) (sethamus)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/43677de07ebd6e14bfac40a46ad749ba783c45f2\"\u003e\u003ccode\u003e43677de\u003c/code\u003e\u003c/a\u003e feat: fix handling of function and class expression names in \u003ccode\u003eno-shadow\u003c/code\u003e (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20432\"\u003e#20432\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/84fb885d49ac810e79a9491276b4828b53d913e5\"\u003e\u003ccode\u003e84fb885\u003c/code\u003e\u003c/a\u003e chore: package.json update for \u003ccode\u003e@​eslint/js\u003c/code\u003e release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/1f667344b57c4c09b548d94bcfac1f91b6e5c63d\"\u003e\u003ccode\u003e1f66734\u003c/code\u003e\u003c/a\u003e chore: add \u003ccode\u003eeslint\u003c/code\u003e to \u003ccode\u003epeerDependencies\u003c/code\u003e of \u003ccode\u003e@eslint/js\u003c/code\u003e (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20467\"\u003e#20467\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/f3fbc2f60cbe2c718364feb8c3fc0452c0df3c56\"\u003e\u003ccode\u003ef3fbc2f\u003c/code\u003e\u003c/a\u003e chore: set \u003ccode\u003e@eslint/js\u003c/code\u003e version to 10.0.0 to skip releasing it (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20466\"\u003e#20466\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/b4b3127f8542c599ce2dea804b6582ebc40c993d\"\u003e\u003ccode\u003eb4b3127\u003c/code\u003e\u003c/a\u003e chore: package.json update for \u003ccode\u003e@​eslint/js\u003c/code\u003e release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/0b14059491d830a49b3577931f4f68fbcfce6be5\"\u003e\u003ccode\u003e0b14059\u003c/code\u003e\u003c/a\u003e chore: package.json update for \u003ccode\u003e@​eslint/js\u003c/code\u003e release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/fa31a608901684fbcd9906d1907e66561d16e5aa\"\u003e\u003ccode\u003efa31a60\u003c/code\u003e\u003c/a\u003e feat!: add \u003ccode\u003ename\u003c/code\u003e to configs (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20015\"\u003e#20015\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/1e2cad5f6fa47ed6ed89d2a29798dda926d50990\"\u003e\u003ccode\u003e1e2cad5\u003c/code\u003e\u003c/a\u003e chore: package.json update for \u003ccode\u003e@​eslint/js\u003c/code\u003e release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/454a292c95f34dad232411ddac06408e6383bb64\"\u003e\u003ccode\u003e454a292\u003c/code\u003e\u003c/a\u003e feat!: update \u003ccode\u003eeslint:recommended\u003c/code\u003e configuration (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20210\"\u003e#20210\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/c6358c31fbd3937b92d89be2618ffdf5a774604e\"\u003e\u003ccode\u003ec6358c3\u003c/code\u003e\u003c/a\u003e feat!: Require Node.js \u003ccode\u003e^20.19.0 || ^22.13.0 || \u0026gt;=24\u003c/code\u003e (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20160\"\u003e#20160\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/eslint/eslint/commits/v10.0.1/packages/js\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@typescript-eslint/eslint-plugin` from 8.56.0 to 8.60.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases\"\u003e@​typescript-eslint/eslint-plugin's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev8.60.1\u003c/h2\u003e\n\u003ch2\u003e8.60.1 (2026-06-01)\u003c/h2\u003e\n\u003ch3\u003e🩹 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e respect ECMAScript line terminators in ts-comment rules (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12352\"\u003e#12352\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-shadow] correct rule to match ESLint v10 handling (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12182\"\u003e#12182\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e❤️ Thank You\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003elumir\u003c/li\u003e\n\u003cli\u003eNevette Bailey \u003ca href=\"https://github.com/nevette-bailey\"\u003e\u003ccode\u003e@​nevette-bailey\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.60.1\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003ev8.60.0\u003c/h2\u003e\n\u003ch2\u003e8.60.0 (2026-05-25)\u003c/h2\u003e\n\u003ch3\u003e🚀 Features\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003erule-tester:\u003c/strong\u003e added updates of RuleTester from upstream (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12291\"\u003e#12291\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🩹 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eplayground TS version selector is not working (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12326\"\u003e#12326\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/issues/12325\"\u003e#12325\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e❤️ Thank You\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eEvyatar Daud \u003ca href=\"https://github.com/StyleShit\"\u003e\u003ccode\u003e@​StyleShit\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eVinccool96\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.60.0\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003ev8.59.4\u003c/h2\u003e\n\u003ch2\u003e8.59.4 (2026-05-18)\u003c/h2\u003e\n\u003ch3\u003e🩹 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-floating-promises] stack overflow when using recursive types (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12294\"\u003e#12294\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eproject-service:\u003c/strong\u003e throw error cause in \u003ccode\u003egetParsedConfigFileFromTSServer\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12321\"\u003e#12321\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003etypescript-eslint:\u003c/strong\u003e export Compatible* types from typescript-eslint to resolve pnpm TS error (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12340\"\u003e#12340\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e❤️ Thank You\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eEvyatar Daud \u003ca href=\"https://github.com/StyleShit\"\u003e\u003ccode\u003e@​StyleShit\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eKirk Waiblinger \u003ca href=\"https://github.com/kirkwaiblinger\"\u003e\u003ccode\u003e@​kirkwaiblinger\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/CHANGELOG.md\"\u003e@​typescript-eslint/eslint-plugin's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e8.60.1 (2026-06-01)\u003c/h2\u003e\n\u003ch3\u003e🩹 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-shadow] correct rule to match ESLint v10 handling (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12182\"\u003e#12182\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e respect ECMAScript line terminators in ts-comment rules (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12352\"\u003e#12352\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e❤️ Thank You\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003elumir\u003c/li\u003e\n\u003cli\u003eNevette Bailey \u003ca href=\"https://github.com/nevette-bailey\"\u003e\u003ccode\u003e@​nevette-bailey\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.60.1\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003e8.60.0 (2026-05-25)\u003c/h2\u003e\n\u003cp\u003eThis was a version bump only for eslint-plugin to align it with other projects, there were no code changes.\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.60.0\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003e8.59.4 (2026-05-18)\u003c/h2\u003e\n\u003ch3\u003e🩹 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-floating-promises] stack overflow when using recursive types (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12294\"\u003e#12294\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e❤️ Thank You\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eEvyatar Daud \u003ca href=\"https://github.com/StyleShit\"\u003e\u003ccode\u003e@​StyleShit\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.4\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003e8.59.3 (2026-05-11)\u003c/h2\u003e\n\u003cp\u003eThis was a version bump only for eslint-plugin to align it with other projects, there were no code changes.\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.3\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003e8.59.2 (2026-05-04)\u003c/h2\u003e\n\u003ch3\u003e🩹 Fixes\u003c/h3\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/4f84a697aedc436559c3ae09b5b357d98b448d68\"\u003e\u003ccode\u003e4f84a69\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.60.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/598af564db50593277ba46c7fdea3648e4425391\"\u003e\u003ccode\u003e598af56\u003c/code\u003e\u003c/a\u003e docs(eslint-plugin): clarify no-redeclare type-value collision not covered by...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/1849b530c254fb4f89d7270160f3a998e4acd964\"\u003e\u003ccode\u003e1849b53\u003c/code\u003e\u003c/a\u003e chore: typecheck using tsgo (\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin/issues/12139\"\u003e#12139\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/5341d59dd3c21fc4e2bf3bce55cf35d8f84e5216\"\u003e\u003ccode\u003e5341d59\u003c/code\u003e\u003c/a\u003e chore: fix lint issues (\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin/issues/12369\"\u003e#12369\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/f525814f01766487ab34a54d56de20ea5c4fb576\"\u003e\u003ccode\u003ef525814\u003c/code\u003e\u003c/a\u003e fix(eslint-plugin): [no-shadow] correct rule to match ESLint v10 handling (\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin/issues/1\"\u003e#1\u003c/a\u003e...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/2df540cd8bbeb3e2c56d516912f69bf63c1e9450\"\u003e\u003ccode\u003e2df540c\u003c/code\u003e\u003c/a\u003e chore(eslint-plugin): defer type checks to improve rules performance (\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin/issues/12296\"\u003e#12296\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/1ab4284789b36cf482a4d9924719162a02d54243\"\u003e\u003ccode\u003e1ab4284\u003c/code\u003e\u003c/a\u003e fix(eslint-plugin): respect ECMAScript line terminators in ts-comment rules (...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/2f49df599b2db5f2937caf975d3c63e5cdeb0ea1\"\u003e\u003ccode\u003e2f49df5\u003c/code\u003e\u003c/a\u003e docs: update references to \u003ccode\u003e@stylistic/eslint-plugin\u003c/code\u003e rules in documentation ...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/f891c29de5f3e23f3d8c59cc599d3196e54e9b58\"\u003e\u003ccode\u003ef891c29\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.60.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/ca6ca1431b6d18235297a7e29feb5d98f012dff2\"\u003e\u003ccode\u003eca6ca14\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.59.4\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commits/v8.60.1/packages/eslint-plugin\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@typescript-eslint/parser` from 8.56.0 to 8.60.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases\"\u003e@​typescript-eslint/parser's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev8.60.1\u003c/h2\u003e\n\u003ch2\u003e8.60.1 (2026-06-01)\u003c/h2\u003e\n\u003ch3\u003e🩹 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e respect ECMAScript line terminators in ts-comment rules (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12352\"\u003e#12352\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-shadow] correct rule to match ESLint v10 handling (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12182\"\u003e#12182\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e❤️ Thank You\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003elumir\u003c/li\u003e\n\u003cli\u003eNevette Bailey \u003ca href=\"https://github.com/nevette-bailey\"\u003e\u003ccode\u003e@​nevette-bailey\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.60.1\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003ev8.60.0\u003c/h2\u003e\n\u003ch2\u003e8.60.0 (2026-05-25)\u003c/h2\u003e\n\u003ch3\u003e🚀 Features\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003erule-tester:\u003c/strong\u003e added updates of RuleTester from upstream (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12291\"\u003e#12291\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🩹 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eplayground TS version selector is not working (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12326\"\u003e#12326\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/issues/12325\"\u003e#12325\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e❤️ Thank You\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eEvyatar Daud \u003ca href=\"https://github.com/StyleShit\"\u003e\u003ccode\u003e@​StyleShit\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eVinccool96\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.60.0\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003ev8.59.4\u003c/h2\u003e\n\u003ch2\u003e8.59.4 (2026-05-18)\u003c/h2\u003e\n\u003ch3\u003e🩹 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-floating-promises] stack overflow when using recursive types (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12294\"\u003e#12294\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eproject-service:\u003c/strong\u003e throw error cause in \u003ccode\u003egetParsedConfigFileFromTSServer\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12321\"\u003e#12321\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003etypescript-eslint:\u003c/strong\u003e export Compatible* types from typescript-eslint to resolve pnpm TS error (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12340\"\u003e#12340\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e❤️ Thank You\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eEvyatar Daud \u003ca href=\"https://github.com/StyleShit\"\u003e\u003ccode\u003e@​StyleShit\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eKirk Waiblinger \u003ca href=\"https://github.com/kirkwaiblinger\"\u003e\u003ccode\u003e@​kirkwaiblinger\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/parser/CHANGELOG.md\"\u003e@​typescript-eslint/parser's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e8.60.1 (2026-06-01)\u003c/h2\u003e\n\u003cp\u003eThis was a version bump only for parser to align it with other projects, there were no code changes.\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.60.1\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003e8.60.0 (2026-05-25)\u003c/h2\u003e\n\u003cp\u003eThis was a version bump only for parser to align it with other projects, there were no code changes.\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.60.0\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003e8.59.4 (2026-05-18)\u003c/h2\u003e\n\u003cp\u003eThis was a version bump only for parser to align it with other projects, there were no code changes.\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.4\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003e8.59.3 (2026-05-11)\u003c/h2\u003e\n\u003cp\u003eThis was a version bump only for parser to align it with other projects, there were no code changes.\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.3\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003e8.59.2 (2026-05-04)\u003c/h2\u003e\n\u003cp\u003eThis was a version bump only for parser to align it with other projects, there were no code changes.\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.2\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003e8.59.1 (2026-04-27)\u003c/h2\u003e\n\u003cp\u003eThis was a version bump only for parser to align it with other projects, there were no code changes.\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.1\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003e8.59.0 (2026-04-20)\u003c/h2\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/4f84a697aedc436559c3ae09b5b357d98b448d68\"\u003e\u003ccode\u003e4f84a69\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.60.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/1849b530c254fb4f89d7270160f3a998e4acd964\"\u003e\u003ccode\u003e1849b53\u003c/code\u003e\u003c/a\u003e chore: typecheck using tsgo (\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/parser/issues/12139\"\u003e#12139\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/f891c29de5f3e23f3d8c59cc599d3196e54e9b58\"\u003e\u003ccode\u003ef891c29\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.60.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/ca6ca1431b6d18235297a7e29feb5d98f012dff2\"\u003e\u003ccode\u003eca6ca14\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.59.4\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/48e13c0261e3cb1bf4f4dfaa462cdb3a56ef7383\"\u003e\u003ccode\u003e48e13c0\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.59.3\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/44f9625336841a8ee3eb01a9e02e49b1d7b12648\"\u003e\u003ccode\u003e44f9625\u003c/code\u003e\u003c/a\u003e chore(deps): update vitest monorepo to v4.1.5 (\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/parser/issues/12307\"\u003e#12307\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/2ec35f1760aade4df4c631d76d78c7ed5e136333\"\u003e\u003ccode\u003e2ec35f1\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.59.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/52457932e5507b5ca01e720a541f3f8d01e09b9d\"\u003e\u003ccode\u003e5245793\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.59.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/ea9ae4f8817873480e3501145059f63e39e8d8a1\"\u003e\u003ccode\u003eea9ae4f\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.59.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/90c2803a4c250e0343598d41e973f95e743bf4ce\"\u003e\u003ccode\u003e90c2803\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.58.2\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commits/v8.60.1/packages/parser\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `eslint` from 9.39.2 to 10.4.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/eslint/eslint/releases\"\u003eeslint's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev10.4.1\u003c/h2\u003e\n\u003ch2\u003eBug Fixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/e557467db7496220eebcbe2ac5ea6d38c12bb1ec\"\u003e\u003ccode\u003ee557467\u003c/code\u003e\u003c/a\u003e fix: update \u003ccode\u003e@eslint/plugin-kit\u003c/code\u003e version to 0.7.2 (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20930\"\u003e#20930\u003c/a\u003e) (Francesco Trotta)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/d4ce898796ca22c3b96aa70d3014cb85f4bac1cd\"\u003e\u003ccode\u003ed4ce898\u003c/code\u003e\u003c/a\u003e fix: propagate failures from delegated commands (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20917\"\u003e#20917\u003c/a\u003e) (Minh Vu)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/f4f3507460bc016b5be979c05d2969793f570cbf\"\u003e\u003ccode\u003ef4f3507\u003c/code\u003e\u003c/a\u003e fix: prefer-arrow-callback invalid autofix with newline after \u003ccode\u003easync\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20916\"\u003e#20916\u003c/a\u003e) (kuldeep kumar)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/c5bc78b37e08b9054a11f0cc2d81808bb24acb85\"\u003e\u003ccode\u003ec5bc78b\u003c/code\u003e\u003c/a\u003e fix: false positive for reference in \u003ccode\u003efinally\u003c/code\u003e block (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20655\"\u003e#20655\u003c/a\u003e) (Tanuj Kanti)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/27538c01f5df4e9306f6f4ba867b2dd6307fae59\"\u003e\u003ccode\u003e27538c0\u003c/code\u003e\u003c/a\u003e fix: add missing CodePath and CodePathSegment types (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20853\"\u003e#20853\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eDocumentation\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/61b0add61ffc52665562be7bb96f526690a78b30\"\u003e\u003ccode\u003e61b0add\u003c/code\u003e\u003c/a\u003e docs: remove deprecated rule from related rules of \u003ccode\u003emax-params\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20921\"\u003e#20921\u003c/a\u003e) (Tanuj Kanti)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/305d5b91aeac24d36fde42f75625a8f183d4ce43\"\u003e\u003ccode\u003e305d5b9\u003c/code\u003e\u003c/a\u003e docs: remove deprecated rules from related rules section (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20911\"\u003e#20911\u003c/a\u003e) (Tanuj Kanti)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/49b0202d01918b8061720d586dffd7c68047090c\"\u003e\u003ccode\u003e49b0202\u003c/code\u003e\u003c/a\u003e docs: fix \u003ccode\u003edisplay: none\u003c/code\u003e of ad (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20901\"\u003e#20901\u003c/a\u003e) (Tanuj Kanti)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/9067f9492ec998afc5b4f057a477ecf6ebd45e44\"\u003e\u003ccode\u003e9067f94\u003c/code\u003e\u003c/a\u003e docs: switch build to Node.js 24 (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20893\"\u003e#20893\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/c91b0417e3420c76807ce1fa2aea76e2de87ab86\"\u003e\u003ccode\u003ec91b041\u003c/code\u003e\u003c/a\u003e docs: Update README (GitHub Actions Bot)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/e349265cb37f3ebc837e178e48a725bb782bd870\"\u003e\u003ccode\u003ee349265\u003c/code\u003e\u003c/a\u003e docs: clarify semver strings in rule deprecation objects (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20885\"\u003e#20885\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eChores\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/b0e466b6ab47bfc7de43d8de0c315d8ee83aa584\"\u003e\u003ccode\u003eb0e466b\u003c/code\u003e\u003c/a\u003e test: add \u003ccode\u003edata\u003c/code\u003e property to invalid tests cases for rules (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20924\"\u003e#20924\u003c/a\u003e) (Tanuj Kanti)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/f78838bc4c86d487e1bcc7cede260c4467721c46\"\u003e\u003ccode\u003ef78838b\u003c/code\u003e\u003c/a\u003e test: add CodePath type coverage (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20904\"\u003e#20904\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/1daa4bd734b79a62e317d0394394a6b38cff49f9\"\u003e\u003ccode\u003e1daa4bd\u003c/code\u003e\u003c/a\u003e chore: update \u003ccode\u003eeslint-plugin-eslint-comments\u003c/code\u003e test data to latest commit (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20922\"\u003e#20922\u003c/a\u003e) (Francesco Trotta)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/002942ce988ea28b78e0a2f3b074081e638b552c\"\u003e\u003ccode\u003e002942c\u003c/code\u003e\u003c/a\u003e ci: declare contents:read on update-readme workflow (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20919\"\u003e#20919\u003c/a\u003e) (Arpit Jain)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/64bca24e7bed35bc3c864fc625cb2d89eca87d5b\"\u003e\u003ccode\u003e64bca24\u003c/code\u003e\u003c/a\u003e chore: update ecosystem plugins (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20912\"\u003e#20912\u003c/a\u003e) (ESLint Bot)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/6d7c832950d5e92499d88e504080661f888f8f56\"\u003e\u003ccode\u003e6d7c832\u003c/code\u003e\u003c/a\u003e chore: ignore fflate updates in renovate (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20908\"\u003e#20908\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/b2c86382164d87c6203b78d52068cd6a2a6ffe30\"\u003e\u003ccode\u003eb2c8638\u003c/code\u003e\u003c/a\u003e ci: bump pnpm/action-setup from 6.0.7 to 6.0.8 (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20889\"\u003e#20889\u003c/a\u003e) (dependabot[bot])\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/a9b8d7f74c50211701cfc49710fa541fd91b2aa5\"\u003e\u003ccode\u003ea9b8d7f\u003c/code\u003e\u003c/a\u003e chore: increase maxBuffer for ecosystem tests (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20881\"\u003e#20881\u003c/a\u003e) (sethamus)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/b702ead5e1ed7cb9f28238a454797662efb37396\"\u003e\u003ccode\u003eb702ead\u003c/code\u003e\u003c/a\u003e chore: update ecosystem update PR settings (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20884\"\u003e#20884\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/507f60e9a78c9a902bc8759f066ae17a1ea6cd81\"\u003e\u003ccode\u003e507f60e\u003c/code\u003e\u003c/a\u003e chore: update ecosystem plugins (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20882\"\u003e#20882\u003c/a\u003e) (ESLint Bot)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/92f5c5bb6bf3a5d167c8ee53a430833410295c6d\"\u003e\u003ccode\u003e92f5c5b\u003c/code\u003e\u003c/a\u003e test: add unit test for message-count (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20878\"\u003e#20878\u003c/a\u003e) (kuldeep kumar)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/df321080af5758b1fa25e4b9a40e26135642dd6e\"\u003e\u003ccode\u003edf32108\u003c/code\u003e\u003c/a\u003e chore: add \u003ccode\u003e@​eslint/markdown\u003c/code\u003e and typescript-eslint ecosystem tests (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20837\"\u003e#20837\u003c/a\u003e) (sethamus)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/327f91d36aa49f2a50ded931d841a16374fd875f\"\u003e\u003ccode\u003e327f91d\u003c/code\u003e\u003c/a\u003e chore: use includeIgnoreFile internally (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20876\"\u003e#20876\u003c/a\u003e) (Kirk Waiblinger)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/f0dc4bd893fb3a9f44e4ddc3ad7063ffb0beacd3\"\u003e\u003ccode\u003ef0dc4bd\u003c/code\u003e\u003c/a\u003e chore: pin fflate@0.8.2 (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20877\"\u003e#20877\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/0f4bd257a67a082b756de746d9e0c4842ab764ca\"\u003e\u003ccode\u003e0f4bd25\u003c/code\u003e\u003c/a\u003e ci: run Discord alert for ecosystem test failures (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20873\"\u003e#20873\u003c/a\u003e) (Copilot)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev10.4.0\u003c/h2\u003e\n\u003ch2\u003eFeatures\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/1a45ec596af1dd5f880e6874cb8f24dafb6a7ecf\"\u003e\u003ccode\u003e1a45ec5\u003c/code\u003e\u003c/a\u003e feat: check sequence expressions in \u003ccode\u003efor-direction\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20701\"\u003e#20701\u003c/a\u003e) (kuldeep kumar)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/450040bd89b989b3531824c6be45feb5fe3d936b\"\u003e\u003ccode\u003e450040b\u003c/code\u003e\u003c/a\u003e feat: add \u003ccode\u003eincludeIgnoreFile()\u003c/code\u003e to \u003ccode\u003eeslint/config\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20735\"\u003e#20735\u003c/a\u003e) (Kirk Waiblinger)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eBug Fixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/544c0c3da589166ad8e5d634f35d3d06701c57be\"\u003e\u003ccode\u003e544c0c3\u003c/code\u003e\u003c/a\u003e fix: escape code path DOT labels in debug output (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20866\"\u003e#20866\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/6799431203f2579632d0870f98ba132067f4040c\"\u003e\u003ccode\u003e6799431\u003c/code\u003e\u003c/a\u003e fix: update dependency \u003ccode\u003e@​eslint/config-helpers\u003c/code\u003e to ^0.6.0 (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20850\"\u003e#20850\u003c/a\u003e) (renovate[bot])\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/f078fef5005dceb14fc162aab7c7200e027688dd\"\u003e\u003ccode\u003ef078fef\u003c/code\u003e\u003c/a\u003e fix: handle non-array deprecated rule replacements (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20825\"\u003e#20825\u003c/a\u003e) (xbinaryx)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eDocumentation\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/7e52a7151fb92eec0e0f67fe4e5ddbd1ccce796f\"\u003e\u003ccode\u003e7e52a71\u003c/code\u003e\u003c/a\u003e docs: add mention of \u003ccode\u003e@eslint-react/eslint-plugin\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20869\"\u003e#20869\u003c/a\u003e) (Pavel)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/db3468ba746407d7f286f18f7ea9db6df0e3bc08\"\u003e\u003ccode\u003edb3468b\u003c/code\u003e\u003c/a\u003e docs: tweak wording around ambiguous CJS-vs-ESM config (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20865\"\u003e#20865\u003c/a\u003e) (Kirk Waiblinger)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/90846643ec6e97d447ae0d831fabe6d17b0a998a\"\u003e\u003ccode\u003e9084664\u003c/code\u003e\u003c/a\u003e docs: Update README (GitHub Actions Bot)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/9cc73875046e3c4b8313644cbb1e99e26b36bd3f\"\u003e\u003ccode\u003e9cc7387\u003c/code\u003e\u003c/a\u003e docs: Update README (GitHub Actions Bot)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/3d7b5484407403817aa9071a394d336d8ea96eb5\"\u003e\u003ccode\u003e3d7b548\u003c/code\u003e\u003c/a\u003e docs: Update README (GitHub Actions Bot)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/191ec3c0a3f94ce0f110df761f0b2b8949011ccb\"\u003e\u003ccode\u003e191ec3c\u003c/code\u003e\u003c/a\u003e docs: Update README (GitHub Actions Bot)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/4a3d15a99c452c4db2fd56b577fa7597e98ab0c2\"\u003e\u003ccode\u003e4a3d15a\u003c/code\u003e\u003c/a\u003e 10.4.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/43e7e2bdc5c6cacc535446b7d23c10f780384ba8\"\u003e\u003ccode\u003e43e7e2b\u003c/code\u003e\u003c/a\u003e Build: changelog update for 10.4.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/e557467db7496220eebcbe2ac5ea6d38c12bb1ec\"\u003e\u003ccode\u003ee557467\u003c/code\u003e\u003c/a\u003e fix: update \u003ccode\u003e@eslint/plugin-kit\u003c/code\u003e version to 0.7.2 (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20930\"\u003e#20930\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/b0e466b6ab47bfc7de43d8de0c315d8ee83aa584\"\u003e\u003ccode\u003eb0e466b\u003c/code\u003e\u003c/a\u003e test: add \u003ccode\u003edata\u003c/code\u003e property to invalid tests cases for rules (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20924\"\u003e#20924\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/d4ce898796ca22c3b96aa70d3014cb85f4bac1cd\"\u003e\u003ccode\u003ed4ce898\u003c/code\u003e\u003c/a\u003e fix: propagate failures from delegated commands (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20917\"\u003e#20917\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/f4f3507460bc016b5be979c05d2969793f570cbf\"\u003e\u003ccode\u003ef4f3507\u003c/code\u003e\u003c/a\u003e fix: prefer-arrow-callback invalid autofix with newline after \u003ccode\u003easync\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20916\"\u003e#20916\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/f78838bc4c86d487e1bcc7cede260c4467721c46\"\u003e\u003ccode\u003ef78838b\u003c/code\u003e\u003c/a\u003e test: add CodePath type coverage (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20904\"\u003e#20904\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/61b0add61ffc52665562be7bb96f526690a78b30\"\u003e\u003ccode\u003e61b0add\u003c/code\u003e\u003c/a\u003e docs: remove deprecated rule from related rules of \u003ccode\u003emax-params\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20921\"\u003e#20921\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/1daa4bd734b79a62e317d0394394a6b38cff49f9\"\u003e\u003ccode\u003e1daa4bd\u003c/code\u003e\u003c/a\u003e chore: update \u003ccode\u003eeslint-plugin-eslint-comments\u003c/code\u003e test data to latest commit (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20\"\u003e#20\u003c/a\u003e...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/002942ce988ea28b78e0a2f3b074081e638b552c\"\u003e\u003ccode\u003e002942c\u003c/code\u003e\u003c/a\u003e ci: declare contents:read on update-readme workflow (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20919\"\u003e#20919\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/eslint/eslint/compare/v9.39.2...v10.4.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `eslint-import-resolver-typescript` from 4.4.4 to 4.4.5\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/import-js/eslint-import-resolver-typescript/releases\"\u003eeslint-import-resolver-typescript's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev4.4.5\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/import-js/eslint-import-resolver-typescript/pull/473\"\u003e#473\u003c/a\u003e \u003ca href=\"https://github.com/import-js/eslint-import-resolver-typescript/commit/32c61abccf26bd2a2267f2e0e67d82e6f88d149a\"\u003e\u003ccode\u003e32c61ab\u003c/code\u003e\u003c/a\u003e Thanks \u003ca href=\"https://github.com/leey0818\"\u003e\u003ccode\u003e@​leey0818\u003c/code\u003e\u003c/a\u003e! - fix: check tsconfig matching before using resolver\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/import-js/eslint-import-resolver-typescript/blob/master/CHANGELOG.md\"\u003eeslint-import-resolver-typescript's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e4.4.5\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/import-js/eslint-import-resolver-typescript/pull/473\"\u003e#473\u003c/a\u003e \u003ca href=\"https://github.com/import-js/eslint-import-resolver-typescript/commit/32c61abccf26bd2a2267f2e0e67d82e6f88d149a\"\u003e\u003ccode\u003e32c61ab\u003c/code\u003e\u003c/a\u003e Thanks \u003ca href=\"https://github.com/leey0818\"\u003e\u003ccode\u003e@​leey0818\u003c/code\u003e\u003c/a\u003e! - fix: check tsconfig matching before using resolver\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/import-js/eslint-import-resolver-typescript/commit/724c47d8c08fa8ffa702c7a94ba53b367a4727fb\"\u003e\u003ccode\u003e724c47d\u003c/code\u003e\u003c/a\u003e chore: release eslint-import-resolver-typescript (\u003ca href=\"https://redirect.github.com/import-js/eslint-import-resolver-typescript/issues/480\"\u003e#480\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/import-js/eslint-import-resolver-typescript/commit/32c61abccf26bd2a2267f2e0e67d82e6f88d149a\"\u003e\u003ccode\u003e32c61ab\u003c/code\u003e\u003c/a\u003e fix: check tsconfig matching before using resolver (\u003ca href=\"https://redirect.github.com/import-js/eslint-import-resolver-typescript/issues/473\"\u003e#473\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/import-js/eslint-import-resolver-typescript/compare/v4.4.4...v4.4.5\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eMaintainer changes\u003c/summary\u003e\n\u003cp\u003eThis version was pushed to npm by \u003ca href=\"https://www.npmjs.com/~GitHub%20Actions\"\u003eGitHub Actions\u003c/a\u003e, a new releaser for eslint-import-resolver-typescript since your current version.\u003c/p\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `eslint-plugin-react-hooks` from 7.0.1 to 7.1.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/facebook/react/releases\"\u003eeslint-plugin-react-hooks's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eeslint-plugin-react-hooks@7.1.1 (April 17, 2026)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eNote:\u003c/strong\u003e 7.1.0 accidentally removed the \u003ccode\u003ecomponent-hook-factories\u003c/code\u003e rule, causing errors for users who referenced it in their ESLint config. This is now fixed.\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdd deprecated no-op \u003ccode\u003ecomponent-hook-factories\u003c/code\u003e rule for backwards compatibility. (\u003ca href=\"https://github.com/mofeiZ\"\u003e\u003ccode\u003e@​mofeiZ\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/36307\"\u003e#36307\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eeslint-plugin-react-hooks@7.1.0 (April 16, 2026)\u003c/h2\u003e\n\u003cp\u003eThis release adds ESLint v10 support, improves performance by skipping compilation for non-React files, and includes compiler lint improvements including better \u003ccode\u003eset-state-in-effect\u003c/code\u003e detection, improved ref validation, and more helpful error reporting.\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdd ESLint v10 support. (\u003ca href=\"https://github.com/azat-io\"\u003e\u003ccode\u003e@​azat-io\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/35720\"\u003e#35720\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSkip compilation for non-React files to improve performance. (\u003ca href=\"https://github.com/josephsavona\"\u003e\u003ccode\u003e@​josephsavona\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/35589\"\u003e#35589\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix exhaustive deps bug with Flow type casting. (\u003ca href=\"https://github.com/jorge-cab\"\u003e\u003ccode\u003e@​jorge-cab\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/35691\"\u003e#35691\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix \u003ccode\u003euseEffectEvent\u003c/code\u003e checks in component syntax. (\u003ca href=\"https://github.com/jbrown215\"\u003e\u003ccode\u003e@​jbrown215\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/35041\"\u003e#35041\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eImproved \u003ccode\u003eset-state-in-effect\u003c/code\u003e validation with fewer false negatives. (\u003ca href=\"https://github.com/jorge-cab\"\u003e\u003ccode\u003e@​jorge-cab\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/35134\"\u003e#35134\u003c/a\u003e, \u003ca href=\"https://github.com/josephsav...\n\n_Description has been truncated_","html_url":"https://github.com/mysterym3at/venreactapp/pull/4","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/mysterym3at%2Fvenreactapp/issues/4","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/4/packages"},{"uuid":"4610033360","node_id":"PR_kwDOSEk9Cc7jwUky","number":8,"state":"open","title":"deps(deps): bump the all-dependencies group across 1 directory with 79 updates","user":"dependabot[bot]","labels":[],"assignees":[],"locked":false,"comments_count":1,"pull_request":true,"closed_at":null,"author_association":null,"state_reason":null,"created_at":"2026-06-08T04:29:30.000Z","updated_at":"2026-06-08T04:29:31.000Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"deps(deps): bump","group_name":"all-dependencies","update_count":79,"packages":[{"name":"@eslint-react/eslint-plugin","old_version":"2.13.0","new_version":"5.8.16","repository_url":"https://github.com/Rel1cx/eslint-react"},{"name":"@eslint/js","old_version":"9.39.2","new_version":"10.0.1","repository_url":"https://github.com/eslint/eslint"},{"name":"@typescript-eslint/eslint-plugin","old_version":"8.56.0","new_version":"8.60.1","repository_url":"https://github.com/typescript-eslint/typescript-eslint"},{"name":"@typescript-eslint/parser","old_version":"8.56.0","new_version":"8.60.1","repository_url":"https://github.com/typescript-eslint/typescript-eslint"},{"name":"eslint","old_version":"9.39.2","new_version":"10.4.1","repository_url":"https://github.com/eslint/eslint"},{"name":"eslint-import-resolver-typescript","old_version":"4.4.4","new_version":"4.4.5","repository_url":"https://github.com/import-js/eslint-import-resolver-typescript"},{"name":"eslint-plugin-react-hooks","old_version":"7.0.1","new_version":"7.1.1","repository_url":"https://github.com/facebook/react"},{"name":"globals","old_version":"17.3.0","new_version":"17.6.0","repository_url":"https://github.com/sindresorhus/globals"},{"name":"graphql","old_version":"16.12.0","new_version":"16.14.1","repository_url":"https://github.com/graphql/graphql-js"},{"name":"happy-dom","old_version":"20.6.2","new_version":"20.10.2","repository_url":"https://github.com/capricorn86/happy-dom"},{"name":"jiti","old_version":"2.6.1","new_version":"2.7.0","repository_url":"https://github.com/unjs/jiti"},{"name":"lint-staged","old_version":"16.2.7","new_version":"17.0.7","repository_url":"https://github.com/lint-staged/lint-staged"},{"name":"mermaid","old_version":"11.12.3","new_version":"11.15.0","repository_url":"https://github.com/mermaid-js/mermaid"},{"name":"prettier","old_version":"3.8.1","new_version":"3.8.3","repository_url":"https://github.com/prettier/prettier"},{"name":"react","old_version":"19.2.4","new_version":"19.2.7","repository_url":"https://github.com/facebook/react"},{"name":"@types/react","old_version":"19.2.14","new_version":"19.2.17","repository_url":"https://github.com/DefinitelyTyped/DefinitelyTyped"},{"name":"typescript","old_version":"5.9.3","new_version":"6.0.3","repository_url":"https://github.com/microsoft/TypeScript"},{"name":"typescript-eslint","old_version":"8.56.0","new_version":"8.60.1","repository_url":"https://github.com/typescript-eslint/typescript-eslint"},{"name":"typescript-language-server","old_version":"5.1.3","new_version":"5.3.0","repository_url":"https://github.com/typescript-language-server/typescript-language-server"},{"name":"vite","old_version":"7.3.1","new_version":"8.0.16","repository_url":"https://github.com/vitejs/vite"},{"name":"vitepress","old_version":"2.0.0-alpha.16","new_version":"2.0.0-alpha.17","repository_url":"https://github.com/vuejs/vitepress"},{"name":"vitepress-plugin-llms","old_version":"1.11.0","new_version":"1.13.1","repository_url":"https://github.com/okineadev/vitepress-plugin-llms"},{"name":"vitest","old_version":"4.0.18","new_version":"4.1.8","repository_url":"https://github.com/vitest-dev/vitest"},{"name":"wrangler","old_version":"4.66.0","new_version":"4.98.0","repository_url":"https://github.com/cloudflare/workers-sdk"},{"name":"@ai-sdk/openai","old_version":"3.0.29","new_version":"3.0.68","repository_url":"https://github.com/vercel/ai"},{"name":"@better-auth/passkey","old_version":"1.4.18","new_version":"1.6.14","repository_url":"https://github.com/better-auth/better-auth"},{"name":"@better-auth/stripe","old_version":"1.4.18","new_version":"1.6.14","repository_url":"https://github.com/better-auth/better-auth"},{"name":"@trpc/server","old_version":"11.10.0","new_version":"11.17.0","repository_url":"https://github.com/trpc/trpc"},{"name":"ai","old_version":"6.0.91","new_version":"6.0.197","repository_url":"https://github.com/vercel/ai"},{"name":"better-auth","old_version":"1.4.18","new_version":"1.6.14","repository_url":"https://github.com/better-auth/better-auth"},{"name":"drizzle-orm","old_version":"0.45.1","new_version":"0.45.2","repository_url":"https://github.com/drizzle-team/drizzle-orm"},{"name":"postgres","old_version":"3.4.8","new_version":"3.4.9","repository_url":"https://github.com/porsager/postgres"},{"name":"resend","old_version":"6.9.2","new_version":"6.12.4","repository_url":"https://github.com/resend/resend-node"},{"name":"stripe","old_version":"20.3.1","new_version":"22.2.0","repository_url":"https://github.com/stripe/stripe-node"},{"name":"@cloudflare/workers-types","old_version":"4.20260218.0","new_version":"4.20260608.1","repository_url":"https://github.com/cloudflare/workerd"},{"name":"@types/bun","old_version":"1.3.9","new_version":"1.3.14","repository_url":"https://github.com/DefinitelyTyped/DefinitelyTyped"},{"name":"hono","old_version":"4.11.10","new_version":"4.12.23","repository_url":"https://github.com/honojs/hono"},{"name":"zod","old_version":"4.3.6","new_version":"4.4.3","repository_url":"https://github.com/colinhacks/zod"},{"name":"@radix-ui/react-checkbox","old_version":"1.3.3","new_version":"1.3.4","repository_url":"https://github.com/radix-ui/primitives"},{"name":"@radix-ui/react-radio-group","old_version":"1.3.8","new_version":"1.4.0","repository_url":"https://github.com/radix-ui/primitives"},{"name":"@radix-ui/react-scroll-area","old_version":"1.2.10","new_version":"1.2.11","repository_url":"https://github.com/radix-ui/primitives"},{"name":"@radix-ui/react-select","old_version":"2.2.6","new_version":"2.3.0","repository_url":"https://github.com/radix-ui/primitives"},{"name":"@radix-ui/react-separator","old_version":"1.1.8","new_version":"1.1.9","repository_url":"https://github.com/radix-ui/primitives"},{"name":"@radix-ui/react-switch","old_version":"1.2.6","new_version":"1.3.0","repository_url":"https://github.com/radix-ui/primitives"},{"name":"@tanstack/react-query","old_version":"5.90.21","new_version":"5.101.0","repository_url":"https://github.com/TanStack/query"},{"name":"@tanstack/react-router","old_version":"1.161.1","new_version":"1.170.15","repository_url":"https://github.com/TanStack/router"},{"name":"@trpc/client","old_version":"11.10.0","new_version":"11.17.0","repository_url":"https://github.com/trpc/trpc"},{"name":"@trpc/tanstack-react-query","old_version":"11.10.0","new_version":"11.17.0","repository_url":"https://github.com/trpc/trpc"},{"name":"jotai","old_version":"2.17.1","new_version":"2.20.0","repository_url":"https://github.com/pmndrs/jotai"},{"name":"jotai-effect","old_version":"2.2.3","new_version":"2.3.1","repository_url":"https://github.com/jotaijs/jotai-effect"},{"name":"lucide-react","old_version":"0.574.0","new_version":"1.17.0","repository_url":"https://github.com/lucide-icons/lucide"},{"name":"react-dom","old_version":"19.2.4","new_version":"19.2.7","repository_url":"https://github.com/facebook/react"},{"name":"react-error-boundary","old_version":"6.1.1","new_version":"6.1.2","repository_url":"https://github.com/bvaughn/react-error-boundary"},{"name":"tailwind-merge","old_version":"3.4.1","new_version":"3.6.0","repository_url":"https://github.com/dcastil/tailwind-merge"},{"name":"@tailwindcss/postcss","old_version":"4.2.0","new_version":"4.3.0","repository_url":"https://github.com/tailwindlabs/tailwindcss"},{"name":"@tanstack/react-query-devtools","old_version":"5.91.3","new_version":"5.101.0","repository_url":"https://github.com/TanStack/query"},{"name":"@tanstack/react-router-devtools","old_version":"1.161.1","new_version":"1.167.0","repository_url":"https://github.com/TanStack/router"},{"name":"@tanstack/router-plugin","old_version":"1.161.1","new_version":"1.168.18","repository_url":"https://github.com/TanStack/router"},{"name":"@types/node","old_version":"25.2.3","new_version":"25.9.2","repository_url":"https://github.com/DefinitelyTyped/DefinitelyTyped"},{"name":"@vitejs/plugin-react","old_version":"5.1.4","new_version":"6.0.2","repository_url":"https://github.com/vitejs/vite-plugin-react"},{"name":"@vitejs/plugin-react-swc","old_version":"4.2.3","new_version":"4.3.1","repository_url":"https://github.com/vitejs/vite-plugin-react"},{"name":"autoprefixer","old_version":"10.4.24","new_version":"10.5.0","repository_url":"https://github.com/postcss/autoprefixer"},{"name":"globby","old_version":"16.1.1","new_version":"16.2.0","repository_url":"https://github.com/sindresorhus/globby"},{"name":"@react-email/components","old_version":"1.0.8","new_version":"1.0.12","repository_url":"https://github.com/resend/react-email"},{"name":"@react-email/render","old_version":"2.0.4","new_version":"2.0.8","repository_url":"https://github.com/resend/react-email"},{"name":"@react-email/preview-server","old_version":"5.2.8","new_version":"5.2.10","repository_url":"https://github.com/resend/react-email"},{"name":"react-email","old_version":"5.2.8","new_version":"6.5.0","repository_url":"https://github.com/resend/react-email"},{"name":"@astrojs/react","old_version":"4.4.2","new_version":"5.0.7","repository_url":"https://github.com/withastro/astro"},{"name":"astro","old_version":"5.17.2","new_version":"6.4.4","repository_url":"https://github.com/withastro/astro"},{"name":"dotenv","old_version":"17.3.1","new_version":"17.4.2","repository_url":"https://github.com/motdotla/dotenv"},{"name":"drizzle-kit","old_version":"0.31.9","new_version":"0.31.10","repository_url":"https://github.com/drizzle-team/drizzle-orm"},{"name":"@radix-ui/react-avatar","old_version":"1.1.11","new_version":"1.1.12","repository_url":"https://github.com/radix-ui/primitives"},{"name":"@radix-ui/react-dialog","old_version":"1.1.15","new_version":"1.1.16","repository_url":"https://github.com/radix-ui/primitives"},{"name":"@radix-ui/react-label","old_version":"2.1.8","new_version":"2.1.9","repository_url":"https://github.com/radix-ui/primitives"},{"name":"@modelcontextprotocol/sdk","old_version":"1.26.0","new_version":"1.29.0","repository_url":"https://github.com/modelcontextprotocol/typescript-sdk"},{"name":"got","old_version":"14.6.6","new_version":"15.0.5","repository_url":"https://github.com/sindresorhus/got"}],"path":null,"ecosystem":"npm"},"body":"Bumps the all-dependencies group with 76 updates in the / directory:\n\n| Package | From | To |\n| --- | --- | --- |\n| [@eslint-react/eslint-plugin](https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin) | `2.13.0` | `5.8.16` |\n| [@eslint/js](https://github.com/eslint/eslint/tree/HEAD/packages/js) | `9.39.2` | `10.0.1` |\n| [@typescript-eslint/eslint-plugin](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin) | `8.56.0` | `8.60.1` |\n| [@typescript-eslint/parser](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/parser) | `8.56.0` | `8.60.1` |\n| [eslint](https://github.com/eslint/eslint) | `9.39.2` | `10.4.1` |\n| [eslint-import-resolver-typescript](https://github.com/import-js/eslint-import-resolver-typescript) | `4.4.4` | `4.4.5` |\n| [eslint-plugin-react-hooks](https://github.com/facebook/react/tree/HEAD/packages/eslint-plugin-react-hooks) | `7.0.1` | `7.1.1` |\n| [globals](https://github.com/sindresorhus/globals) | `17.3.0` | `17.6.0` |\n| [graphql](https://github.com/graphql/graphql-js) | `16.12.0` | `16.14.1` |\n| [happy-dom](https://github.com/capricorn86/happy-dom) | `20.6.2` | `20.10.2` |\n| [jiti](https://github.com/unjs/jiti) | `2.6.1` | `2.7.0` |\n| [lint-staged](https://github.com/lint-staged/lint-staged) | `16.2.7` | `17.0.7` |\n| [mermaid](https://github.com/mermaid-js/mermaid) | `11.12.3` | `11.15.0` |\n| [prettier](https://github.com/prettier/prettier) | `3.8.1` | `3.8.3` |\n| [react](https://github.com/facebook/react/tree/HEAD/packages/react) | `19.2.4` | `19.2.7` |\n| [@types/react](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/react) | `19.2.14` | `19.2.17` |\n| [typescript](https://github.com/microsoft/TypeScript) | `5.9.3` | `6.0.3` |\n| [typescript-eslint](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/typescript-eslint) | `8.56.0` | `8.60.1` |\n| [typescript-language-server](https://github.com/typescript-language-server/typescript-language-server) | `5.1.3` | `5.3.0` |\n| [vite](https://github.com/vitejs/vite/tree/HEAD/packages/vite) | `7.3.1` | `8.0.16` |\n| [vitepress](https://github.com/vuejs/vitepress) | `2.0.0-alpha.16` | `2.0.0-alpha.17` |\n| [vitepress-plugin-llms](https://github.com/okineadev/vitepress-plugin-llms) | `1.11.0` | `1.13.1` |\n| [vitest](https://github.com/vitest-dev/vitest/tree/HEAD/packages/vitest) | `4.0.18` | `4.1.8` |\n| [wrangler](https://github.com/cloudflare/workers-sdk/tree/HEAD/packages/wrangler) | `4.66.0` | `4.98.0` |\n| [@ai-sdk/openai](https://github.com/vercel/ai/tree/HEAD/packages/openai) | `3.0.29` | `3.0.68` |\n| [@better-auth/passkey](https://github.com/better-auth/better-auth/tree/HEAD/packages/passkey) | `1.4.18` | `1.6.14` |\n| [@better-auth/stripe](https://github.com/better-auth/better-auth/tree/HEAD/packages/stripe) | `1.4.18` | `1.6.14` |\n| [@trpc/server](https://github.com/trpc/trpc/tree/HEAD/packages/server) | `11.10.0` | `11.17.0` |\n| [ai](https://github.com/vercel/ai/tree/HEAD/packages/ai) | `6.0.91` | `6.0.197` |\n| [better-auth](https://github.com/better-auth/better-auth/tree/HEAD/packages/better-auth) | `1.4.18` | `1.6.14` |\n| [drizzle-orm](https://github.com/drizzle-team/drizzle-orm) | `0.45.1` | `0.45.2` |\n| [postgres](https://github.com/porsager/postgres) | `3.4.8` | `3.4.9` |\n| [resend](https://github.com/resend/resend-node) | `6.9.2` | `6.12.4` |\n| [stripe](https://github.com/stripe/stripe-node) | `20.3.1` | `22.2.0` |\n| [@cloudflare/workers-types](https://github.com/cloudflare/workerd) | `4.20260218.0` | `4.20260608.1` |\n| [@types/bun](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/bun) | `1.3.9` | `1.3.14` |\n| [hono](https://github.com/honojs/hono) | `4.11.10` | `4.12.23` |\n| [zod](https://github.com/colinhacks/zod) | `4.3.6` | `4.4.3` |\n| [@radix-ui/react-checkbox](https://github.com/radix-ui/primitives/tree/HEAD/packages/react/checkbox) | `1.3.3` | `1.3.4` |\n| [@radix-ui/react-radio-group](https://github.com/radix-ui/primitives/tree/HEAD/packages/react/radio-group) | `1.3.8` | `1.4.0` |\n| [@radix-ui/react-scroll-area](https://github.com/radix-ui/primitives/tree/HEAD/packages/react/scroll-area) | `1.2.10` | `1.2.11` |\n| [@radix-ui/react-select](https://github.com/radix-ui/primitives/tree/HEAD/packages/react/select) | `2.2.6` | `2.3.0` |\n| [@radix-ui/react-separator](https://github.com/radix-ui/primitives/tree/HEAD/packages/react/separator) | `1.1.8` | `1.1.9` |\n| [@radix-ui/react-switch](https://github.com/radix-ui/primitives/tree/HEAD/packages/react/switch) | `1.2.6` | `1.3.0` |\n| [@tanstack/react-query](https://github.com/TanStack/query/tree/HEAD/packages/react-query) | `5.90.21` | `5.101.0` |\n| [@tanstack/react-router](https://github.com/TanStack/router/tree/HEAD/packages/react-router) | `1.161.1` | `1.170.15` |\n| [@trpc/client](https://github.com/trpc/trpc/tree/HEAD/packages/client) | `11.10.0` | `11.17.0` |\n| [@trpc/tanstack-react-query](https://github.com/trpc/trpc/tree/HEAD/packages/tanstack-react-query) | `11.10.0` | `11.17.0` |\n| [jotai](https://github.com/pmndrs/jotai) | `2.17.1` | `2.20.0` |\n| [jotai-effect](https://github.com/jotaijs/jotai-effect) | `2.2.3` | `2.3.1` |\n| [lucide-react](https://github.com/lucide-icons/lucide/tree/HEAD/packages/lucide-react) | `0.574.0` | `1.17.0` |\n| [react-dom](https://github.com/facebook/react/tree/HEAD/packages/react-dom) | `19.2.4` | `19.2.7` |\n| [react-error-boundary](https://github.com/bvaughn/react-error-boundary) | `6.1.1` | `6.1.2` |\n| [tailwind-merge](https://github.com/dcastil/tailwind-merge) | `3.4.1` | `3.6.0` |\n| [@tailwindcss/postcss](https://github.com/tailwindlabs/tailwindcss/tree/HEAD/packages/@tailwindcss-postcss) | `4.2.0` | `4.3.0` |\n| [@tanstack/react-query-devtools](https://github.com/TanStack/query/tree/HEAD/packages/react-query-devtools) | `5.91.3` | `5.101.0` |\n| [@tanstack/react-router-devtools](https://github.com/TanStack/router/tree/HEAD/packages/react-router-devtools) | `1.161.1` | `1.167.0` |\n| [@tanstack/router-plugin](https://github.com/TanStack/router/tree/HEAD/packages/router-plugin) | `1.161.1` | `1.168.18` |\n| [@types/node](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/node) | `25.2.3` | `25.9.2` |\n| [@vitejs/plugin-react](https://github.com/vitejs/vite-plugin-react/tree/HEAD/packages/plugin-react) | `5.1.4` | `6.0.2` |\n| [@vitejs/plugin-react-swc](https://github.com/vitejs/vite-plugin-react/tree/HEAD/packages/plugin-react-swc) | `4.2.3` | `4.3.1` |\n| [autoprefixer](https://github.com/postcss/autoprefixer) | `10.4.24` | `10.5.0` |\n| [globby](https://github.com/sindresorhus/globby) | `16.1.1` | `16.2.0` |\n| [@react-email/components](https://github.com/resend/react-email/tree/HEAD/packages/components) | `1.0.8` | `1.0.12` |\n| [@react-email/render](https://github.com/resend/react-email/tree/HEAD/packages/render) | `2.0.4` | `2.0.8` |\n| [@react-email/preview-server](https://github.com/resend/react-email/tree/HEAD/packages/preview-server) | `5.2.8` | `5.2.10` |\n| [react-email](https://github.com/resend/react-email/tree/HEAD/packages/react-email) | `5.2.8` | `6.5.0` |\n| [@astrojs/react](https://github.com/withastro/astro/tree/HEAD/packages/integrations/react) | `4.4.2` | `5.0.7` |\n| [astro](https://github.com/withastro/astro/tree/HEAD/packages/astro) | `5.17.2` | `6.4.4` |\n| [dotenv](https://github.com/motdotla/dotenv) | `17.3.1` | `17.4.2` |\n| [drizzle-kit](https://github.com/drizzle-team/drizzle-orm) | `0.31.9` | `0.31.10` |\n| [@radix-ui/react-avatar](https://github.com/radix-ui/primitives/tree/HEAD/packages/react/avatar) | `1.1.11` | `1.1.12` |\n| [@radix-ui/react-dialog](https://github.com/radix-ui/primitives/tree/HEAD/packages/react/dialog) | `1.1.15` | `1.1.16` |\n| [@radix-ui/react-label](https://github.com/radix-ui/primitives/tree/HEAD/packages/react/label) | `2.1.8` | `2.1.9` |\n| [@modelcontextprotocol/sdk](https://github.com/modelcontextprotocol/typescript-sdk) | `1.26.0` | `1.29.0` |\n| [got](https://github.com/sindresorhus/got) | `14.6.6` | `15.0.5` |\n\n\nUpdates `@eslint-react/eslint-plugin` from 2.13.0 to 5.8.16\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/Rel1cx/eslint-react/releases\"\u003e@​eslint-react/eslint-plugin's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev5.8.16 (2026-06-07)\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003ch3\u003e🐞 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAligned dependency versions across monorepo (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1853\"\u003e#1853\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/Rel1cx/eslint-react/compare/v5.8.15...v5.8.16\"\u003ehttps://github.com/Rel1cx/eslint-react/compare/v5.8.15...v5.8.16\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003eAttestation\u003c/h2\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/attestations/30180921\"\u003ehttps://github.com/Rel1cx/eslint-react/attestations/30180921\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev5.8.15 (2026-06-07)\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003ch3\u003e📝 Documentation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdded under-construction callouts and refined kit pages on the website (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1850\"\u003e#1850\u003c/a\u003e, \u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1851\"\u003e#1851\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eRemoved \u003ccode\u003eAGENTS.md\u003c/code\u003e and \u003ccode\u003eCONTRIBUTING.md\u003c/code\u003e documents and references (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1848\"\u003e#1848\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eUpdated home and third-party plugins pages on the website.\u003c/li\u003e\n\u003cli\u003eUpdated issue template guidance and labels.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🏗️ Internal\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eBumped \u003ccode\u003e@types/*\u003c/code\u003e dependencies (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1852\"\u003e#1852\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eRelaxed checklist requirements in issue templates (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1849\"\u003e#1849\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/Rel1cx/eslint-react/compare/v5.8.13...v5.8.15\"\u003ehttps://github.com/Rel1cx/eslint-react/compare/v5.8.13...v5.8.15\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003eAttestation\u003c/h2\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/attestations/30180297\"\u003ehttps://github.com/Rel1cx/eslint-react/attestations/30180297\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev5.8.13 (2026-06-07)\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003ch3\u003e📝 Documentation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdded \u003ccode\u003eGoogleCloudPlatform/gke-mcp\u003c/code\u003e and removed archived \u003ccode\u003eantfu/shiki-stream\u003c/code\u003e from community projects on the website.\u003c/li\u003e\n\u003cli\u003eImproved RSC Directives wording in documentation.\u003c/li\u003e\n\u003cli\u003eRemoved the \u003ccode\u003eno-multiple-children-in-title\u003c/code\u003e recipe from the website.\u003c/li\u003e\n\u003cli\u003eRemoved the kit beta banner from the website (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1846\"\u003e#1846\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🏗️ Internal\u003c/h3\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/Rel1cx/eslint-react/blob/main/CHANGELOG.md\"\u003e@​eslint-react/eslint-plugin's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev5.8.16 (2026-06-07)\u003c/h2\u003e\n\u003ch3\u003e🐞 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAligned dependency versions across monorepo (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1853\"\u003e#1853\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/Rel1cx/eslint-react/compare/v5.8.15...v5.8.16\"\u003ehttps://github.com/Rel1cx/eslint-react/compare/v5.8.15...v5.8.16\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev5.8.15 (2026-06-07)\u003c/h2\u003e\n\u003ch3\u003e📝 Documentation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdded under-construction callouts and refined kit pages on the website (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1850\"\u003e#1850\u003c/a\u003e, \u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1851\"\u003e#1851\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eRemoved \u003ccode\u003eAGENTS.md\u003c/code\u003e and \u003ccode\u003eCONTRIBUTING.md\u003c/code\u003e documents and references (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1848\"\u003e#1848\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eUpdated home and third-party plugins pages on the website.\u003c/li\u003e\n\u003cli\u003eUpdated issue template guidance and labels.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🏗️ Internal\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eBumped \u003ccode\u003e@types/*\u003c/code\u003e dependencies (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1852\"\u003e#1852\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eRelaxed checklist requirements in issue templates (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1849\"\u003e#1849\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/Rel1cx/eslint-react/compare/v5.8.13...v5.8.15\"\u003ehttps://github.com/Rel1cx/eslint-react/compare/v5.8.13...v5.8.15\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev5.8.13 (2026-06-06)\u003c/h2\u003e\n\u003ch3\u003e📝 Documentation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdded \u003ccode\u003eGoogleCloudPlatform/gke-mcp\u003c/code\u003e and removed archived \u003ccode\u003eantfu/shiki-stream\u003c/code\u003e from community projects on the website.\u003c/li\u003e\n\u003cli\u003eImproved RSC Directives wording in documentation.\u003c/li\u003e\n\u003cli\u003eRemoved the \u003ccode\u003eno-multiple-children-in-title\u003c/code\u003e recipe from the website.\u003c/li\u003e\n\u003cli\u003eRemoved the kit beta banner from the website (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1846\"\u003e#1846\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🏗️ Internal\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdded \u003ccode\u003eRuleListener\u003c/code\u003e return type to all rule \u003ccode\u003ecreate\u003c/code\u003e functions (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1845\"\u003e#1845\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdded boundary and edge case tests for \u003ccode\u003ereact-dom\u003c/code\u003e rules, JSX rules, and \u003ccode\u003enaming-convention\u003c/code\u003e rules (\u003ccode\u003econtext-name\u003c/code\u003e, \u003ccode\u003eid-name\u003c/code\u003e, \u003ccode\u003eref-name\u003c/code\u003e).\u003c/li\u003e\n\u003cli\u003eAdded identifier resolution tests for \u003ccode\u003ereact-x/no-leaked-conditional-rendering\u003c/code\u003e (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1844\"\u003e#1844\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eBumped \u003ccode\u003epnpm\u003c/code\u003e and updated lockfile.\u003c/li\u003e\n\u003cli\u003eBumped \u003ccode\u003etsdown\u003c/code\u003e to \u003ccode\u003e0.22.2\u003c/code\u003e and updated dependencies.\u003c/li\u003e\n\u003cli\u003eRemoved redundant single-argument \u003ccode\u003emerge()\u003c/code\u003e calls in rules (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1843\"\u003e#1843\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eSwitched GitHub workflows to \u003ccode\u003eubuntu-latest\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003eUpdated website brand assets and icons.\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/Rel1cx/eslint-react/compare/v5.8.12...v5.8.13\"\u003ehttps://github.com/Rel1cx/eslint-react/compare/v5.8.12...v5.8.13\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev5.8.12 (2026-06-05)\u003c/h2\u003e\n\u003ch3\u003e🪄 Improvements\u003c/h3\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/f9e975424aab7552f53308ec40c07eee58086dbb\"\u003e\u003ccode\u003ef9e9754\u003c/code\u003e\u003c/a\u003e release: 5.8.16\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/8719df27f74222afa045f08ed8e79d5d0833de3e\"\u003e\u003ccode\u003e8719df2\u003c/code\u003e\u003c/a\u003e release: 5.8.15\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/1022e493f015bcec49babc6c4a3bbb838bcfc311\"\u003e\u003ccode\u003e1022e49\u003c/code\u003e\u003c/a\u003e release: 5.8.14\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/81cdcc982434b841e2a7b3732644d122932f3229\"\u003e\u003ccode\u003e81cdcc9\u003c/code\u003e\u003c/a\u003e chore(deps): bump @types/* dependencies (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1852\"\u003e#1852\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/ad1aada15ceee6a331f4514fcb6638d6db468323\"\u003e\u003ccode\u003ead1aada\u003c/code\u003e\u003c/a\u003e docs: remove \u003ccode\u003eAGENTS.md\u003c/code\u003e and \u003ccode\u003eCONTRIBUTING.md\u003c/code\u003e docs and references (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1848\"\u003e#1848\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/e2920e3d2296471d1c4b498da17c13eb4750aa8a\"\u003e\u003ccode\u003ee2920e3\u003c/code\u003e\u003c/a\u003e release: 5.8.13\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/e68a316467cc907dda9e9a6f91f89f7f68c067f8\"\u003e\u003ccode\u003ee68a316\u003c/code\u003e\u003c/a\u003e chore: bump tsdown to 0.22.2 and update deps\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/de7d846106872352dcbed7713541d99c03bd5bac\"\u003e\u003ccode\u003ede7d846\u003c/code\u003e\u003c/a\u003e release: 5.8.12\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/3498c34b904454c44425ed148107ef8f5184eecf\"\u003e\u003ccode\u003e3498c34\u003c/code\u003e\u003c/a\u003e release: 5.8.11\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/0ee67d6c2f890f20165ee540773b8eda37adf9cf\"\u003e\u003ccode\u003e0ee67d6\u003c/code\u003e\u003c/a\u003e docs: update Meta legal name and add brand assets page (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1832\"\u003e#1832\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/Rel1cx/eslint-react/commits/v5.8.16/plugins/eslint-plugin\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@eslint/js` from 9.39.2 to 10.0.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/eslint/eslint/releases\"\u003e@​eslint/js's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev10.0.1\u003c/h2\u003e\n\u003ch2\u003eBug Fixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/c87d5bded54c5cf491eb04c24c9d09bbbd42c23e\"\u003e\u003ccode\u003ec87d5bd\u003c/code\u003e\u003c/a\u003e fix: update eslint (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20531\"\u003e#20531\u003c/a\u003e) (renovate[bot])\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/d84100115c14691691058f00779c94e74fca946a\"\u003e\u003ccode\u003ed841001\u003c/code\u003e\u003c/a\u003e fix: update \u003ccode\u003eminimatch\u003c/code\u003e to \u003ccode\u003e10.2.1\u003c/code\u003e to address security vulnerabilities (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20519\"\u003e#20519\u003c/a\u003e) (루밀LuMir)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/04c21475b3004904948f02049f2888b401d82c78\"\u003e\u003ccode\u003e04c2147\u003c/code\u003e\u003c/a\u003e fix: update error message for unused suppressions (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20496\"\u003e#20496\u003c/a\u003e) (fnx)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/38b089c1726feac0e31a31d47941bd99e29ce003\"\u003e\u003ccode\u003e38b089c\u003c/code\u003e\u003c/a\u003e fix: update dependency \u003ccode\u003e@​eslint/config-array\u003c/code\u003e to ^0.23.1 (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20484\"\u003e#20484\u003c/a\u003e) (renovate[bot])\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eDocumentation\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/5b3dbce50a1404a9f118afe810cefeee79388a2a\"\u003e\u003ccode\u003e5b3dbce\u003c/code\u003e\u003c/a\u003e docs: add AI acknowledgement section to templates (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20431\"\u003e#20431\u003c/a\u003e) (루밀LuMir)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/6f23076037d5879f20fb3be2ef094293b1e8d38c\"\u003e\u003ccode\u003e6f23076\u003c/code\u003e\u003c/a\u003e docs: toggle nav in no-JS mode (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20476\"\u003e#20476\u003c/a\u003e) (Tanuj Kanti)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/b69cfb32a16c5d5e9986390d484fae1d21e406f9\"\u003e\u003ccode\u003eb69cfb3\u003c/code\u003e\u003c/a\u003e docs: Update README (GitHub Actions Bot)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eChores\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/e5c281ffd038a3a7a3e5364db0b9378e0ad83020\"\u003e\u003ccode\u003ee5c281f\u003c/code\u003e\u003c/a\u003e chore: updates for v9.39.3 release (Jenkins)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/8c3832adb77cd993b4a24891900d5eeaaf093cdc\"\u003e\u003ccode\u003e8c3832a\u003c/code\u003e\u003c/a\u003e chore: update \u003ccode\u003e@​typescript-eslint/parser\u003c/code\u003e to ^8.56.0 (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20514\"\u003e#20514\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/8330d238ae6adb68bb6a1c9381e38cfedd990d94\"\u003e\u003ccode\u003e8330d23\u003c/code\u003e\u003c/a\u003e test: add tests for config-api (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20493\"\u003e#20493\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/37d6e91e88fa6a2ca6d8726679096acff21ba6cc\"\u003e\u003ccode\u003e37d6e91\u003c/code\u003e\u003c/a\u003e chore: remove eslint v10 prereleases from eslint-config-eslint deps (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20494\"\u003e#20494\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/da7cd0e79197ad16e17052eef99df141de6dbfb1\"\u003e\u003ccode\u003eda7cd0e\u003c/code\u003e\u003c/a\u003e refactor: cleanup error message templates (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20479\"\u003e#20479\u003c/a\u003e) (Francesco Trotta)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/84fb885d49ac810e79a9491276b4828b53d913e5\"\u003e\u003ccode\u003e84fb885\u003c/code\u003e\u003c/a\u003e chore: package.json update for \u003ccode\u003e@​eslint/js\u003c/code\u003e release (Jenkins)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/1f667344b57c4c09b548d94bcfac1f91b6e5c63d\"\u003e\u003ccode\u003e1f66734\u003c/code\u003e\u003c/a\u003e chore: add \u003ccode\u003eeslint\u003c/code\u003e to \u003ccode\u003epeerDependencies\u003c/code\u003e of \u003ccode\u003e@eslint/js\u003c/code\u003e (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20467\"\u003e#20467\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev10.0.0\u003c/h2\u003e\n\u003ch2\u003eBreaking Changes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/f9e54f43a5e497cdfa179338b431093245cb787b\"\u003e\u003ccode\u003ef9e54f4\u003c/code\u003e\u003c/a\u003e feat!: estimate rule-tester failure location (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20420\"\u003e#20420\u003c/a\u003e) (ST-DDT)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/a176319d8ade1a7d9b2d7fb8f038f55a2662325f\"\u003e\u003ccode\u003ea176319\u003c/code\u003e\u003c/a\u003e feat!: replace \u003ccode\u003echalk\u003c/code\u003e with \u003ccode\u003estyleText\u003c/code\u003e and add \u003ccode\u003ecolor\u003c/code\u003e to \u003ccode\u003eResultsMeta\u003c/code\u003e (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20227\"\u003e#20227\u003c/a\u003e) (루밀LuMir)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/c7046e6c1e03c4ca0eee4888a1f2eba4c6454f84\"\u003e\u003ccode\u003ec7046e6\u003c/code\u003e\u003c/a\u003e feat!: enable JSX reference tracking (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20152\"\u003e#20152\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/fa31a608901684fbcd9906d1907e66561d16e5aa\"\u003e\u003ccode\u003efa31a60\u003c/code\u003e\u003c/a\u003e feat!: add \u003ccode\u003ename\u003c/code\u003e to configs (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20015\"\u003e#20015\u003c/a\u003e) (Kirk Waiblinger)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/3383e7ec9028166cafc8ea7986c2f7498d0049f0\"\u003e\u003ccode\u003e3383e7e\u003c/code\u003e\u003c/a\u003e fix!: remove deprecated \u003ccode\u003eSourceCode\u003c/code\u003e methods (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20137\"\u003e#20137\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/501abd0e916a35554c58b7c0365537f1fa3880ce\"\u003e\u003ccode\u003e501abd0\u003c/code\u003e\u003c/a\u003e feat!: update dependency minimatch to v10 (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20246\"\u003e#20246\u003c/a\u003e) (renovate[bot])\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/ca4d3b40085de47561f89656a2207d09946ed45e\"\u003e\u003ccode\u003eca4d3b4\u003c/code\u003e\u003c/a\u003e fix!: stricter rule tester assertions for valid test cases (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20125\"\u003e#20125\u003c/a\u003e) (唯然)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/96512a66c86402fb0538cdcb6cd30b9073f6bf3b\"\u003e\u003ccode\u003e96512a6\u003c/code\u003e\u003c/a\u003e fix!: Remove deprecated rule context methods (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20086\"\u003e#20086\u003c/a\u003e) (Nicholas C. Zakas)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/c69fdacdb2e886b9d965568a397aa8220db3fe90\"\u003e\u003ccode\u003ec69fdac\u003c/code\u003e\u003c/a\u003e feat!: remove eslintrc support (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20037\"\u003e#20037\u003c/a\u003e) (Francesco Trotta)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/208b5cc34a8374ff81412b5bec2e0800eebfbd04\"\u003e\u003ccode\u003e208b5cc\u003c/code\u003e\u003c/a\u003e feat!: Use \u003ccode\u003eScopeManager#addGlobals()\u003c/code\u003e (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20132\"\u003e#20132\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/a2ee188ea7a38a0c6155f3d39e2b00e1d0f36e14\"\u003e\u003ccode\u003ea2ee188\u003c/code\u003e\u003c/a\u003e fix!: add \u003ccode\u003euniqueItems: true\u003c/code\u003e in \u003ccode\u003eno-invalid-regexp\u003c/code\u003e option (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20155\"\u003e#20155\u003c/a\u003e) (Tanuj Kanti)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/a89059dbf2832d417dd493ee81483227ec44e4ab\"\u003e\u003ccode\u003ea89059d\u003c/code\u003e\u003c/a\u003e feat!: Program range span entire source text (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20133\"\u003e#20133\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/39a6424373d915fa9de0d7b0caba9a4dc3da9b53\"\u003e\u003ccode\u003e39a6424\u003c/code\u003e\u003c/a\u003e fix!: assert 'text' is a string across all RuleFixer methods (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20082\"\u003e#20082\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/f28fbf846244e043c92b355b224d121b06140b44\"\u003e\u003ccode\u003ef28fbf8\u003c/code\u003e\u003c/a\u003e fix!: Deprecate \u003ccode\u003e\u0026quot;always\u0026quot;\u003c/code\u003e and \u003ccode\u003e\u0026quot;as-needed\u0026quot;\u003c/code\u003e options of the \u003ccode\u003eradix\u003c/code\u003e rule (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20223\"\u003e#20223\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/aa3fb2b233e929b37220be940575f42c280e0b98\"\u003e\u003ccode\u003eaa3fb2b\u003c/code\u003e\u003c/a\u003e fix!: tighten \u003ccode\u003efunc-names\u003c/code\u003e schema (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20119\"\u003e#20119\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/f6c0ed0311dcfee853367d5068c765d066e6b756\"\u003e\u003ccode\u003ef6c0ed0\u003c/code\u003e\u003c/a\u003e feat!: report \u003ccode\u003eeslint-env\u003c/code\u003e comments as errors (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20128\"\u003e#20128\u003c/a\u003e) (Francesco Trotta)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/4bf739fb533e59f7f0a66b65f7bc80be0f37d8db\"\u003e\u003ccode\u003e4bf739f\u003c/code\u003e\u003c/a\u003e fix!: remove deprecated \u003ccode\u003eLintMessage#nodeType\u003c/code\u003e and \u003ccode\u003eTestCaseError#type\u003c/code\u003e (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20096\"\u003e#20096\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/523c076866400670fb2192a3f55dbf7ad3469247\"\u003e\u003ccode\u003e523c076\u003c/code\u003e\u003c/a\u003e feat!: drop support for jiti \u0026lt; 2.2.0 (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20016\"\u003e#20016\u003c/a\u003e) (michael faith)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/454a292c95f34dad232411ddac06408e6383bb64\"\u003e\u003ccode\u003e454a292\u003c/code\u003e\u003c/a\u003e feat!: update \u003ccode\u003eeslint:recommended\u003c/code\u003e configuration (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20210\"\u003e#20210\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/4f880ee02992e1bf0e96ebaba679985e2d1295f1\"\u003e\u003ccode\u003e4f880ee\u003c/code\u003e\u003c/a\u003e feat!: remove \u003ccode\u003ev10_*\u003c/code\u003e and inactive \u003ccode\u003eunstable_*\u003c/code\u003e flags (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20225\"\u003e#20225\u003c/a\u003e) (sethamus)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/f18115c363a4ac7671a4c7f30ee13d57ebba330f\"\u003e\u003ccode\u003ef18115c\u003c/code\u003e\u003c/a\u003e feat!: \u003ccode\u003eno-shadow-restricted-names\u003c/code\u003e report \u003ccode\u003eglobalThis\u003c/code\u003e by default (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20027\"\u003e#20027\u003c/a\u003e) (sethamus)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/c6358c31fbd3937b92d89be2618ffdf5a774604e\"\u003e\u003ccode\u003ec6358c3\u003c/code\u003e\u003c/a\u003e feat!: Require Node.js \u003ccode\u003e^20.19.0 || ^22.13.0 || \u0026gt;=24\u003c/code\u003e (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20160\"\u003e#20160\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eFeatures\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/bff9091927811497dbf066b0e3b85ecb37d43822\"\u003e\u003ccode\u003ebff9091\u003c/code\u003e\u003c/a\u003e feat: handle \u003ccode\u003eArray.fromAsync\u003c/code\u003e in \u003ccode\u003earray-callback-return\u003c/code\u003e (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20457\"\u003e#20457\u003c/a\u003e) (Francesco Trotta)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/290c594bb50c439fb71bc75521ee5360daa8c222\"\u003e\u003ccode\u003e290c594\u003c/code\u003e\u003c/a\u003e feat: add \u003ccode\u003eself\u003c/code\u003e to \u003ccode\u003eno-implied-eval\u003c/code\u003e rule (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20468\"\u003e#20468\u003c/a\u003e) (sethamus)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/43677de07ebd6e14bfac40a46ad749ba783c45f2\"\u003e\u003ccode\u003e43677de\u003c/code\u003e\u003c/a\u003e feat: fix handling of function and class expression names in \u003ccode\u003eno-shadow\u003c/code\u003e (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20432\"\u003e#20432\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/84fb885d49ac810e79a9491276b4828b53d913e5\"\u003e\u003ccode\u003e84fb885\u003c/code\u003e\u003c/a\u003e chore: package.json update for \u003ccode\u003e@​eslint/js\u003c/code\u003e release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/1f667344b57c4c09b548d94bcfac1f91b6e5c63d\"\u003e\u003ccode\u003e1f66734\u003c/code\u003e\u003c/a\u003e chore: add \u003ccode\u003eeslint\u003c/code\u003e to \u003ccode\u003epeerDependencies\u003c/code\u003e of \u003ccode\u003e@eslint/js\u003c/code\u003e (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20467\"\u003e#20467\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/f3fbc2f60cbe2c718364feb8c3fc0452c0df3c56\"\u003e\u003ccode\u003ef3fbc2f\u003c/code\u003e\u003c/a\u003e chore: set \u003ccode\u003e@eslint/js\u003c/code\u003e version to 10.0.0 to skip releasing it (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20466\"\u003e#20466\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/b4b3127f8542c599ce2dea804b6582ebc40c993d\"\u003e\u003ccode\u003eb4b3127\u003c/code\u003e\u003c/a\u003e chore: package.json update for \u003ccode\u003e@​eslint/js\u003c/code\u003e release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/0b14059491d830a49b3577931f4f68fbcfce6be5\"\u003e\u003ccode\u003e0b14059\u003c/code\u003e\u003c/a\u003e chore: package.json update for \u003ccode\u003e@​eslint/js\u003c/code\u003e release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/fa31a608901684fbcd9906d1907e66561d16e5aa\"\u003e\u003ccode\u003efa31a60\u003c/code\u003e\u003c/a\u003e feat!: add \u003ccode\u003ename\u003c/code\u003e to configs (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20015\"\u003e#20015\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/1e2cad5f6fa47ed6ed89d2a29798dda926d50990\"\u003e\u003ccode\u003e1e2cad5\u003c/code\u003e\u003c/a\u003e chore: package.json update for \u003ccode\u003e@​eslint/js\u003c/code\u003e release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/454a292c95f34dad232411ddac06408e6383bb64\"\u003e\u003ccode\u003e454a292\u003c/code\u003e\u003c/a\u003e feat!: update \u003ccode\u003eeslint:recommended\u003c/code\u003e configuration (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20210\"\u003e#20210\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/c6358c31fbd3937b92d89be2618ffdf5a774604e\"\u003e\u003ccode\u003ec6358c3\u003c/code\u003e\u003c/a\u003e feat!: Require Node.js \u003ccode\u003e^20.19.0 || ^22.13.0 || \u0026gt;=24\u003c/code\u003e (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20160\"\u003e#20160\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/eslint/eslint/commits/v10.0.1/packages/js\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@typescript-eslint/eslint-plugin` from 8.56.0 to 8.60.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases\"\u003e@​typescript-eslint/eslint-plugin's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev8.60.1\u003c/h2\u003e\n\u003ch2\u003e8.60.1 (2026-06-01)\u003c/h2\u003e\n\u003ch3\u003e🩹 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e respect ECMAScript line terminators in ts-comment rules (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12352\"\u003e#12352\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-shadow] correct rule to match ESLint v10 handling (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12182\"\u003e#12182\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e❤️ Thank You\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003elumir\u003c/li\u003e\n\u003cli\u003eNevette Bailey \u003ca href=\"https://github.com/nevette-bailey\"\u003e\u003ccode\u003e@​nevette-bailey\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.60.1\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003ev8.60.0\u003c/h2\u003e\n\u003ch2\u003e8.60.0 (2026-05-25)\u003c/h2\u003e\n\u003ch3\u003e🚀 Features\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003erule-tester:\u003c/strong\u003e added updates of RuleTester from upstream (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12291\"\u003e#12291\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🩹 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eplayground TS version selector is not working (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12326\"\u003e#12326\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/issues/12325\"\u003e#12325\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e❤️ Thank You\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eEvyatar Daud \u003ca href=\"https://github.com/StyleShit\"\u003e\u003ccode\u003e@​StyleShit\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eVinccool96\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.60.0\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003ev8.59.4\u003c/h2\u003e\n\u003ch2\u003e8.59.4 (2026-05-18)\u003c/h2\u003e\n\u003ch3\u003e🩹 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-floating-promises] stack overflow when using recursive types (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12294\"\u003e#12294\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eproject-service:\u003c/strong\u003e throw error cause in \u003ccode\u003egetParsedConfigFileFromTSServer\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12321\"\u003e#12321\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003etypescript-eslint:\u003c/strong\u003e export Compatible* types from typescript-eslint to resolve pnpm TS error (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12340\"\u003e#12340\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e❤️ Thank You\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eEvyatar Daud \u003ca href=\"https://github.com/StyleShit\"\u003e\u003ccode\u003e@​StyleShit\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eKirk Waiblinger \u003ca href=\"https://github.com/kirkwaiblinger\"\u003e\u003ccode\u003e@​kirkwaiblinger\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/CHANGELOG.md\"\u003e@​typescript-eslint/eslint-plugin's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e8.60.1 (2026-06-01)\u003c/h2\u003e\n\u003ch3\u003e🩹 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-shadow] correct rule to match ESLint v10 handling (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12182\"\u003e#12182\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e respect ECMAScript line terminators in ts-comment rules (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12352\"\u003e#12352\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e❤️ Thank You\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003elumir\u003c/li\u003e\n\u003cli\u003eNevette Bailey \u003ca href=\"https://github.com/nevette-bailey\"\u003e\u003ccode\u003e@​nevette-bailey\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.60.1\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003e8.60.0 (2026-05-25)\u003c/h2\u003e\n\u003cp\u003eThis was a version bump only for eslint-plugin to align it with other projects, there were no code changes.\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.60.0\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003e8.59.4 (2026-05-18)\u003c/h2\u003e\n\u003ch3\u003e🩹 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-floating-promises] stack overflow when using recursive types (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12294\"\u003e#12294\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e❤️ Thank You\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eEvyatar Daud \u003ca href=\"https://github.com/StyleShit\"\u003e\u003ccode\u003e@​StyleShit\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.4\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003e8.59.3 (2026-05-11)\u003c/h2\u003e\n\u003cp\u003eThis was a version bump only for eslint-plugin to align it with other projects, there were no code changes.\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.3\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003e8.59.2 (2026-05-04)\u003c/h2\u003e\n\u003ch3\u003e🩹 Fixes\u003c/h3\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/4f84a697aedc436559c3ae09b5b357d98b448d68\"\u003e\u003ccode\u003e4f84a69\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.60.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/598af564db50593277ba46c7fdea3648e4425391\"\u003e\u003ccode\u003e598af56\u003c/code\u003e\u003c/a\u003e docs(eslint-plugin): clarify no-redeclare type-value collision not covered by...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/1849b530c254fb4f89d7270160f3a998e4acd964\"\u003e\u003ccode\u003e1849b53\u003c/code\u003e\u003c/a\u003e chore: typecheck using tsgo (\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin/issues/12139\"\u003e#12139\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/5341d59dd3c21fc4e2bf3bce55cf35d8f84e5216\"\u003e\u003ccode\u003e5341d59\u003c/code\u003e\u003c/a\u003e chore: fix lint issues (\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin/issues/12369\"\u003e#12369\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/f525814f01766487ab34a54d56de20ea5c4fb576\"\u003e\u003ccode\u003ef525814\u003c/code\u003e\u003c/a\u003e fix(eslint-plugin): [no-shadow] correct rule to match ESLint v10 handling (\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin/issues/1\"\u003e#1\u003c/a\u003e...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/2df540cd8bbeb3e2c56d516912f69bf63c1e9450\"\u003e\u003ccode\u003e2df540c\u003c/code\u003e\u003c/a\u003e chore(eslint-plugin): defer type checks to improve rules performance (\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin/issues/12296\"\u003e#12296\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/1ab4284789b36cf482a4d9924719162a02d54243\"\u003e\u003ccode\u003e1ab4284\u003c/code\u003e\u003c/a\u003e fix(eslint-plugin): respect ECMAScript line terminators in ts-comment rules (...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/2f49df599b2db5f2937caf975d3c63e5cdeb0ea1\"\u003e\u003ccode\u003e2f49df5\u003c/code\u003e\u003c/a\u003e docs: update references to \u003ccode\u003e@stylistic/eslint-plugin\u003c/code\u003e rules in documentation ...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/f891c29de5f3e23f3d8c59cc599d3196e54e9b58\"\u003e\u003ccode\u003ef891c29\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.60.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/ca6ca1431b6d18235297a7e29feb5d98f012dff2\"\u003e\u003ccode\u003eca6ca14\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.59.4\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commits/v8.60.1/packages/eslint-plugin\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@typescript-eslint/parser` from 8.56.0 to 8.60.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases\"\u003e@​typescript-eslint/parser's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev8.60.1\u003c/h2\u003e\n\u003ch2\u003e8.60.1 (2026-06-01)\u003c/h2\u003e\n\u003ch3\u003e🩹 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e respect ECMAScript line terminators in ts-comment rules (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12352\"\u003e#12352\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-shadow] correct rule to match ESLint v10 handling (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12182\"\u003e#12182\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e❤️ Thank You\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003elumir\u003c/li\u003e\n\u003cli\u003eNevette Bailey \u003ca href=\"https://github.com/nevette-bailey\"\u003e\u003ccode\u003e@​nevette-bailey\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.60.1\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003ev8.60.0\u003c/h2\u003e\n\u003ch2\u003e8.60.0 (2026-05-25)\u003c/h2\u003e\n\u003ch3\u003e🚀 Features\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003erule-tester:\u003c/strong\u003e added updates of RuleTester from upstream (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12291\"\u003e#12291\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🩹 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eplayground TS version selector is not working (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12326\"\u003e#12326\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/issues/12325\"\u003e#12325\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e❤️ Thank You\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eEvyatar Daud \u003ca href=\"https://github.com/StyleShit\"\u003e\u003ccode\u003e@​StyleShit\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eVinccool96\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.60.0\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003ev8.59.4\u003c/h2\u003e\n\u003ch2\u003e8.59.4 (2026-05-18)\u003c/h2\u003e\n\u003ch3\u003e🩹 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-floating-promises] stack overflow when using recursive types (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12294\"\u003e#12294\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eproject-service:\u003c/strong\u003e throw error cause in \u003ccode\u003egetParsedConfigFileFromTSServer\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12321\"\u003e#12321\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003etypescript-eslint:\u003c/strong\u003e export Compatible* types from typescript-eslint to resolve pnpm TS error (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12340\"\u003e#12340\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e❤️ Thank You\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eEvyatar Daud \u003ca href=\"https://github.com/StyleShit\"\u003e\u003ccode\u003e@​StyleShit\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eKirk Waiblinger \u003ca href=\"https://github.com/kirkwaiblinger\"\u003e\u003ccode\u003e@​kirkwaiblinger\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/parser/CHANGELOG.md\"\u003e@​typescript-eslint/parser's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e8.60.1 (2026-06-01)\u003c/h2\u003e\n\u003cp\u003eThis was a version bump only for parser to align it with other projects, there were no code changes.\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.60.1\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003e8.60.0 (2026-05-25)\u003c/h2\u003e\n\u003cp\u003eThis was a version bump only for parser to align it with other projects, there were no code changes.\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.60.0\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003e8.59.4 (2026-05-18)\u003c/h2\u003e\n\u003cp\u003eThis was a version bump only for parser to align it with other projects, there were no code changes.\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.4\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003e8.59.3 (2026-05-11)\u003c/h2\u003e\n\u003cp\u003eThis was a version bump only for parser to align it with other projects, there were no code changes.\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.3\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003e8.59.2 (2026-05-04)\u003c/h2\u003e\n\u003cp\u003eThis was a version bump only for parser to align it with other projects, there were no code changes.\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.2\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003e8.59.1 (2026-04-27)\u003c/h2\u003e\n\u003cp\u003eThis was a version bump only for parser to align it with other projects, there were no code changes.\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.1\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003e8.59.0 (2026-04-20)\u003c/h2\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/4f84a697aedc436559c3ae09b5b357d98b448d68\"\u003e\u003ccode\u003e4f84a69\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.60.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/1849b530c254fb4f89d7270160f3a998e4acd964\"\u003e\u003ccode\u003e1849b53\u003c/code\u003e\u003c/a\u003e chore: typecheck using tsgo (\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/parser/issues/12139\"\u003e#12139\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/f891c29de5f3e23f3d8c59cc599d3196e54e9b58\"\u003e\u003ccode\u003ef891c29\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.60.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/ca6ca1431b6d18235297a7e29feb5d98f012dff2\"\u003e\u003ccode\u003eca6ca14\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.59.4\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/48e13c0261e3cb1bf4f4dfaa462cdb3a56ef7383\"\u003e\u003ccode\u003e48e13c0\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.59.3\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/44f9625336841a8ee3eb01a9e02e49b1d7b12648\"\u003e\u003ccode\u003e44f9625\u003c/code\u003e\u003c/a\u003e chore(deps): update vitest monorepo to v4.1.5 (\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/parser/issues/12307\"\u003e#12307\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/2ec35f1760aade4df4c631d76d78c7ed5e136333\"\u003e\u003ccode\u003e2ec35f1\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.59.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/52457932e5507b5ca01e720a541f3f8d01e09b9d\"\u003e\u003ccode\u003e5245793\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.59.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/ea9ae4f8817873480e3501145059f63e39e8d8a1\"\u003e\u003ccode\u003eea9ae4f\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.59.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/90c2803a4c250e0343598d41e973f95e743bf4ce\"\u003e\u003ccode\u003e90c2803\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.58.2\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commits/v8.60.1/packages/parser\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `eslint` from 9.39.2 to 10.4.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/eslint/eslint/releases\"\u003eeslint's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev10.4.1\u003c/h2\u003e\n\u003ch2\u003eBug Fixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/e557467db7496220eebcbe2ac5ea6d38c12bb1ec\"\u003e\u003ccode\u003ee557467\u003c/code\u003e\u003c/a\u003e fix: update \u003ccode\u003e@eslint/plugin-kit\u003c/code\u003e version to 0.7.2 (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20930\"\u003e#20930\u003c/a\u003e) (Francesco Trotta)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/d4ce898796ca22c3b96aa70d3014cb85f4bac1cd\"\u003e\u003ccode\u003ed4ce898\u003c/code\u003e\u003c/a\u003e fix: propagate failures from delegated commands (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20917\"\u003e#20917\u003c/a\u003e) (Minh Vu)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/f4f3507460bc016b5be979c05d2969793f570cbf\"\u003e\u003ccode\u003ef4f3507\u003c/code\u003e\u003c/a\u003e fix: prefer-arrow-callback invalid autofix with newline after \u003ccode\u003easync\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20916\"\u003e#20916\u003c/a\u003e) (kuldeep kumar)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/c5bc78b37e08b9054a11f0cc2d81808bb24acb85\"\u003e\u003ccode\u003ec5bc78b\u003c/code\u003e\u003c/a\u003e fix: false positive for reference in \u003ccode\u003efinally\u003c/code\u003e block (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20655\"\u003e#20655\u003c/a\u003e) (Tanuj Kanti)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/27538c01f5df4e9306f6f4ba867b2dd6307fae59\"\u003e\u003ccode\u003e27538c0\u003c/code\u003e\u003c/a\u003e fix: add missing CodePath and CodePathSegment types (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20853\"\u003e#20853\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eDocumentation\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/61b0add61ffc52665562be7bb96f526690a78b30\"\u003e\u003ccode\u003e61b0add\u003c/code\u003e\u003c/a\u003e docs: remove deprecated rule from related rules of \u003ccode\u003emax-params\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20921\"\u003e#20921\u003c/a\u003e) (Tanuj Kanti)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/305d5b91aeac24d36fde42f75625a8f183d4ce43\"\u003e\u003ccode\u003e305d5b9\u003c/code\u003e\u003c/a\u003e docs: remove deprecated rules from related rules section (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20911\"\u003e#20911\u003c/a\u003e) (Tanuj Kanti)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/49b0202d01918b8061720d586dffd7c68047090c\"\u003e\u003ccode\u003e49b0202\u003c/code\u003e\u003c/a\u003e docs: fix \u003ccode\u003edisplay: none\u003c/code\u003e of ad (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20901\"\u003e#20901\u003c/a\u003e) (Tanuj Kanti)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/9067f9492ec998afc5b4f057a477ecf6ebd45e44\"\u003e\u003ccode\u003e9067f94\u003c/code\u003e\u003c/a\u003e docs: switch build to Node.js 24 (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20893\"\u003e#20893\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/c91b0417e3420c76807ce1fa2aea76e2de87ab86\"\u003e\u003ccode\u003ec91b041\u003c/code\u003e\u003c/a\u003e docs: Update README (GitHub Actions Bot)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/e349265cb37f3ebc837e178e48a725bb782bd870\"\u003e\u003ccode\u003ee349265\u003c/code\u003e\u003c/a\u003e docs: clarify semver strings in rule deprecation objects (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20885\"\u003e#20885\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eChores\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/b0e466b6ab47bfc7de43d8de0c315d8ee83aa584\"\u003e\u003ccode\u003eb0e466b\u003c/code\u003e\u003c/a\u003e test: add \u003ccode\u003edata\u003c/code\u003e property to invalid tests cases for rules (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20924\"\u003e#20924\u003c/a\u003e) (Tanuj Kanti)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/f78838bc4c86d487e1bcc7cede260c4467721c46\"\u003e\u003ccode\u003ef78838b\u003c/code\u003e\u003c/a\u003e test: add CodePath type coverage (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20904\"\u003e#20904\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/1daa4bd734b79a62e317d0394394a6b38cff49f9\"\u003e\u003ccode\u003e1daa4bd\u003c/code\u003e\u003c/a\u003e chore: update \u003ccode\u003eeslint-plugin-eslint-comments\u003c/code\u003e test data to latest commit (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20922\"\u003e#20922\u003c/a\u003e) (Francesco Trotta)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/002942ce988ea28b78e0a2f3b074081e638b552c\"\u003e\u003ccode\u003e002942c\u003c/code\u003e\u003c/a\u003e ci: declare contents:read on update-readme workflow (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20919\"\u003e#20919\u003c/a\u003e) (Arpit Jain)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/64bca24e7bed35bc3c864fc625cb2d89eca87d5b\"\u003e\u003ccode\u003e64bca24\u003c/code\u003e\u003c/a\u003e chore: update ecosystem plugins (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20912\"\u003e#20912\u003c/a\u003e) (ESLint Bot)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/6d7c832950d5e92499d88e504080661f888f8f56\"\u003e\u003ccode\u003e6d7c832\u003c/code\u003e\u003c/a\u003e chore: ignore fflate updates in renovate (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20908\"\u003e#20908\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/b2c86382164d87c6203b78d52068cd6a2a6ffe30\"\u003e\u003ccode\u003eb2c8638\u003c/code\u003e\u003c/a\u003e ci: bump pnpm/action-setup from 6.0.7 to 6.0.8 (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20889\"\u003e#20889\u003c/a\u003e) (dependabot[bot])\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/a9b8d7f74c50211701cfc49710fa541fd91b2aa5\"\u003e\u003ccode\u003ea9b8d7f\u003c/code\u003e\u003c/a\u003e chore: increase maxBuffer for ecosystem tests (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20881\"\u003e#20881\u003c/a\u003e) (sethamus)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/b702ead5e1ed7cb9f28238a454797662efb37396\"\u003e\u003ccode\u003eb702ead\u003c/code\u003e\u003c/a\u003e chore: update ecosystem update PR settings (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20884\"\u003e#20884\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/507f60e9a78c9a902bc8759f066ae17a1ea6cd81\"\u003e\u003ccode\u003e507f60e\u003c/code\u003e\u003c/a\u003e chore: update ecosystem plugins (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20882\"\u003e#20882\u003c/a\u003e) (ESLint Bot)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/92f5c5bb6bf3a5d167c8ee53a430833410295c6d\"\u003e\u003ccode\u003e92f5c5b\u003c/code\u003e\u003c/a\u003e test: add unit test for message-count (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20878\"\u003e#20878\u003c/a\u003e) (kuldeep kumar)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/df321080af5758b1fa25e4b9a40e26135642dd6e\"\u003e\u003ccode\u003edf32108\u003c/code\u003e\u003c/a\u003e chore: add \u003ccode\u003e@​eslint/markdown\u003c/code\u003e and typescript-eslint ecosystem tests (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20837\"\u003e#20837\u003c/a\u003e) (sethamus)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/327f91d36aa49f2a50ded931d841a16374fd875f\"\u003e\u003ccode\u003e327f91d\u003c/code\u003e\u003c/a\u003e chore: use includeIgnoreFile internally (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20876\"\u003e#20876\u003c/a\u003e) (Kirk Waiblinger)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/f0dc4bd893fb3a9f44e4ddc3ad7063ffb0beacd3\"\u003e\u003ccode\u003ef0dc4bd\u003c/code\u003e\u003c/a\u003e chore: pin fflate@0.8.2 (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20877\"\u003e#20877\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/0f4bd257a67a082b756de746d9e0c4842ab764ca\"\u003e\u003ccode\u003e0f4bd25\u003c/code\u003e\u003c/a\u003e ci: run Discord alert for ecosystem test failures (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20873\"\u003e#20873\u003c/a\u003e) (Copilot)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev10.4.0\u003c/h2\u003e\n\u003ch2\u003eFeatures\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/1a45ec596af1dd5f880e6874cb8f24dafb6a7ecf\"\u003e\u003ccode\u003e1a45ec5\u003c/code\u003e\u003c/a\u003e feat: check sequence expressions in \u003ccode\u003efor-direction\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20701\"\u003e#20701\u003c/a\u003e) (kuldeep kumar)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/450040bd89b989b3531824c6be45feb5fe3d936b\"\u003e\u003ccode\u003e450040b\u003c/code\u003e\u003c/a\u003e feat: add \u003ccode\u003eincludeIgnoreFile()\u003c/code\u003e to \u003ccode\u003eeslint/config\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20735\"\u003e#20735\u003c/a\u003e) (Kirk Waiblinger)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eBug Fixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/544c0c3da589166ad8e5d634f35d3d06701c57be\"\u003e\u003ccode\u003e544c0c3\u003c/code\u003e\u003c/a\u003e fix: escape code path DOT labels in debug output (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20866\"\u003e#20866\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/6799431203f2579632d0870f98ba132067f4040c\"\u003e\u003ccode\u003e6799431\u003c/code\u003e\u003c/a\u003e fix: update dependency \u003ccode\u003e@​eslint/config-helpers\u003c/code\u003e to ^0.6.0 (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20850\"\u003e#20850\u003c/a\u003e) (renovate[bot])\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/f078fef5005dceb14fc162aab7c7200e027688dd\"\u003e\u003ccode\u003ef078fef\u003c/code\u003e\u003c/a\u003e fix: handle non-array deprecated rule replacements (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20825\"\u003e#20825\u003c/a\u003e) (xbinaryx)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eDocumentation\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/7e52a7151fb92eec0e0f67fe4e5ddbd1ccce796f\"\u003e\u003ccode\u003e7e52a71\u003c/code\u003e\u003c/a\u003e docs: add mention of \u003ccode\u003e@eslint-react/eslint-plugin\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20869\"\u003e#20869\u003c/a\u003e) (Pavel)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/db3468ba746407d7f286f18f7ea9db6df0e3bc08\"\u003e\u003ccode\u003edb3468b\u003c/code\u003e\u003c/a\u003e docs: tweak wording around ambiguous CJS-vs-ESM config (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20865\"\u003e#20865\u003c/a\u003e) (Kirk Waiblinger)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/90846643ec6e97d447ae0d831fabe6d17b0a998a\"\u003e\u003ccode\u003e9084664\u003c/code\u003e\u003c/a\u003e docs: Update README (GitHub Actions Bot)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/9cc73875046e3c4b8313644cbb1e99e26b36bd3f\"\u003e\u003ccode\u003e9cc7387\u003c/code\u003e\u003c/a\u003e docs: Update README (GitHub Actions Bot)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/3d7b5484407403817aa9071a394d336d8ea96eb5\"\u003e\u003ccode\u003e3d7b548\u003c/code\u003e\u003c/a\u003e docs: Update README (GitHub Actions Bot)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/191ec3c0a3f94ce0f110df761f0b2b8949011ccb\"\u003e\u003ccode\u003e191ec3c\u003c/code\u003e\u003c/a\u003e docs: Update README (GitHub Actions Bot)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/4a3d15a99c452c4db2fd56b577fa7597e98ab0c2\"\u003e\u003ccode\u003e4a3d15a\u003c/code\u003e\u003c/a\u003e 10.4.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/43e7e2bdc5c6cacc535446b7d23c10f780384ba8\"\u003e\u003ccode\u003e43e7e2b\u003c/code\u003e\u003c/a\u003e Build: changelog update for 10.4.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/e557467db7496220eebcbe2ac5ea6d38c12bb1ec\"\u003e\u003ccode\u003ee557467\u003c/code\u003e\u003c/a\u003e fix: update \u003ccode\u003e@eslint/plugin-kit\u003c/code\u003e version to 0.7.2 (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20930\"\u003e#20930\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/b0e466b6ab47bfc7de43d8de0c315d8ee83aa584\"\u003e\u003ccode\u003eb0e466b\u003c/code\u003e\u003c/a\u003e test: add \u003ccode\u003edata\u003c/code\u003e property to invalid tests cases for rules (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20924\"\u003e#20924\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/d4ce898796ca22c3b96aa70d3014cb85f4bac1cd\"\u003e\u003ccode\u003ed4ce898\u003c/code\u003e\u003c/a\u003e fix: propagate failures from delegated commands (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20917\"\u003e#20917\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/f4f3507460bc016b5be979c05d2969793f570cbf\"\u003e\u003ccode\u003ef4f3507\u003c/code\u003e\u003c/a\u003e fix: prefer-arrow-callback invalid autofix with newline after \u003ccode\u003easync\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20916\"\u003e#20916\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/f78838bc4c86d487e1bcc7cede260c4467721c46\"\u003e\u003ccode\u003ef78838b\u003c/code\u003e\u003c/a\u003e test: add CodePath type coverage (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20904\"\u003e#20904\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/61b0add61ffc52665562be7bb96f526690a78b30\"\u003e\u003ccode\u003e61b0add\u003c/code\u003e\u003c/a\u003e docs: remove deprecated rule from related rules of \u003ccode\u003emax-params\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20921\"\u003e#20921\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/1daa4bd734b79a62e317d0394394a6b38cff49f9\"\u003e\u003ccode\u003e1daa4bd\u003c/code\u003e\u003c/a\u003e chore: update \u003ccode\u003eeslint-plugin-eslint-comments\u003c/code\u003e test data to latest commit (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20\"\u003e#20\u003c/a\u003e...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/002942ce988ea28b78e0a2f3b074081e638b552c\"\u003e\u003ccode\u003e002942c\u003c/code\u003e\u003c/a\u003e ci: declare contents:read on update-readme workflow (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20919\"\u003e#20919\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/eslint/eslint/compare/v9.39.2...v10.4.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `eslint-import-resolver-typescript` from 4.4.4 to 4.4.5\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/import-js/eslint-import-resolver-typescript/releases\"\u003eeslint-import-resolver-typescript's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev4.4.5\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/import-js/eslint-import-resolver-typescript/pull/473\"\u003e#473\u003c/a\u003e \u003ca href=\"https://github.com/import-js/eslint-import-resolver-typescript/commit/32c61abccf26bd2a2267f2e0e67d82e6f88d149a\"\u003e\u003ccode\u003e32c61ab\u003c/code\u003e\u003c/a\u003e Thanks \u003ca href=\"https://github.com/leey0818\"\u003e\u003ccode\u003e@​leey0818\u003c/code\u003e\u003c/a\u003e! - fix: check tsconfig matching before using resolver\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/import-js/eslint-import-resolver-typescript/blob/master/CHANGELOG.md\"\u003eeslint-import-resolver-typescript's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e4.4.5\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/import-js/eslint-import-resolver-typescript/pull/473\"\u003e#473\u003c/a\u003e \u003ca href=\"https://github.com/import-js/eslint-import-resolver-typescript/commit/32c61abccf26bd2a2267f2e0e67d82e6f88d149a\"\u003e\u003ccode\u003e32c61ab\u003c/code\u003e\u003c/a\u003e Thanks \u003ca href=\"https://github.com/leey0818\"\u003e\u003ccode\u003e@​leey0818\u003c/code\u003e\u003c/a\u003e! - fix: check tsconfig matching before using resolver\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/import-js/eslint-import-resolver-typescript/commit/724c47d8c08fa8ffa702c7a94ba53b367a4727fb\"\u003e\u003ccode\u003e724c47d\u003c/code\u003e\u003c/a\u003e chore: release eslint-import-resolver-typescript (\u003ca href=\"https://redirect.github.com/import-js/eslint-import-resolver-typescript/issues/480\"\u003e#480\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/import-js/eslint-import-resolver-typescript/commit/32c61abccf26bd2a2267f2e0e67d82e6f88d149a\"\u003e\u003ccode\u003e32c61ab\u003c/code\u003e\u003c/a\u003e fix: check tsconfig matching before using resolver (\u003ca href=\"https://redirect.github.com/import-js/eslint-import-resolver-typescript/issues/473\"\u003e#473\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/import-js/eslint-import-resolver-typescript/compare/v4.4.4...v4.4.5\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eMaintainer changes\u003c/summary\u003e\n\u003cp\u003eThis version was pushed to npm by \u003ca href=\"https://www.npmjs.com/~GitHub%20Actions\"\u003eGitHub Actions\u003c/a\u003e, a new releaser for eslint-import-resolver-typescript since your current version.\u003c/p\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `eslint-plugin-react-hooks` from 7.0.1 to 7.1.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/facebook/react/releases\"\u003eeslint-plugin-react-hooks's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eeslint-plugin-react-hooks@7.1.1 (April 17, 2026)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eNote:\u003c/strong\u003e 7.1.0 accidentally removed the \u003ccode\u003ecomponent-hook-factories\u003c/code\u003e rule, causing errors for users who referenced it in their ESLint config. This is now fixed.\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdd deprecated no-op \u003ccode\u003ecomponent-hook-factories\u003c/code\u003e rule for backwards compatibility. (\u003ca href=\"https://github.com/mofeiZ\"\u003e\u003ccode\u003e@​mofeiZ\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/36307\"\u003e#36307\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eeslint-plugin-react-hooks@7.1.0 (April 16, 2026)\u003c/h2\u003e\n\u003cp\u003eThis release adds ESLint v10 support, improves performance by skipping compilation for non-React files, and includes compiler lint improvements including better \u003ccode\u003eset-state-in-effect\u003c/code\u003e detection, improved ref validation, and more helpful error reporting.\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdd ESLint v10 support. (\u003ca href=\"https://github.com/azat-io\"\u003e\u003ccode\u003e@​azat-io\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/35720\"\u003e#35720\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSkip compilation for non-React files to improve performance. (\u003ca href=\"https://github.com/josephsavona\"\u003e\u003ccode\u003e@​josephsavona\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/35589\"\u003e#35589\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix exhaustive deps bug with Flow type casting. (\u003ca href=\"https://github.com/jorge-cab\"\u003e\u003ccode\u003e@​jorge-cab\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/35691\"\u003e#35691\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix \u003ccode\u003euseEffectEvent\u003c/code\u003e checks in component syntax. (\u003ca href=\"https://github.com/jbrown215\"\u003e\u003ccode\u003e@​jbrown215\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/35041\"\u003e#35041\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eImproved \u003ccode\u003eset-state-in-effect\u003c/code\u003e validation with fewer false negatives. (\u003ca href=\"https://github.com/jorge-cab\"\u003e\u003ccode\u003e@​jorge-cab\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/35134\"\u003e#35134\u003c/a\u003e, \u003ca href=\"https://github.com/josephsav...\n\n_Description has been truncated_","html_url":"https://github.com/AnandKg22/ReactStarter/pull/8","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/AnandKg22%2FReactStarter/issues/8","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/8/packages"},{"uuid":"4592501387","node_id":"PR_kwDOSvGKx87i32VZ","number":2,"state":"closed","title":"deps(deps): Bump the all-dependencies group across 1 directory with 68 updates","user":"dependabot[bot]","labels":[],"assignees":[],"locked":false,"comments_count":2,"pull_request":true,"closed_at":"2026-06-08T04:29:51.000Z","author_association":null,"state_reason":null,"created_at":"2026-06-04T22:09:42.000Z","updated_at":"2026-06-08T04:29:53.000Z","time_to_close":282009,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"deps(deps): Bump","group_name":"all-dependencies","update_count":68,"packages":[{"name":"@eslint-react/eslint-plugin","old_version":"2.13.0","new_version":"5.8.12","repository_url":"https://github.com/Rel1cx/eslint-react"},{"name":"@eslint/js","old_version":"9.39.2","new_version":"10.0.1","repository_url":"https://github.com/eslint/eslint"},{"name":"@typescript-eslint/eslint-plugin","old_version":"8.56.0","new_version":"8.60.1","repository_url":"https://github.com/typescript-eslint/typescript-eslint"},{"name":"@typescript-eslint/parser","old_version":"8.56.0","new_version":"8.60.1","repository_url":"https://github.com/typescript-eslint/typescript-eslint"},{"name":"eslint","old_version":"9.39.2","new_version":"10.4.1","repository_url":"https://github.com/eslint/eslint"},{"name":"eslint-import-resolver-typescript","old_version":"4.4.4","new_version":"4.4.5","repository_url":"https://github.com/import-js/eslint-import-resolver-typescript"},{"name":"eslint-plugin-react-hooks","old_version":"7.0.1","new_version":"7.1.1","repository_url":"https://github.com/facebook/react"},{"name":"globals","old_version":"17.3.0","new_version":"17.6.0","repository_url":"https://github.com/sindresorhus/globals"},{"name":"graphql","old_version":"16.12.0","new_version":"16.14.1","repository_url":"https://github.com/graphql/graphql-js"},{"name":"happy-dom","old_version":"20.6.2","new_version":"20.10.1","repository_url":"https://github.com/capricorn86/happy-dom"},{"name":"jiti","old_version":"2.6.1","new_version":"2.7.0","repository_url":"https://github.com/unjs/jiti"},{"name":"lint-staged","old_version":"16.2.7","new_version":"17.0.7","repository_url":"https://github.com/lint-staged/lint-staged"},{"name":"mermaid","old_version":"11.12.3","new_version":"11.15.0","repository_url":"https://github.com/mermaid-js/mermaid"},{"name":"prettier","old_version":"3.8.1","new_version":"3.8.3","repository_url":"https://github.com/prettier/prettier"},{"name":"react","old_version":"19.2.4","new_version":"19.2.7","repository_url":"https://github.com/facebook/react"},{"name":"@types/react","old_version":"19.2.14","new_version":"19.2.16","repository_url":"https://github.com/DefinitelyTyped/DefinitelyTyped"},{"name":"typescript","old_version":"5.9.3","new_version":"6.0.3","repository_url":"https://github.com/microsoft/TypeScript"},{"name":"typescript-eslint","old_version":"8.56.0","new_version":"8.60.1","repository_url":"https://github.com/typescript-eslint/typescript-eslint"},{"name":"typescript-language-server","old_version":"5.1.3","new_version":"5.3.0","repository_url":"https://github.com/typescript-language-server/typescript-language-server"},{"name":"vite","old_version":"7.3.1","new_version":"8.0.16","repository_url":"https://github.com/vitejs/vite"},{"name":"vitepress","old_version":"2.0.0-alpha.16","new_version":"2.0.0-alpha.17","repository_url":"https://github.com/vuejs/vitepress"},{"name":"vitepress-plugin-llms","old_version":"1.11.0","new_version":"1.13.1","repository_url":"https://github.com/okineadev/vitepress-plugin-llms"},{"name":"vitest","old_version":"4.0.18","new_version":"4.1.8","repository_url":"https://github.com/vitest-dev/vitest"},{"name":"wrangler","old_version":"4.66.0","new_version":"4.98.0","repository_url":"https://github.com/cloudflare/workers-sdk"},{"name":"@ai-sdk/openai","old_version":"3.0.29","new_version":"3.0.67","repository_url":"https://github.com/vercel/ai"},{"name":"@better-auth/passkey","old_version":"1.4.18","new_version":"1.6.14","repository_url":"https://github.com/better-auth/better-auth"},{"name":"@better-auth/stripe","old_version":"1.4.18","new_version":"1.6.14","repository_url":"https://github.com/better-auth/better-auth"},{"name":"@trpc/server","old_version":"11.10.0","new_version":"11.17.0","repository_url":"https://github.com/trpc/trpc"},{"name":"ai","old_version":"6.0.91","new_version":"6.0.196","repository_url":"https://github.com/vercel/ai"},{"name":"better-auth","old_version":"1.4.18","new_version":"1.6.14","repository_url":"https://github.com/better-auth/better-auth"},{"name":"drizzle-orm","old_version":"0.45.1","new_version":"0.45.2","repository_url":"https://github.com/drizzle-team/drizzle-orm"},{"name":"postgres","old_version":"3.4.8","new_version":"3.4.9","repository_url":"https://github.com/porsager/postgres"},{"name":"resend","old_version":"6.9.2","new_version":"6.12.4","repository_url":"https://github.com/resend/resend-node"},{"name":"stripe","old_version":"20.3.1","new_version":"22.2.0","repository_url":"https://github.com/stripe/stripe-node"},{"name":"@cloudflare/workers-types","old_version":"4.20260218.0","new_version":"4.20260604.1","repository_url":"https://github.com/cloudflare/workerd"},{"name":"@types/bun","old_version":"1.3.9","new_version":"1.3.14","repository_url":"https://github.com/DefinitelyTyped/DefinitelyTyped"},{"name":"hono","old_version":"4.11.10","new_version":"4.12.23","repository_url":"https://github.com/honojs/hono"},{"name":"zod","old_version":"4.3.6","new_version":"4.4.3","repository_url":"https://github.com/colinhacks/zod"},{"name":"@tanstack/react-query","old_version":"5.90.21","new_version":"5.101.0","repository_url":"https://github.com/TanStack/query"},{"name":"@tanstack/react-router","old_version":"1.161.1","new_version":"1.170.11","repository_url":"https://github.com/TanStack/router"},{"name":"@trpc/client","old_version":"11.10.0","new_version":"11.17.0","repository_url":"https://github.com/trpc/trpc"},{"name":"@trpc/tanstack-react-query","old_version":"11.10.0","new_version":"11.17.0","repository_url":"https://github.com/trpc/trpc"},{"name":"jotai","old_version":"2.17.1","new_version":"2.20.0","repository_url":"https://github.com/pmndrs/jotai"},{"name":"jotai-effect","old_version":"2.2.3","new_version":"2.3.1","repository_url":"https://github.com/jotaijs/jotai-effect"},{"name":"lucide-react","old_version":"0.574.0","new_version":"1.17.0","repository_url":"https://github.com/lucide-icons/lucide"},{"name":"react-dom","old_version":"19.2.4","new_version":"19.2.7","repository_url":"https://github.com/facebook/react"},{"name":"react-error-boundary","old_version":"6.1.1","new_version":"6.1.2","repository_url":"https://github.com/bvaughn/react-error-boundary"},{"name":"tailwind-merge","old_version":"3.4.1","new_version":"3.6.0","repository_url":"https://github.com/dcastil/tailwind-merge"},{"name":"@tailwindcss/postcss","old_version":"4.2.0","new_version":"4.3.0","repository_url":"https://github.com/tailwindlabs/tailwindcss"},{"name":"@tanstack/react-query-devtools","old_version":"5.91.3","new_version":"5.101.0","repository_url":"https://github.com/TanStack/query"},{"name":"@tanstack/react-router-devtools","old_version":"1.161.1","new_version":"1.167.0","repository_url":"https://github.com/TanStack/router"},{"name":"@tanstack/router-plugin","old_version":"1.161.1","new_version":"1.168.14","repository_url":"https://github.com/TanStack/router"},{"name":"@types/node","old_version":"25.2.3","new_version":"25.9.1","repository_url":"https://github.com/DefinitelyTyped/DefinitelyTyped"},{"name":"@vitejs/plugin-react","old_version":"5.1.4","new_version":"6.0.2","repository_url":"https://github.com/vitejs/vite-plugin-react"},{"name":"@vitejs/plugin-react-swc","old_version":"4.2.3","new_version":"4.3.1","repository_url":"https://github.com/vitejs/vite-plugin-react"},{"name":"autoprefixer","old_version":"10.4.24","new_version":"10.5.0","repository_url":"https://github.com/postcss/autoprefixer"},{"name":"globby","old_version":"16.1.1","new_version":"16.2.0","repository_url":"https://github.com/sindresorhus/globby"},{"name":"@react-email/components","old_version":"1.0.8","new_version":"1.0.12","repository_url":"https://github.com/resend/react-email"},{"name":"@react-email/render","old_version":"2.0.4","new_version":"2.0.8","repository_url":"https://github.com/resend/react-email"},{"name":"@react-email/preview-server","old_version":"5.2.8","new_version":"5.2.10","repository_url":"https://github.com/resend/react-email"},{"name":"react-email","old_version":"5.2.8","new_version":"6.5.0","repository_url":"https://github.com/resend/react-email"},{"name":"@astrojs/react","old_version":"4.4.2","new_version":"5.0.7","repository_url":"https://github.com/withastro/astro"},{"name":"dotenv","old_version":"17.3.1","new_version":"17.4.2","repository_url":"https://github.com/motdotla/dotenv"},{"name":"drizzle-kit","old_version":"0.31.9","new_version":"0.31.10","repository_url":"https://github.com/drizzle-team/drizzle-orm"},{"name":"@modelcontextprotocol/sdk","old_version":"1.26.0","new_version":"1.29.0","repository_url":"https://github.com/modelcontextprotocol/typescript-sdk"},{"name":"got","old_version":"14.6.6","new_version":"15.0.5","repository_url":"https://github.com/sindresorhus/got"}],"path":null,"ecosystem":"npm"},"body":"Bumps the all-dependencies group with 66 updates in the / directory:\n\n| Package | From | To |\n| --- | --- | --- |\n| [@eslint-react/eslint-plugin](https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin) | `2.13.0` | `5.8.12` |\n| [@eslint/js](https://github.com/eslint/eslint/tree/HEAD/packages/js) | `9.39.2` | `10.0.1` |\n| [@typescript-eslint/eslint-plugin](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin) | `8.56.0` | `8.60.1` |\n| [@typescript-eslint/parser](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/parser) | `8.56.0` | `8.60.1` |\n| [eslint](https://github.com/eslint/eslint) | `9.39.2` | `10.4.1` |\n| [eslint-import-resolver-typescript](https://github.com/import-js/eslint-import-resolver-typescript) | `4.4.4` | `4.4.5` |\n| [eslint-plugin-react-hooks](https://github.com/facebook/react/tree/HEAD/packages/eslint-plugin-react-hooks) | `7.0.1` | `7.1.1` |\n| [globals](https://github.com/sindresorhus/globals) | `17.3.0` | `17.6.0` |\n| [graphql](https://github.com/graphql/graphql-js) | `16.12.0` | `16.14.1` |\n| [happy-dom](https://github.com/capricorn86/happy-dom) | `20.6.2` | `20.10.1` |\n| [jiti](https://github.com/unjs/jiti) | `2.6.1` | `2.7.0` |\n| [lint-staged](https://github.com/lint-staged/lint-staged) | `16.2.7` | `17.0.7` |\n| [mermaid](https://github.com/mermaid-js/mermaid) | `11.12.3` | `11.15.0` |\n| [prettier](https://github.com/prettier/prettier) | `3.8.1` | `3.8.3` |\n| [react](https://github.com/facebook/react/tree/HEAD/packages/react) | `19.2.4` | `19.2.7` |\n| [@types/react](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/react) | `19.2.14` | `19.2.16` |\n| [typescript](https://github.com/microsoft/TypeScript) | `5.9.3` | `6.0.3` |\n| [typescript-eslint](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/typescript-eslint) | `8.56.0` | `8.60.1` |\n| [typescript-language-server](https://github.com/typescript-language-server/typescript-language-server) | `5.1.3` | `5.3.0` |\n| [vite](https://github.com/vitejs/vite/tree/HEAD/packages/vite) | `7.3.1` | `8.0.16` |\n| [vitepress](https://github.com/vuejs/vitepress) | `2.0.0-alpha.16` | `2.0.0-alpha.17` |\n| [vitepress-plugin-llms](https://github.com/okineadev/vitepress-plugin-llms) | `1.11.0` | `1.13.1` |\n| [vitest](https://github.com/vitest-dev/vitest/tree/HEAD/packages/vitest) | `4.0.18` | `4.1.8` |\n| [wrangler](https://github.com/cloudflare/workers-sdk/tree/HEAD/packages/wrangler) | `4.66.0` | `4.98.0` |\n| [@ai-sdk/openai](https://github.com/vercel/ai/tree/HEAD/packages/openai) | `3.0.29` | `3.0.67` |\n| [@better-auth/passkey](https://github.com/better-auth/better-auth/tree/HEAD/packages/passkey) | `1.4.18` | `1.6.14` |\n| [@better-auth/stripe](https://github.com/better-auth/better-auth/tree/HEAD/packages/stripe) | `1.4.18` | `1.6.14` |\n| [@trpc/server](https://github.com/trpc/trpc/tree/HEAD/packages/server) | `11.10.0` | `11.17.0` |\n| [ai](https://github.com/vercel/ai/tree/HEAD/packages/ai) | `6.0.91` | `6.0.196` |\n| [better-auth](https://github.com/better-auth/better-auth/tree/HEAD/packages/better-auth) | `1.4.18` | `1.6.14` |\n| [drizzle-orm](https://github.com/drizzle-team/drizzle-orm) | `0.45.1` | `0.45.2` |\n| [postgres](https://github.com/porsager/postgres) | `3.4.8` | `3.4.9` |\n| [resend](https://github.com/resend/resend-node) | `6.9.2` | `6.12.4` |\n| [stripe](https://github.com/stripe/stripe-node) | `20.3.1` | `22.2.0` |\n| [@cloudflare/workers-types](https://github.com/cloudflare/workerd) | `4.20260218.0` | `4.20260604.1` |\n| [@types/bun](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/bun) | `1.3.9` | `1.3.14` |\n| [hono](https://github.com/honojs/hono) | `4.11.10` | `4.12.23` |\n| [zod](https://github.com/colinhacks/zod) | `4.3.6` | `4.4.3` |\n| [@tanstack/react-query](https://github.com/TanStack/query/tree/HEAD/packages/react-query) | `5.90.21` | `5.101.0` |\n| [@tanstack/react-router](https://github.com/TanStack/router/tree/HEAD/packages/react-router) | `1.161.1` | `1.170.11` |\n| [@trpc/client](https://github.com/trpc/trpc/tree/HEAD/packages/client) | `11.10.0` | `11.17.0` |\n| [@trpc/tanstack-react-query](https://github.com/trpc/trpc/tree/HEAD/packages/tanstack-react-query) | `11.10.0` | `11.17.0` |\n| [jotai](https://github.com/pmndrs/jotai) | `2.17.1` | `2.20.0` |\n| [jotai-effect](https://github.com/jotaijs/jotai-effect) | `2.2.3` | `2.3.1` |\n| [lucide-react](https://github.com/lucide-icons/lucide/tree/HEAD/packages/lucide-react) | `0.574.0` | `1.17.0` |\n| [react-dom](https://github.com/facebook/react/tree/HEAD/packages/react-dom) | `19.2.4` | `19.2.7` |\n| [react-error-boundary](https://github.com/bvaughn/react-error-boundary) | `6.1.1` | `6.1.2` |\n| [tailwind-merge](https://github.com/dcastil/tailwind-merge) | `3.4.1` | `3.6.0` |\n| [@tailwindcss/postcss](https://github.com/tailwindlabs/tailwindcss/tree/HEAD/packages/@tailwindcss-postcss) | `4.2.0` | `4.3.0` |\n| [@tanstack/react-query-devtools](https://github.com/TanStack/query/tree/HEAD/packages/react-query-devtools) | `5.91.3` | `5.101.0` |\n| [@tanstack/react-router-devtools](https://github.com/TanStack/router/tree/HEAD/packages/react-router-devtools) | `1.161.1` | `1.167.0` |\n| [@tanstack/router-plugin](https://github.com/TanStack/router/tree/HEAD/packages/router-plugin) | `1.161.1` | `1.168.14` |\n| [@types/node](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/node) | `25.2.3` | `25.9.1` |\n| [@vitejs/plugin-react](https://github.com/vitejs/vite-plugin-react/tree/HEAD/packages/plugin-react) | `5.1.4` | `6.0.2` |\n| [@vitejs/plugin-react-swc](https://github.com/vitejs/vite-plugin-react/tree/HEAD/packages/plugin-react-swc) | `4.2.3` | `4.3.1` |\n| [autoprefixer](https://github.com/postcss/autoprefixer) | `10.4.24` | `10.5.0` |\n| [globby](https://github.com/sindresorhus/globby) | `16.1.1` | `16.2.0` |\n| [@react-email/components](https://github.com/resend/react-email/tree/HEAD/packages/components) | `1.0.8` | `1.0.12` |\n| [@react-email/render](https://github.com/resend/react-email/tree/HEAD/packages/render) | `2.0.4` | `2.0.8` |\n| [@react-email/preview-server](https://github.com/resend/react-email/tree/HEAD/packages/preview-server) | `5.2.8` | `5.2.10` |\n| [react-email](https://github.com/resend/react-email/tree/HEAD/packages/react-email) | `5.2.8` | `6.5.0` |\n| [@astrojs/react](https://github.com/withastro/astro/tree/HEAD/packages/integrations/react) | `4.4.2` | `5.0.7` |\n| [dotenv](https://github.com/motdotla/dotenv) | `17.3.1` | `17.4.2` |\n| [drizzle-kit](https://github.com/drizzle-team/drizzle-orm) | `0.31.9` | `0.31.10` |\n| [@modelcontextprotocol/sdk](https://github.com/modelcontextprotocol/typescript-sdk) | `1.26.0` | `1.29.0` |\n| [got](https://github.com/sindresorhus/got) | `14.6.6` | `15.0.5` |\n\n\nUpdates `@eslint-react/eslint-plugin` from 2.13.0 to 5.8.12\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/Rel1cx/eslint-react/releases\"\u003e@​eslint-react/eslint-plugin's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev5.8.12 (2026-06-05)\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003ch3\u003e🪄 Improvements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003e\u003ccode\u003ejsx\u003c/code\u003e\u003c/strong\u003e: Aligned \u003ccode\u003egetChildren\u003c/code\u003e with Babel's \u003ccode\u003ebuildChildren\u003c/code\u003e and \u003ccode\u003ecleanJSXElementLiteralChild\u003c/code\u003e patterns, improving whitespace handling accuracy in \u003ccode\u003ereact-jsx/no-useless-fragment\u003c/code\u003e and \u003ccode\u003ereact-jsx/no-children-prop\u003c/code\u003e rules. Migrated child text cleanup to \u003ccode\u003e@eslint-react/jsx\u003c/code\u003e utilities and removed local \u003ccode\u003elib.ts\u003c/code\u003e helpers. (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1836\"\u003e#1836\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003e\u003ccode\u003ejsx\u003c/code\u003e\u003c/strong\u003e: Removed \u003ccode\u003eisPaddingWhitespace\u003c/code\u003e API and added whitespace boundary tests for \u003ccode\u003ereact-jsx/no-useless-fragment\u003c/code\u003e and \u003ccode\u003ereact-dom/no-dangerously-set-innerhtml-with-children\u003c/code\u003e rules. (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1837\"\u003e#1837\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003e\u003ccode\u003ejsx\u003c/code\u003e\u003c/strong\u003e: Renamed \u003ccode\u003ecleanJSXTextValue\u003c/code\u003e to \u003ccode\u003ecollapseMultilineText\u003c/code\u003e in the public API and updated \u003ccode\u003ereact-jsx/no-useless-fragment\u003c/code\u003e to use the new name. (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1838\"\u003e#1838\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e📝 Documentation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eWebsite\u003c/strong\u003e: Expanded the Brand Assets page with an icons section and formatted file names as inline code. (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1834\"\u003e#1834\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🏗️ Internal\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eWebsite\u003c/strong\u003e: Added \u003ccode\u003escripts/generate-website-icons.py\u003c/code\u003e for automated icon generation and refined logo geometry across all website assets. (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1833\"\u003e#1833\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eDeps\u003c/strong\u003e: Bumped \u003ccode\u003eimport-integrity-lint\u003c/code\u003e and \u003ccode\u003eenhanced-resolve\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eDeps\u003c/strong\u003e: Bumped \u003ccode\u003eaxios\u003c/code\u003e to \u003ccode\u003e^1.17.0\u003c/code\u003e and \u003ccode\u003eshiki\u003c/code\u003e to \u003ccode\u003e4.2.0\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eDeps\u003c/strong\u003e: Updated pnpm lockfiles for \u003ccode\u003edompurify\u003c/code\u003e and \u003ccode\u003erolldown\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003ePer-rule CHANGELOGs\u003c/strong\u003e: Updated rule-level changelogs for \u003ccode\u003eno-useless-fragment\u003c/code\u003e, \u003ccode\u003eno-children-prop\u003c/code\u003e, and \u003ccode\u003eno-dangerously-set-innerhtml-with-children\u003c/code\u003e. (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1836\"\u003e#1836\u003c/a\u003e, \u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1837\"\u003e#1837\u003c/a\u003e, \u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1838\"\u003e#1838\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/Rel1cx/eslint-react/compare/v5.8.11...v5.8.12\"\u003ehttps://github.com/Rel1cx/eslint-react/compare/v5.8.11...v5.8.12\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003eAttestation\u003c/h2\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/attestations/29936186\"\u003ehttps://github.com/Rel1cx/eslint-react/attestations/29936186\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev5.8.11 (2026-06-04)\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003ch3\u003e📝 Documentation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eWebsite\u003c/strong\u003e: Added a new \u003cstrong\u003eBrand Assets\u003c/strong\u003e page and updated Meta legal name (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1832\"\u003e#1832\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🏗️ Internal\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eReact\u003c/strong\u003e: Updated default React fallback version to \u003ccode\u003e19.2.7\u003c/code\u003e (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1827\"\u003e#1827\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eAssets\u003c/strong\u003e: Recreated logo with an open-source workflow, removing reliance on SVG assets exported by Amadine (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1831\"\u003e#1831\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eWebsite\u003c/strong\u003e: Removed \u003ccode\u003e@fontsource/iosevka-aile\u003c/code\u003e and switched to system font fallbacks.\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eDeps\u003c/strong\u003e: Bumped TypeScript to \u003ccode\u003e6.0.3\u003c/code\u003e (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1828\"\u003e#1828\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eDeps\u003c/strong\u003e: Patch bumped \u003ccode\u003e@typescript-eslint/*\u003c/code\u003e to \u003ccode\u003e8.60.1\u003c/code\u003e, \u003ccode\u003ereact\u003c/code\u003e / \u003ccode\u003ereact-dom\u003c/code\u003e to \u003ccode\u003e19.2.7\u003c/code\u003e, \u003ccode\u003enext\u003c/code\u003e to \u003ccode\u003e16.2.7\u003c/code\u003e, and \u003ccode\u003e@types/react\u003c/code\u003e to \u003ccode\u003e19.2.16\u003c/code\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/Rel1cx/eslint-react/compare/v5.8.10...v5.8.11\"\u003ehttps://github.com/Rel1cx/eslint-react/compare/v5.8.10...v5.8.11\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003eAttestation\u003c/h2\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/Rel1cx/eslint-react/blob/main/CHANGELOG.md\"\u003e@​eslint-react/eslint-plugin's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev5.8.12 (2026-06-05)\u003c/h2\u003e\n\u003ch3\u003e🪄 Improvements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003e\u003ccode\u003ejsx\u003c/code\u003e\u003c/strong\u003e: Aligned \u003ccode\u003egetChildren\u003c/code\u003e with Babel's \u003ccode\u003ebuildChildren\u003c/code\u003e and \u003ccode\u003ecleanJSXElementLiteralChild\u003c/code\u003e patterns, improving whitespace handling accuracy in \u003ccode\u003ereact-jsx/no-useless-fragment\u003c/code\u003e and \u003ccode\u003ereact-jsx/no-children-prop\u003c/code\u003e rules. Migrated child text cleanup to \u003ccode\u003e@eslint-react/jsx\u003c/code\u003e utilities and removed local \u003ccode\u003elib.ts\u003c/code\u003e helpers. (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1836\"\u003e#1836\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003e\u003ccode\u003ejsx\u003c/code\u003e\u003c/strong\u003e: Removed \u003ccode\u003eisPaddingWhitespace\u003c/code\u003e API and added whitespace boundary tests for \u003ccode\u003ereact-jsx/no-useless-fragment\u003c/code\u003e and \u003ccode\u003ereact-dom/no-dangerously-set-innerhtml-with-children\u003c/code\u003e rules. (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1837\"\u003e#1837\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003e\u003ccode\u003ejsx\u003c/code\u003e\u003c/strong\u003e: Renamed \u003ccode\u003ecleanJSXTextValue\u003c/code\u003e to \u003ccode\u003ecollapseMultilineText\u003c/code\u003e in the public API and updated \u003ccode\u003ereact-jsx/no-useless-fragment\u003c/code\u003e to use the new name. (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1838\"\u003e#1838\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e📝 Documentation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eWebsite\u003c/strong\u003e: Expanded the Brand Assets page with an icons section and formatted file names as inline code. (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1834\"\u003e#1834\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🏗️ Internal\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eWebsite\u003c/strong\u003e: Added \u003ccode\u003escripts/generate-website-icons.py\u003c/code\u003e for automated icon generation and refined logo geometry across all website assets. (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1833\"\u003e#1833\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eDeps\u003c/strong\u003e: Bumped \u003ccode\u003eimport-integrity-lint\u003c/code\u003e and \u003ccode\u003eenhanced-resolve\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eDeps\u003c/strong\u003e: Bumped \u003ccode\u003eaxios\u003c/code\u003e to \u003ccode\u003e^1.17.0\u003c/code\u003e and \u003ccode\u003eshiki\u003c/code\u003e to \u003ccode\u003e4.2.0\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eDeps\u003c/strong\u003e: Updated pnpm lockfiles for \u003ccode\u003edompurify\u003c/code\u003e and \u003ccode\u003erolldown\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003ePer-rule CHANGELOGs\u003c/strong\u003e: Updated rule-level changelogs for \u003ccode\u003eno-useless-fragment\u003c/code\u003e, \u003ccode\u003eno-children-prop\u003c/code\u003e, and \u003ccode\u003eno-dangerously-set-innerhtml-with-children\u003c/code\u003e. (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1836\"\u003e#1836\u003c/a\u003e, \u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1837\"\u003e#1837\u003c/a\u003e, \u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1838\"\u003e#1838\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/Rel1cx/eslint-react/compare/v5.8.11...v5.8.12\"\u003ehttps://github.com/Rel1cx/eslint-react/compare/v5.8.11...v5.8.12\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev5.8.11 (2026-06-04)\u003c/h2\u003e\n\u003ch3\u003e📝 Documentation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eWebsite\u003c/strong\u003e: Added a new \u003cstrong\u003eBrand Assets\u003c/strong\u003e page and updated Meta legal name (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1832\"\u003e#1832\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🏗️ Internal\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eReact\u003c/strong\u003e: Updated default React fallback version to \u003ccode\u003e19.2.7\u003c/code\u003e (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1827\"\u003e#1827\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eAssets\u003c/strong\u003e: Recreated logo with an open-source workflow, removing reliance on SVG assets exported by Amadine (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1831\"\u003e#1831\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eWebsite\u003c/strong\u003e: Removed \u003ccode\u003e@fontsource/iosevka-aile\u003c/code\u003e and switched to system font fallbacks.\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eDeps\u003c/strong\u003e: Bumped TypeScript to \u003ccode\u003e6.0.3\u003c/code\u003e (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1828\"\u003e#1828\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eDeps\u003c/strong\u003e: Patch bumped \u003ccode\u003e@typescript-eslint/*\u003c/code\u003e to \u003ccode\u003e8.60.1\u003c/code\u003e, \u003ccode\u003ereact\u003c/code\u003e / \u003ccode\u003ereact-dom\u003c/code\u003e to \u003ccode\u003e19.2.7\u003c/code\u003e, \u003ccode\u003enext\u003c/code\u003e to \u003ccode\u003e16.2.7\u003c/code\u003e, and \u003ccode\u003e@types/react\u003c/code\u003e to \u003ccode\u003e19.2.16\u003c/code\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/Rel1cx/eslint-react/compare/v5.8.10...v5.8.11\"\u003ehttps://github.com/Rel1cx/eslint-react/compare/v5.8.10...v5.8.11\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev5.8.10 (2026-06-02)\u003c/h2\u003e\n\u003ch3\u003e🐞 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003e\u003ccode\u003ereact-dom/no-unused-class-component-members\u003c/code\u003e\u003c/strong\u003e: Aligned preset details in rule documentation (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1825\"\u003e#1825\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003e\u003ccode\u003ereact-dom/no-unsafe-iframe-sandbox\u003c/code\u003e\u003c/strong\u003e, \u003cstrong\u003e\u003ccode\u003ereact-x/context-name\u003c/code\u003e\u003c/strong\u003e, \u003cstrong\u003e\u003ccode\u003ereact-x/id-name\u003c/code\u003e\u003c/strong\u003e, \u003cstrong\u003e\u003ccode\u003ereact-x/ref-name\u003c/code\u003e\u003c/strong\u003e, \u003cstrong\u003e\u003ccode\u003ereact-x/no-unnecessary-use-prefix\u003c/code\u003e\u003c/strong\u003e, \u003cstrong\u003e\u003ccode\u003ereact-x/no-string-style-prop\u003c/code\u003e\u003c/strong\u003e: Fixed missing or incorrect presets in rule documentation (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1826\"\u003e#1826\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e📝 Documentation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003e\u003ccode\u003enaming-convention\u003c/code\u003e\u003c/strong\u003e: Expanded examples and annotated Ok cases for \u003ccode\u003econtext-name\u003c/code\u003e, \u003ccode\u003eid-name\u003c/code\u003e, and \u003ccode\u003eref-name\u003c/code\u003e rules (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1819\"\u003e#1819\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eRecipes\u003c/strong\u003e: Refactored \u003ccode\u003eMyComponent\u003c/code\u003e examples to \u003ccode\u003eButton\u003c/code\u003e component in custom rules of props and function component definition recipes (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1823\"\u003e#1823\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eCommunity\u003c/strong\u003e: Added \u003ccode\u003eazat-io\u003c/code\u003e eslint-config to the community presets list.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/de7d846106872352dcbed7713541d99c03bd5bac\"\u003e\u003ccode\u003ede7d846\u003c/code\u003e\u003c/a\u003e release: 5.8.12\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/3498c34b904454c44425ed148107ef8f5184eecf\"\u003e\u003ccode\u003e3498c34\u003c/code\u003e\u003c/a\u003e release: 5.8.11\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/0ee67d6c2f890f20165ee540773b8eda37adf9cf\"\u003e\u003ccode\u003e0ee67d6\u003c/code\u003e\u003c/a\u003e docs: update Meta legal name and add brand assets page (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1832\"\u003e#1832\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/fcaca7f7d952e34324f008b243a9e2e21c35b4f4\"\u003e\u003ccode\u003efcaca7f\u003c/code\u003e\u003c/a\u003e chore: bump TypeScript to 6.0.3 (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1828\"\u003e#1828\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/4e240ae64faf857c6de9caef94b489dc59117046\"\u003e\u003ccode\u003e4e240ae\u003c/code\u003e\u003c/a\u003e chore(deps): bump patch dependencies\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/f023663af467095393b88290049a3ab5443a29d7\"\u003e\u003ccode\u003ef023663\u003c/code\u003e\u003c/a\u003e release: 5.8.10\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/ff9258dc21cd08546d20e8596d2de9e5387a6875\"\u003e\u003ccode\u003eff9258d\u003c/code\u003e\u003c/a\u003e release: 5.8.9\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/60e2514c793e3f7c06f6bb1f81ac6a20da014cfa\"\u003e\u003ccode\u003e60e2514\u003c/code\u003e\u003c/a\u003e release: 5.8.8\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/5b62a422ea43365ed2abab803a95f34cab47a335\"\u003e\u003ccode\u003e5b62a42\u003c/code\u003e\u003c/a\u003e Update baseline timestamp and bump eslint to 10.4.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/0e85aa0e12f2f1cfe0c0203908f0a4e32e4c8c06\"\u003e\u003ccode\u003e0e85aa0\u003c/code\u003e\u003c/a\u003e release: 5.8.7\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/Rel1cx/eslint-react/commits/v5.8.12/plugins/eslint-plugin\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@eslint/js` from 9.39.2 to 10.0.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/eslint/eslint/releases\"\u003e@​eslint/js's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev10.0.1\u003c/h2\u003e\n\u003ch2\u003eBug Fixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/c87d5bded54c5cf491eb04c24c9d09bbbd42c23e\"\u003e\u003ccode\u003ec87d5bd\u003c/code\u003e\u003c/a\u003e fix: update eslint (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20531\"\u003e#20531\u003c/a\u003e) (renovate[bot])\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/d84100115c14691691058f00779c94e74fca946a\"\u003e\u003ccode\u003ed841001\u003c/code\u003e\u003c/a\u003e fix: update \u003ccode\u003eminimatch\u003c/code\u003e to \u003ccode\u003e10.2.1\u003c/code\u003e to address security vulnerabilities (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20519\"\u003e#20519\u003c/a\u003e) (루밀LuMir)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/04c21475b3004904948f02049f2888b401d82c78\"\u003e\u003ccode\u003e04c2147\u003c/code\u003e\u003c/a\u003e fix: update error message for unused suppressions (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20496\"\u003e#20496\u003c/a\u003e) (fnx)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/38b089c1726feac0e31a31d47941bd99e29ce003\"\u003e\u003ccode\u003e38b089c\u003c/code\u003e\u003c/a\u003e fix: update dependency \u003ccode\u003e@​eslint/config-array\u003c/code\u003e to ^0.23.1 (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20484\"\u003e#20484\u003c/a\u003e) (renovate[bot])\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eDocumentation\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/5b3dbce50a1404a9f118afe810cefeee79388a2a\"\u003e\u003ccode\u003e5b3dbce\u003c/code\u003e\u003c/a\u003e docs: add AI acknowledgement section to templates (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20431\"\u003e#20431\u003c/a\u003e) (루밀LuMir)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/6f23076037d5879f20fb3be2ef094293b1e8d38c\"\u003e\u003ccode\u003e6f23076\u003c/code\u003e\u003c/a\u003e docs: toggle nav in no-JS mode (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20476\"\u003e#20476\u003c/a\u003e) (Tanuj Kanti)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/b69cfb32a16c5d5e9986390d484fae1d21e406f9\"\u003e\u003ccode\u003eb69cfb3\u003c/code\u003e\u003c/a\u003e docs: Update README (GitHub Actions Bot)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eChores\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/e5c281ffd038a3a7a3e5364db0b9378e0ad83020\"\u003e\u003ccode\u003ee5c281f\u003c/code\u003e\u003c/a\u003e chore: updates for v9.39.3 release (Jenkins)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/8c3832adb77cd993b4a24891900d5eeaaf093cdc\"\u003e\u003ccode\u003e8c3832a\u003c/code\u003e\u003c/a\u003e chore: update \u003ccode\u003e@​typescript-eslint/parser\u003c/code\u003e to ^8.56.0 (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20514\"\u003e#20514\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/8330d238ae6adb68bb6a1c9381e38cfedd990d94\"\u003e\u003ccode\u003e8330d23\u003c/code\u003e\u003c/a\u003e test: add tests for config-api (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20493\"\u003e#20493\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/37d6e91e88fa6a2ca6d8726679096acff21ba6cc\"\u003e\u003ccode\u003e37d6e91\u003c/code\u003e\u003c/a\u003e chore: remove eslint v10 prereleases from eslint-config-eslint deps (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20494\"\u003e#20494\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/da7cd0e79197ad16e17052eef99df141de6dbfb1\"\u003e\u003ccode\u003eda7cd0e\u003c/code\u003e\u003c/a\u003e refactor: cleanup error message templates (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20479\"\u003e#20479\u003c/a\u003e) (Francesco Trotta)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/84fb885d49ac810e79a9491276b4828b53d913e5\"\u003e\u003ccode\u003e84fb885\u003c/code\u003e\u003c/a\u003e chore: package.json update for \u003ccode\u003e@​eslint/js\u003c/code\u003e release (Jenkins)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/1f667344b57c4c09b548d94bcfac1f91b6e5c63d\"\u003e\u003ccode\u003e1f66734\u003c/code\u003e\u003c/a\u003e chore: add \u003ccode\u003eeslint\u003c/code\u003e to \u003ccode\u003epeerDependencies\u003c/code\u003e of \u003ccode\u003e@eslint/js\u003c/code\u003e (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20467\"\u003e#20467\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev10.0.0\u003c/h2\u003e\n\u003ch2\u003eBreaking Changes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/f9e54f43a5e497cdfa179338b431093245cb787b\"\u003e\u003ccode\u003ef9e54f4\u003c/code\u003e\u003c/a\u003e feat!: estimate rule-tester failure location (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20420\"\u003e#20420\u003c/a\u003e) (ST-DDT)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/a176319d8ade1a7d9b2d7fb8f038f55a2662325f\"\u003e\u003ccode\u003ea176319\u003c/code\u003e\u003c/a\u003e feat!: replace \u003ccode\u003echalk\u003c/code\u003e with \u003ccode\u003estyleText\u003c/code\u003e and add \u003ccode\u003ecolor\u003c/code\u003e to \u003ccode\u003eResultsMeta\u003c/code\u003e (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20227\"\u003e#20227\u003c/a\u003e) (루밀LuMir)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/c7046e6c1e03c4ca0eee4888a1f2eba4c6454f84\"\u003e\u003ccode\u003ec7046e6\u003c/code\u003e\u003c/a\u003e feat!: enable JSX reference tracking (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20152\"\u003e#20152\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/fa31a608901684fbcd9906d1907e66561d16e5aa\"\u003e\u003ccode\u003efa31a60\u003c/code\u003e\u003c/a\u003e feat!: add \u003ccode\u003ename\u003c/code\u003e to configs (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20015\"\u003e#20015\u003c/a\u003e) (Kirk Waiblinger)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/3383e7ec9028166cafc8ea7986c2f7498d0049f0\"\u003e\u003ccode\u003e3383e7e\u003c/code\u003e\u003c/a\u003e fix!: remove deprecated \u003ccode\u003eSourceCode\u003c/code\u003e methods (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20137\"\u003e#20137\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/501abd0e916a35554c58b7c0365537f1fa3880ce\"\u003e\u003ccode\u003e501abd0\u003c/code\u003e\u003c/a\u003e feat!: update dependency minimatch to v10 (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20246\"\u003e#20246\u003c/a\u003e) (renovate[bot])\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/ca4d3b40085de47561f89656a2207d09946ed45e\"\u003e\u003ccode\u003eca4d3b4\u003c/code\u003e\u003c/a\u003e fix!: stricter rule tester assertions for valid test cases (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20125\"\u003e#20125\u003c/a\u003e) (唯然)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/96512a66c86402fb0538cdcb6cd30b9073f6bf3b\"\u003e\u003ccode\u003e96512a6\u003c/code\u003e\u003c/a\u003e fix!: Remove deprecated rule context methods (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20086\"\u003e#20086\u003c/a\u003e) (Nicholas C. Zakas)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/c69fdacdb2e886b9d965568a397aa8220db3fe90\"\u003e\u003ccode\u003ec69fdac\u003c/code\u003e\u003c/a\u003e feat!: remove eslintrc support (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20037\"\u003e#20037\u003c/a\u003e) (Francesco Trotta)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/208b5cc34a8374ff81412b5bec2e0800eebfbd04\"\u003e\u003ccode\u003e208b5cc\u003c/code\u003e\u003c/a\u003e feat!: Use \u003ccode\u003eScopeManager#addGlobals()\u003c/code\u003e (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20132\"\u003e#20132\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/a2ee188ea7a38a0c6155f3d39e2b00e1d0f36e14\"\u003e\u003ccode\u003ea2ee188\u003c/code\u003e\u003c/a\u003e fix!: add \u003ccode\u003euniqueItems: true\u003c/code\u003e in \u003ccode\u003eno-invalid-regexp\u003c/code\u003e option (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20155\"\u003e#20155\u003c/a\u003e) (Tanuj Kanti)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/a89059dbf2832d417dd493ee81483227ec44e4ab\"\u003e\u003ccode\u003ea89059d\u003c/code\u003e\u003c/a\u003e feat!: Program range span entire source text (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20133\"\u003e#20133\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/39a6424373d915fa9de0d7b0caba9a4dc3da9b53\"\u003e\u003ccode\u003e39a6424\u003c/code\u003e\u003c/a\u003e fix!: assert 'text' is a string across all RuleFixer methods (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20082\"\u003e#20082\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/f28fbf846244e043c92b355b224d121b06140b44\"\u003e\u003ccode\u003ef28fbf8\u003c/code\u003e\u003c/a\u003e fix!: Deprecate \u003ccode\u003e\u0026quot;always\u0026quot;\u003c/code\u003e and \u003ccode\u003e\u0026quot;as-needed\u0026quot;\u003c/code\u003e options of the \u003ccode\u003eradix\u003c/code\u003e rule (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20223\"\u003e#20223\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/aa3fb2b233e929b37220be940575f42c280e0b98\"\u003e\u003ccode\u003eaa3fb2b\u003c/code\u003e\u003c/a\u003e fix!: tighten \u003ccode\u003efunc-names\u003c/code\u003e schema (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20119\"\u003e#20119\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/f6c0ed0311dcfee853367d5068c765d066e6b756\"\u003e\u003ccode\u003ef6c0ed0\u003c/code\u003e\u003c/a\u003e feat!: report \u003ccode\u003eeslint-env\u003c/code\u003e comments as errors (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20128\"\u003e#20128\u003c/a\u003e) (Francesco Trotta)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/4bf739fb533e59f7f0a66b65f7bc80be0f37d8db\"\u003e\u003ccode\u003e4bf739f\u003c/code\u003e\u003c/a\u003e fix!: remove deprecated \u003ccode\u003eLintMessage#nodeType\u003c/code\u003e and \u003ccode\u003eTestCaseError#type\u003c/code\u003e (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20096\"\u003e#20096\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/523c076866400670fb2192a3f55dbf7ad3469247\"\u003e\u003ccode\u003e523c076\u003c/code\u003e\u003c/a\u003e feat!: drop support for jiti \u0026lt; 2.2.0 (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20016\"\u003e#20016\u003c/a\u003e) (michael faith)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/454a292c95f34dad232411ddac06408e6383bb64\"\u003e\u003ccode\u003e454a292\u003c/code\u003e\u003c/a\u003e feat!: update \u003ccode\u003eeslint:recommended\u003c/code\u003e configuration (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20210\"\u003e#20210\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/4f880ee02992e1bf0e96ebaba679985e2d1295f1\"\u003e\u003ccode\u003e4f880ee\u003c/code\u003e\u003c/a\u003e feat!: remove \u003ccode\u003ev10_*\u003c/code\u003e and inactive \u003ccode\u003eunstable_*\u003c/code\u003e flags (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20225\"\u003e#20225\u003c/a\u003e) (sethamus)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/f18115c363a4ac7671a4c7f30ee13d57ebba330f\"\u003e\u003ccode\u003ef18115c\u003c/code\u003e\u003c/a\u003e feat!: \u003ccode\u003eno-shadow-restricted-names\u003c/code\u003e report \u003ccode\u003eglobalThis\u003c/code\u003e by default (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20027\"\u003e#20027\u003c/a\u003e) (sethamus)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/c6358c31fbd3937b92d89be2618ffdf5a774604e\"\u003e\u003ccode\u003ec6358c3\u003c/code\u003e\u003c/a\u003e feat!: Require Node.js \u003ccode\u003e^20.19.0 || ^22.13.0 || \u0026gt;=24\u003c/code\u003e (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20160\"\u003e#20160\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eFeatures\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/bff9091927811497dbf066b0e3b85ecb37d43822\"\u003e\u003ccode\u003ebff9091\u003c/code\u003e\u003c/a\u003e feat: handle \u003ccode\u003eArray.fromAsync\u003c/code\u003e in \u003ccode\u003earray-callback-return\u003c/code\u003e (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20457\"\u003e#20457\u003c/a\u003e) (Francesco Trotta)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/290c594bb50c439fb71bc75521ee5360daa8c222\"\u003e\u003ccode\u003e290c594\u003c/code\u003e\u003c/a\u003e feat: add \u003ccode\u003eself\u003c/code\u003e to \u003ccode\u003eno-implied-eval\u003c/code\u003e rule (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20468\"\u003e#20468\u003c/a\u003e) (sethamus)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/43677de07ebd6e14bfac40a46ad749ba783c45f2\"\u003e\u003ccode\u003e43677de\u003c/code\u003e\u003c/a\u003e feat: fix handling of function and class expression names in \u003ccode\u003eno-shadow\u003c/code\u003e (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20432\"\u003e#20432\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/84fb885d49ac810e79a9491276b4828b53d913e5\"\u003e\u003ccode\u003e84fb885\u003c/code\u003e\u003c/a\u003e chore: package.json update for \u003ccode\u003e@​eslint/js\u003c/code\u003e release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/1f667344b57c4c09b548d94bcfac1f91b6e5c63d\"\u003e\u003ccode\u003e1f66734\u003c/code\u003e\u003c/a\u003e chore: add \u003ccode\u003eeslint\u003c/code\u003e to \u003ccode\u003epeerDependencies\u003c/code\u003e of \u003ccode\u003e@eslint/js\u003c/code\u003e (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20467\"\u003e#20467\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/f3fbc2f60cbe2c718364feb8c3fc0452c0df3c56\"\u003e\u003ccode\u003ef3fbc2f\u003c/code\u003e\u003c/a\u003e chore: set \u003ccode\u003e@eslint/js\u003c/code\u003e version to 10.0.0 to skip releasing it (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20466\"\u003e#20466\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/b4b3127f8542c599ce2dea804b6582ebc40c993d\"\u003e\u003ccode\u003eb4b3127\u003c/code\u003e\u003c/a\u003e chore: package.json update for \u003ccode\u003e@​eslint/js\u003c/code\u003e release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/0b14059491d830a49b3577931f4f68fbcfce6be5\"\u003e\u003ccode\u003e0b14059\u003c/code\u003e\u003c/a\u003e chore: package.json update for \u003ccode\u003e@​eslint/js\u003c/code\u003e release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/fa31a608901684fbcd9906d1907e66561d16e5aa\"\u003e\u003ccode\u003efa31a60\u003c/code\u003e\u003c/a\u003e feat!: add \u003ccode\u003ename\u003c/code\u003e to configs (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20015\"\u003e#20015\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/1e2cad5f6fa47ed6ed89d2a29798dda926d50990\"\u003e\u003ccode\u003e1e2cad5\u003c/code\u003e\u003c/a\u003e chore: package.json update for \u003ccode\u003e@​eslint/js\u003c/code\u003e release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/454a292c95f34dad232411ddac06408e6383bb64\"\u003e\u003ccode\u003e454a292\u003c/code\u003e\u003c/a\u003e feat!: update \u003ccode\u003eeslint:recommended\u003c/code\u003e configuration (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20210\"\u003e#20210\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/c6358c31fbd3937b92d89be2618ffdf5a774604e\"\u003e\u003ccode\u003ec6358c3\u003c/code\u003e\u003c/a\u003e feat!: Require Node.js \u003ccode\u003e^20.19.0 || ^22.13.0 || \u0026gt;=24\u003c/code\u003e (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20160\"\u003e#20160\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/eslint/eslint/commits/v10.0.1/packages/js\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@typescript-eslint/eslint-plugin` from 8.56.0 to 8.60.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases\"\u003e@​typescript-eslint/eslint-plugin's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev8.60.1\u003c/h2\u003e\n\u003ch2\u003e8.60.1 (2026-06-01)\u003c/h2\u003e\n\u003ch3\u003e🩹 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e respect ECMAScript line terminators in ts-comment rules (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12352\"\u003e#12352\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-shadow] correct rule to match ESLint v10 handling (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12182\"\u003e#12182\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e❤️ Thank You\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003elumir\u003c/li\u003e\n\u003cli\u003eNevette Bailey \u003ca href=\"https://github.com/nevette-bailey\"\u003e\u003ccode\u003e@​nevette-bailey\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.60.1\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003ev8.60.0\u003c/h2\u003e\n\u003ch2\u003e8.60.0 (2026-05-25)\u003c/h2\u003e\n\u003ch3\u003e🚀 Features\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003erule-tester:\u003c/strong\u003e added updates of RuleTester from upstream (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12291\"\u003e#12291\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🩹 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eplayground TS version selector is not working (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12326\"\u003e#12326\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/issues/12325\"\u003e#12325\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e❤️ Thank You\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eEvyatar Daud \u003ca href=\"https://github.com/StyleShit\"\u003e\u003ccode\u003e@​StyleShit\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eVinccool96\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.60.0\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003ev8.59.4\u003c/h2\u003e\n\u003ch2\u003e8.59.4 (2026-05-18)\u003c/h2\u003e\n\u003ch3\u003e🩹 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-floating-promises] stack overflow when using recursive types (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12294\"\u003e#12294\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eproject-service:\u003c/strong\u003e throw error cause in \u003ccode\u003egetParsedConfigFileFromTSServer\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12321\"\u003e#12321\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003etypescript-eslint:\u003c/strong\u003e export Compatible* types from typescript-eslint to resolve pnpm TS error (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12340\"\u003e#12340\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e❤️ Thank You\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eEvyatar Daud \u003ca href=\"https://github.com/StyleShit\"\u003e\u003ccode\u003e@​StyleShit\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eKirk Waiblinger \u003ca href=\"https://github.com/kirkwaiblinger\"\u003e\u003ccode\u003e@​kirkwaiblinger\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/CHANGELOG.md\"\u003e@​typescript-eslint/eslint-plugin's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e8.60.1 (2026-06-01)\u003c/h2\u003e\n\u003ch3\u003e🩹 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-shadow] correct rule to match ESLint v10 handling (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12182\"\u003e#12182\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e respect ECMAScript line terminators in ts-comment rules (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12352\"\u003e#12352\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e❤️ Thank You\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003elumir\u003c/li\u003e\n\u003cli\u003eNevette Bailey \u003ca href=\"https://github.com/nevette-bailey\"\u003e\u003ccode\u003e@​nevette-bailey\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.60.1\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003e8.60.0 (2026-05-25)\u003c/h2\u003e\n\u003cp\u003eThis was a version bump only for eslint-plugin to align it with other projects, there were no code changes.\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.60.0\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003e8.59.4 (2026-05-18)\u003c/h2\u003e\n\u003ch3\u003e🩹 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-floating-promises] stack overflow when using recursive types (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12294\"\u003e#12294\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e❤️ Thank You\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eEvyatar Daud \u003ca href=\"https://github.com/StyleShit\"\u003e\u003ccode\u003e@​StyleShit\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.4\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003e8.59.3 (2026-05-11)\u003c/h2\u003e\n\u003cp\u003eThis was a version bump only for eslint-plugin to align it with other projects, there were no code changes.\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.3\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003e8.59.2 (2026-05-04)\u003c/h2\u003e\n\u003ch3\u003e🩹 Fixes\u003c/h3\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/4f84a697aedc436559c3ae09b5b357d98b448d68\"\u003e\u003ccode\u003e4f84a69\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.60.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/598af564db50593277ba46c7fdea3648e4425391\"\u003e\u003ccode\u003e598af56\u003c/code\u003e\u003c/a\u003e docs(eslint-plugin): clarify no-redeclare type-value collision not covered by...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/1849b530c254fb4f89d7270160f3a998e4acd964\"\u003e\u003ccode\u003e1849b53\u003c/code\u003e\u003c/a\u003e chore: typecheck using tsgo (\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin/issues/12139\"\u003e#12139\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/5341d59dd3c21fc4e2bf3bce55cf35d8f84e5216\"\u003e\u003ccode\u003e5341d59\u003c/code\u003e\u003c/a\u003e chore: fix lint issues (\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin/issues/12369\"\u003e#12369\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/f525814f01766487ab34a54d56de20ea5c4fb576\"\u003e\u003ccode\u003ef525814\u003c/code\u003e\u003c/a\u003e fix(eslint-plugin): [no-shadow] correct rule to match ESLint v10 handling (\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin/issues/1\"\u003e#1\u003c/a\u003e...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/2df540cd8bbeb3e2c56d516912f69bf63c1e9450\"\u003e\u003ccode\u003e2df540c\u003c/code\u003e\u003c/a\u003e chore(eslint-plugin): defer type checks to improve rules performance (\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin/issues/12296\"\u003e#12296\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/1ab4284789b36cf482a4d9924719162a02d54243\"\u003e\u003ccode\u003e1ab4284\u003c/code\u003e\u003c/a\u003e fix(eslint-plugin): respect ECMAScript line terminators in ts-comment rules (...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/2f49df599b2db5f2937caf975d3c63e5cdeb0ea1\"\u003e\u003ccode\u003e2f49df5\u003c/code\u003e\u003c/a\u003e docs: update references to \u003ccode\u003e@stylistic/eslint-plugin\u003c/code\u003e rules in documentation ...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/f891c29de5f3e23f3d8c59cc599d3196e54e9b58\"\u003e\u003ccode\u003ef891c29\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.60.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/ca6ca1431b6d18235297a7e29feb5d98f012dff2\"\u003e\u003ccode\u003eca6ca14\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.59.4\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commits/v8.60.1/packages/eslint-plugin\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@typescript-eslint/parser` from 8.56.0 to 8.60.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases\"\u003e@​typescript-eslint/parser's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev8.60.1\u003c/h2\u003e\n\u003ch2\u003e8.60.1 (2026-06-01)\u003c/h2\u003e\n\u003ch3\u003e🩹 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e respect ECMAScript line terminators in ts-comment rules (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12352\"\u003e#12352\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-shadow] correct rule to match ESLint v10 handling (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12182\"\u003e#12182\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e❤️ Thank You\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003elumir\u003c/li\u003e\n\u003cli\u003eNevette Bailey \u003ca href=\"https://github.com/nevette-bailey\"\u003e\u003ccode\u003e@​nevette-bailey\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.60.1\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003ev8.60.0\u003c/h2\u003e\n\u003ch2\u003e8.60.0 (2026-05-25)\u003c/h2\u003e\n\u003ch3\u003e🚀 Features\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003erule-tester:\u003c/strong\u003e added updates of RuleTester from upstream (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12291\"\u003e#12291\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🩹 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eplayground TS version selector is not working (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12326\"\u003e#12326\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/issues/12325\"\u003e#12325\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e❤️ Thank You\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eEvyatar Daud \u003ca href=\"https://github.com/StyleShit\"\u003e\u003ccode\u003e@​StyleShit\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eVinccool96\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.60.0\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003ev8.59.4\u003c/h2\u003e\n\u003ch2\u003e8.59.4 (2026-05-18)\u003c/h2\u003e\n\u003ch3\u003e🩹 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-floating-promises] stack overflow when using recursive types (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12294\"\u003e#12294\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eproject-service:\u003c/strong\u003e throw error cause in \u003ccode\u003egetParsedConfigFileFromTSServer\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12321\"\u003e#12321\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003etypescript-eslint:\u003c/strong\u003e export Compatible* types from typescript-eslint to resolve pnpm TS error (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12340\"\u003e#12340\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e❤️ Thank You\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eEvyatar Daud \u003ca href=\"https://github.com/StyleShit\"\u003e\u003ccode\u003e@​StyleShit\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eKirk Waiblinger \u003ca href=\"https://github.com/kirkwaiblinger\"\u003e\u003ccode\u003e@​kirkwaiblinger\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/parser/CHANGELOG.md\"\u003e@​typescript-eslint/parser's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e8.60.1 (2026-06-01)\u003c/h2\u003e\n\u003cp\u003eThis was a version bump only for parser to align it with other projects, there were no code changes.\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.60.1\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003e8.60.0 (2026-05-25)\u003c/h2\u003e\n\u003cp\u003eThis was a version bump only for parser to align it with other projects, there were no code changes.\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.60.0\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003e8.59.4 (2026-05-18)\u003c/h2\u003e\n\u003cp\u003eThis was a version bump only for parser to align it with other projects, there were no code changes.\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.4\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003e8.59.3 (2026-05-11)\u003c/h2\u003e\n\u003cp\u003eThis was a version bump only for parser to align it with other projects, there were no code changes.\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.3\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003e8.59.2 (2026-05-04)\u003c/h2\u003e\n\u003cp\u003eThis was a version bump only for parser to align it with other projects, there were no code changes.\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.2\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003e8.59.1 (2026-04-27)\u003c/h2\u003e\n\u003cp\u003eThis was a version bump only for parser to align it with other projects, there were no code changes.\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.1\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003e8.59.0 (2026-04-20)\u003c/h2\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/4f84a697aedc436559c3ae09b5b357d98b448d68\"\u003e\u003ccode\u003e4f84a69\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.60.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/1849b530c254fb4f89d7270160f3a998e4acd964\"\u003e\u003ccode\u003e1849b53\u003c/code\u003e\u003c/a\u003e chore: typecheck using tsgo (\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/parser/issues/12139\"\u003e#12139\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/f891c29de5f3e23f3d8c59cc599d3196e54e9b58\"\u003e\u003ccode\u003ef891c29\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.60.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/ca6ca1431b6d18235297a7e29feb5d98f012dff2\"\u003e\u003ccode\u003eca6ca14\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.59.4\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/48e13c0261e3cb1bf4f4dfaa462cdb3a56ef7383\"\u003e\u003ccode\u003e48e13c0\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.59.3\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/44f9625336841a8ee3eb01a9e02e49b1d7b12648\"\u003e\u003ccode\u003e44f9625\u003c/code\u003e\u003c/a\u003e chore(deps): update vitest monorepo to v4.1.5 (\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/parser/issues/12307\"\u003e#12307\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/2ec35f1760aade4df4c631d76d78c7ed5e136333\"\u003e\u003ccode\u003e2ec35f1\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.59.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/52457932e5507b5ca01e720a541f3f8d01e09b9d\"\u003e\u003ccode\u003e5245793\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.59.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/ea9ae4f8817873480e3501145059f63e39e8d8a1\"\u003e\u003ccode\u003eea9ae4f\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.59.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/90c2803a4c250e0343598d41e973f95e743bf4ce\"\u003e\u003ccode\u003e90c2803\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.58.2\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commits/v8.60.1/packages/parser\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `eslint` from 9.39.2 to 10.4.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/eslint/eslint/releases\"\u003eeslint's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev10.4.1\u003c/h2\u003e\n\u003ch2\u003eBug Fixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/e557467db7496220eebcbe2ac5ea6d38c12bb1ec\"\u003e\u003ccode\u003ee557467\u003c/code\u003e\u003c/a\u003e fix: update \u003ccode\u003e@eslint/plugin-kit\u003c/code\u003e version to 0.7.2 (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20930\"\u003e#20930\u003c/a\u003e) (Francesco Trotta)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/d4ce898796ca22c3b96aa70d3014cb85f4bac1cd\"\u003e\u003ccode\u003ed4ce898\u003c/code\u003e\u003c/a\u003e fix: propagate failures from delegated commands (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20917\"\u003e#20917\u003c/a\u003e) (Minh Vu)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/f4f3507460bc016b5be979c05d2969793f570cbf\"\u003e\u003ccode\u003ef4f3507\u003c/code\u003e\u003c/a\u003e fix: prefer-arrow-callback invalid autofix with newline after \u003ccode\u003easync\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20916\"\u003e#20916\u003c/a\u003e) (kuldeep kumar)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/c5bc78b37e08b9054a11f0cc2d81808bb24acb85\"\u003e\u003ccode\u003ec5bc78b\u003c/code\u003e\u003c/a\u003e fix: false positive for reference in \u003ccode\u003efinally\u003c/code\u003e block (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20655\"\u003e#20655\u003c/a\u003e) (Tanuj Kanti)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/27538c01f5df4e9306f6f4ba867b2dd6307fae59\"\u003e\u003ccode\u003e27538c0\u003c/code\u003e\u003c/a\u003e fix: add missing CodePath and CodePathSegment types (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20853\"\u003e#20853\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eDocumentation\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/61b0add61ffc52665562be7bb96f526690a78b30\"\u003e\u003ccode\u003e61b0add\u003c/code\u003e\u003c/a\u003e docs: remove deprecated rule from related rules of \u003ccode\u003emax-params\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20921\"\u003e#20921\u003c/a\u003e) (Tanuj Kanti)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/305d5b91aeac24d36fde42f75625a8f183d4ce43\"\u003e\u003ccode\u003e305d5b9\u003c/code\u003e\u003c/a\u003e docs: remove deprecated rules from related rules section (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20911\"\u003e#20911\u003c/a\u003e) (Tanuj Kanti)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/49b0202d01918b8061720d586dffd7c68047090c\"\u003e\u003ccode\u003e49b0202\u003c/code\u003e\u003c/a\u003e docs: fix \u003ccode\u003edisplay: none\u003c/code\u003e of ad (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20901\"\u003e#20901\u003c/a\u003e) (Tanuj Kanti)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/9067f9492ec998afc5b4f057a477ecf6ebd45e44\"\u003e\u003ccode\u003e9067f94\u003c/code\u003e\u003c/a\u003e docs: switch build to Node.js 24 (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20893\"\u003e#20893\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/c91b0417e3420c76807ce1fa2aea76e2de87ab86\"\u003e\u003ccode\u003ec91b041\u003c/code\u003e\u003c/a\u003e docs: Update README (GitHub Actions Bot)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/e349265cb37f3ebc837e178e48a725bb782bd870\"\u003e\u003ccode\u003ee349265\u003c/code\u003e\u003c/a\u003e docs: clarify semver strings in rule deprecation objects (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20885\"\u003e#20885\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eChores\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/b0e466b6ab47bfc7de43d8de0c315d8ee83aa584\"\u003e\u003ccode\u003eb0e466b\u003c/code\u003e\u003c/a\u003e test: add \u003ccode\u003edata\u003c/code\u003e property to invalid tests cases for rules (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20924\"\u003e#20924\u003c/a\u003e) (Tanuj Kanti)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/f78838bc4c86d487e1bcc7cede260c4467721c46\"\u003e\u003ccode\u003ef78838b\u003c/code\u003e\u003c/a\u003e test: add CodePath type coverage (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20904\"\u003e#20904\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/1daa4bd734b79a62e317d0394394a6b38cff49f9\"\u003e\u003ccode\u003e1daa4bd\u003c/code\u003e\u003c/a\u003e chore: update \u003ccode\u003eeslint-plugin-eslint-comments\u003c/code\u003e test data to latest commit (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20922\"\u003e#20922\u003c/a\u003e) (Francesco Trotta)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/002942ce988ea28b78e0a2f3b074081e638b552c\"\u003e\u003ccode\u003e002942c\u003c/code\u003e\u003c/a\u003e ci: declare contents:read on update-readme workflow (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20919\"\u003e#20919\u003c/a\u003e) (Arpit Jain)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/64bca24e7bed35bc3c864fc625cb2d89eca87d5b\"\u003e\u003ccode\u003e64bca24\u003c/code\u003e\u003c/a\u003e chore: update ecosystem plugins (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20912\"\u003e#20912\u003c/a\u003e) (ESLint Bot)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/6d7c832950d5e92499d88e504080661f888f8f56\"\u003e\u003ccode\u003e6d7c832\u003c/code\u003e\u003c/a\u003e chore: ignore fflate updates in renovate (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20908\"\u003e#20908\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/b2c86382164d87c6203b78d52068cd6a2a6ffe30\"\u003e\u003ccode\u003eb2c8638\u003c/code\u003e\u003c/a\u003e ci: bump pnpm/action-setup from 6.0.7 to 6.0.8 (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20889\"\u003e#20889\u003c/a\u003e) (dependabot[bot])\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/a9b8d7f74c50211701cfc49710fa541fd91b2aa5\"\u003e\u003ccode\u003ea9b8d7f\u003c/code\u003e\u003c/a\u003e chore: increase maxBuffer for ecosystem tests (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20881\"\u003e#20881\u003c/a\u003e) (sethamus)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/b702ead5e1ed7cb9f28238a454797662efb37396\"\u003e\u003ccode\u003eb702ead\u003c/code\u003e\u003c/a\u003e chore: update ecosystem update PR settings (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20884\"\u003e#20884\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/507f60e9a78c9a902bc8759f066ae17a1ea6cd81\"\u003e\u003ccode\u003e507f60e\u003c/code\u003e\u003c/a\u003e chore: update ecosystem plugins (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20882\"\u003e#20882\u003c/a\u003e) (ESLint Bot)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/92f5c5bb6bf3a5d167c8ee53a430833410295c6d\"\u003e\u003ccode\u003e92f5c5b\u003c/code\u003e\u003c/a\u003e test: add unit test for message-count (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20878\"\u003e#20878\u003c/a\u003e) (kuldeep kumar)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/df321080af5758b1fa25e4b9a40e26135642dd6e\"\u003e\u003ccode\u003edf32108\u003c/code\u003e\u003c/a\u003e chore: add \u003ccode\u003e@​eslint/markdown\u003c/code\u003e and typescript-eslint ecosystem tests (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20837\"\u003e#20837\u003c/a\u003e) (sethamus)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/327f91d36aa49f2a50ded931d841a16374fd875f\"\u003e\u003ccode\u003e327f91d\u003c/code\u003e\u003c/a\u003e chore: use includeIgnoreFile internally (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20876\"\u003e#20876\u003c/a\u003e) (Kirk Waiblinger)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/f0dc4bd893fb3a9f44e4ddc3ad7063ffb0beacd3\"\u003e\u003ccode\u003ef0dc4bd\u003c/code\u003e\u003c/a\u003e chore: pin fflate@0.8.2 (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20877\"\u003e#20877\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/0f4bd257a67a082b756de746d9e0c4842ab764ca\"\u003e\u003ccode\u003e0f4bd25\u003c/code\u003e\u003c/a\u003e ci: run Discord alert for ecosystem test failures (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20873\"\u003e#20873\u003c/a\u003e) (Copilot)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev10.4.0\u003c/h2\u003e\n\u003ch2\u003eFeatures\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/1a45ec596af1dd5f880e6874cb8f24dafb6a7ecf\"\u003e\u003ccode\u003e1a45ec5\u003c/code\u003e\u003c/a\u003e feat: check sequence expressions in \u003ccode\u003efor-direction\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20701\"\u003e#20701\u003c/a\u003e) (kuldeep kumar)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/450040bd89b989b3531824c6be45feb5fe3d936b\"\u003e\u003ccode\u003e450040b\u003c/code\u003e\u003c/a\u003e feat: add \u003ccode\u003eincludeIgnoreFile()\u003c/code\u003e to \u003ccode\u003eeslint/config\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20735\"\u003e#20735\u003c/a\u003e) (Kirk Waiblinger)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eBug Fixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/544c0c3da589166ad8e5d634f35d3d06701c57be\"\u003e\u003ccode\u003e544c0c3\u003c/code\u003e\u003c/a\u003e fix: escape code path DOT labels in debug output (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20866\"\u003e#20866\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/6799431203f2579632d0870f98ba132067f4040c\"\u003e\u003ccode\u003e6799431\u003c/code\u003e\u003c/a\u003e fix: update dependency \u003ccode\u003e@​eslint/config-helpers\u003c/code\u003e to ^0.6.0 (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20850\"\u003e#20850\u003c/a\u003e) (renovate[bot])\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/f078fef5005dceb14fc162aab7c7200e027688dd\"\u003e\u003ccode\u003ef078fef\u003c/code\u003e\u003c/a\u003e fix: handle non-array deprecated rule replacements (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20825\"\u003e#20825\u003c/a\u003e) (xbinaryx)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eDocumentation\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/7e52a7151fb92eec0e0f67fe4e5ddbd1ccce796f\"\u003e\u003ccode\u003e7e52a71\u003c/code\u003e\u003c/a\u003e docs: add mention of \u003ccode\u003e@eslint-react/eslint-plugin\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20869\"\u003e#20869\u003c/a\u003e) (Pavel)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/db3468ba746407d7f286f18f7ea9db6df0e3bc08\"\u003e\u003ccode\u003edb3468b\u003c/code\u003e\u003c/a\u003e docs: tweak wording around ambiguous CJS-vs-ESM config (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20865\"\u003e#20865\u003c/a\u003e) (Kirk Waiblinger)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/90846643ec6e97d447ae0d831fabe6d17b0a998a\"\u003e\u003ccode\u003e9084664\u003c/code\u003e\u003c/a\u003e docs: Update README (GitHub Actions Bot)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/9cc73875046e3c4b8313644cbb1e99e26b36bd3f\"\u003e\u003ccode\u003e9cc7387\u003c/code\u003e\u003c/a\u003e docs: Update README (GitHub Actions Bot)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/3d7b5484407403817aa9071a394d336d8ea96eb5\"\u003e\u003ccode\u003e3d7b548\u003c/code\u003e\u003c/a\u003e docs: Update README (GitHub Actions Bot)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/191ec3c0a3f94ce0f110df761f0b2b8949011ccb\"\u003e\u003ccode\u003e191ec3c\u003c/code\u003e\u003c/a\u003e docs: Update README (GitHub Actions Bot)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/4a3d15a99c452c4db2fd56b577fa7597e98ab0c2\"\u003e\u003ccode\u003e4a3d15a\u003c/code\u003e\u003c/a\u003e 10.4.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/43e7e2bdc5c6cacc535446b7d23c10f780384ba8\"\u003e\u003ccode\u003e43e7e2b\u003c/code\u003e\u003c/a\u003e Build: changelog update for 10.4.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/e557467db7496220eebcbe2ac5ea6d38c12bb1ec\"\u003e\u003ccode\u003ee557467\u003c/code\u003e\u003c/a\u003e fix: update \u003ccode\u003e@eslint/plugin-kit\u003c/code\u003e version to 0.7.2 (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20930\"\u003e#20930\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/b0e466b6ab47bfc7de43d8de0c315d8ee83aa584\"\u003e\u003ccode\u003eb0e466b\u003c/code\u003e\u003c/a\u003e test: add \u003ccode\u003edata\u003c/code\u003e property to invalid tests cases for rules (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20924\"\u003e#20924\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/d4ce898796ca22c3b96aa70d3014cb85f4bac1cd\"\u003e\u003ccode\u003ed4ce898\u003c/code\u003e\u003c/a\u003e fix: propagate failures from delegated commands (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20917\"\u003e#20917\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/f4f3507460bc016b5be979c05d2969793f570cbf\"\u003e\u003ccode\u003ef4f3507\u003c/code\u003e\u003c/a\u003e fix: prefer-arrow-callback invalid autofix with newline after \u003ccode\u003easync\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20916\"\u003e#20916\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/f78838bc4c86d487e1bcc7cede260c4467721c46\"\u003e\u003ccode\u003ef78838b\u003c/code\u003e\u003c/a\u003e test: add CodePath type coverage (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20904\"\u003e#20904\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/61b0add61ffc52665562be7bb96f526690a78b30\"\u003e\u003ccode\u003e61b0add\u003c/code\u003e\u003c/a\u003e docs: remove deprecated rule from related rules of \u003ccode\u003emax-params\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20921\"\u003e#20921\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/1daa4bd734b79a62e317d0394394a6b38cff49f9\"\u003e\u003ccode\u003e1daa4bd\u003c/code\u003e\u003c/a\u003e chore: update \u003ccode\u003eeslint-plugin-eslint-comments\u003c/code\u003e test data to latest commit (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20\"\u003e#20\u003c/a\u003e...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/002942ce988ea28b78e0a2f3b074081e638b552c\"\u003e\u003ccode\u003e002942c\u003c/code\u003e\u003c/a\u003e ci: declare contents:read on update-readme workflow (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20919\"\u003e#20919\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/eslint/eslint/compare/v9.39.2...v10.4.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `eslint-import-resolver-typescript` from 4.4.4 to 4.4.5\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/import-js/eslint-import-resolver-typescript/releases\"\u003eeslint-import-resolver-typescript's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev4.4.5\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/import-js/eslint-import-resolver-typescript/pull/473\"\u003e#473\u003c/a\u003e \u003ca href=\"https://github.com/import-js/eslint-import-resolver-typescript/commit/32c61abccf26bd2a2267f2e0e67d82e6f88d149a\"\u003e\u003ccode\u003e32c61ab\u003c/code\u003e\u003c/a\u003e Thanks \u003ca href=\"https://github.com/leey0818\"\u003e\u003ccode\u003e@​leey0818\u003c/code\u003e\u003c/a\u003e! - fix: check tsconfig matching before using resolver\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/import-js/eslint-import-resolver-typescript/blob/master/CHANGELOG.md\"\u003eeslint-import-resolver-typescript's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e4.4.5\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/import-js/eslint-import-resolver-typescript/pull/473\"\u003e#473\u003c/a\u003e \u003ca href=\"https://github.com/import-js/eslint-import-resolver-typescript/commit/32c61abccf26bd2a2267f2e0e67d82e6f88d149a\"\u003e\u003ccode\u003e32c61ab\u003c/code\u003e\u003c/a\u003e Thanks \u003ca href=\"https://github.com/leey0818\"\u003e\u003ccode\u003e@​leey0818\u003c/code\u003e\u003c/a\u003e! - fix: check tsconfig matching before using resolver\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/import-js/eslint-...\n\n_Description has been truncated_","html_url":"https://github.com/ThatGuySam/agentready/pull/2","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/ThatGuySam%2Fagentready/issues/2","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/2/packages"},{"uuid":"4561835467","node_id":"PR_kwDOSttBWc7hS_u1","number":1,"state":"closed","title":"deps(deps): bump the all-dependencies group with 69 updates","user":"dependabot[bot]","labels":[],"assignees":[],"locked":false,"comments_count":2,"pull_request":true,"closed_at":"2026-06-08T04:30:01.000Z","author_association":null,"state_reason":null,"created_at":"2026-06-01T09:15:20.000Z","updated_at":"2026-06-08T04:30:02.000Z","time_to_close":587681,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"deps(deps): bump","group_name":"all-dependencies","update_count":69,"packages":[{"name":"@eslint-react/eslint-plugin","old_version":"2.13.0","new_version":"5.8.9","repository_url":"https://github.com/Rel1cx/eslint-react"},{"name":"@eslint/js","old_version":"9.39.2","new_version":"10.0.1","repository_url":"https://github.com/eslint/eslint"},{"name":"@typescript-eslint/eslint-plugin","old_version":"8.56.0","new_version":"8.60.0","repository_url":"https://github.com/typescript-eslint/typescript-eslint"},{"name":"@typescript-eslint/parser","old_version":"8.56.0","new_version":"8.60.0","repository_url":"https://github.com/typescript-eslint/typescript-eslint"},{"name":"eslint","old_version":"9.39.2","new_version":"10.4.1","repository_url":"https://github.com/eslint/eslint"},{"name":"eslint-import-resolver-typescript","old_version":"4.4.4","new_version":"4.4.5","repository_url":"https://github.com/import-js/eslint-import-resolver-typescript"},{"name":"eslint-plugin-react-hooks","old_version":"7.0.1","new_version":"7.1.1","repository_url":"https://github.com/facebook/react"},{"name":"globals","old_version":"17.3.0","new_version":"17.6.0","repository_url":"https://github.com/sindresorhus/globals"},{"name":"graphql","old_version":"16.12.0","new_version":"16.14.0","repository_url":"https://github.com/graphql/graphql-js"},{"name":"happy-dom","old_version":"20.6.2","new_version":"20.9.0","repository_url":"https://github.com/capricorn86/happy-dom"},{"name":"jiti","old_version":"2.6.1","new_version":"2.7.0","repository_url":"https://github.com/unjs/jiti"},{"name":"lint-staged","old_version":"16.2.7","new_version":"17.0.7","repository_url":"https://github.com/lint-staged/lint-staged"},{"name":"mermaid","old_version":"11.12.3","new_version":"11.15.0","repository_url":"https://github.com/mermaid-js/mermaid"},{"name":"prettier","old_version":"3.8.1","new_version":"3.8.3","repository_url":"https://github.com/prettier/prettier"},{"name":"react","old_version":"19.2.4","new_version":"19.2.6","repository_url":"https://github.com/facebook/react"},{"name":"@types/react","old_version":"19.2.14","new_version":"19.2.15","repository_url":"https://github.com/DefinitelyTyped/DefinitelyTyped"},{"name":"typescript","old_version":"5.9.3","new_version":"6.0.3","repository_url":"https://github.com/microsoft/TypeScript"},{"name":"typescript-eslint","old_version":"8.56.0","new_version":"8.60.0","repository_url":"https://github.com/typescript-eslint/typescript-eslint"},{"name":"typescript-language-server","old_version":"5.1.3","new_version":"5.3.0","repository_url":"https://github.com/typescript-language-server/typescript-language-server"},{"name":"vite","old_version":"7.3.1","new_version":"8.0.15","repository_url":"https://github.com/vitejs/vite"},{"name":"vitepress","old_version":"2.0.0-alpha.16","new_version":"2.0.0-alpha.17","repository_url":"https://github.com/vuejs/vitepress"},{"name":"vitepress-plugin-llms","old_version":"1.11.0","new_version":"1.13.1","repository_url":"https://github.com/okineadev/vitepress-plugin-llms"},{"name":"vitest","old_version":"4.0.18","new_version":"4.1.8","repository_url":"https://github.com/vitest-dev/vitest"},{"name":"wrangler","old_version":"4.66.0","new_version":"4.95.0","repository_url":"https://github.com/cloudflare/workers-sdk"},{"name":"@ai-sdk/openai","old_version":"3.0.29","new_version":"3.0.67","repository_url":"https://github.com/vercel/ai"},{"name":"@better-auth/passkey","old_version":"1.4.18","new_version":"1.6.13","repository_url":"https://github.com/better-auth/better-auth"},{"name":"@better-auth/stripe","old_version":"1.4.18","new_version":"1.6.13","repository_url":"https://github.com/better-auth/better-auth"},{"name":"@trpc/server","old_version":"11.10.0","new_version":"11.17.0","repository_url":"https://github.com/trpc/trpc"},{"name":"ai","old_version":"6.0.91","new_version":"6.0.193","repository_url":"https://github.com/vercel/ai"},{"name":"better-auth","old_version":"1.4.18","new_version":"1.6.13","repository_url":"https://github.com/better-auth/better-auth"},{"name":"drizzle-orm","old_version":"0.45.1","new_version":"0.45.2","repository_url":"https://github.com/drizzle-team/drizzle-orm"},{"name":"postgres","old_version":"3.4.8","new_version":"3.4.9","repository_url":"https://github.com/porsager/postgres"},{"name":"resend","old_version":"6.9.2","new_version":"6.12.4","repository_url":"https://github.com/resend/resend-node"},{"name":"stripe","old_version":"20.3.1","new_version":"22.2.0","repository_url":"https://github.com/stripe/stripe-node"},{"name":"@cloudflare/workers-types","old_version":"4.20260218.0","new_version":"4.20260601.1","repository_url":"https://github.com/cloudflare/workerd"},{"name":"@types/bun","old_version":"1.3.9","new_version":"1.3.14","repository_url":"https://github.com/DefinitelyTyped/DefinitelyTyped"},{"name":"hono","old_version":"4.11.10","new_version":"4.12.23","repository_url":"https://github.com/honojs/hono"},{"name":"zod","old_version":"4.3.6","new_version":"4.4.3","repository_url":"https://github.com/colinhacks/zod"},{"name":"@tanstack/react-query","old_version":"5.90.21","new_version":"5.100.14","repository_url":"https://github.com/TanStack/query"},{"name":"@tanstack/react-router","old_version":"1.161.1","new_version":"1.170.10","repository_url":"https://github.com/TanStack/router"},{"name":"@trpc/client","old_version":"11.10.0","new_version":"11.17.0","repository_url":"https://github.com/trpc/trpc"},{"name":"@trpc/tanstack-react-query","old_version":"11.10.0","new_version":"11.17.0","repository_url":"https://github.com/trpc/trpc"},{"name":"jotai","old_version":"2.17.1","new_version":"2.20.0","repository_url":"https://github.com/pmndrs/jotai"},{"name":"jotai-effect","old_version":"2.2.3","new_version":"2.3.1","repository_url":"https://github.com/jotaijs/jotai-effect"},{"name":"lucide-react","old_version":"0.574.0","new_version":"1.17.0","repository_url":"https://github.com/lucide-icons/lucide"},{"name":"react-dom","old_version":"19.2.4","new_version":"19.2.6","repository_url":"https://github.com/facebook/react"},{"name":"react-error-boundary","old_version":"6.1.1","new_version":"6.1.2","repository_url":"https://github.com/bvaughn/react-error-boundary"},{"name":"tailwind-merge","old_version":"3.4.1","new_version":"3.6.0","repository_url":"https://github.com/dcastil/tailwind-merge"},{"name":"@tailwindcss/postcss","old_version":"4.2.0","new_version":"4.3.0","repository_url":"https://github.com/tailwindlabs/tailwindcss"},{"name":"@tanstack/react-query-devtools","old_version":"5.91.3","new_version":"5.100.14","repository_url":"https://github.com/TanStack/query"},{"name":"@tanstack/react-router-devtools","old_version":"1.161.1","new_version":"1.167.0","repository_url":"https://github.com/TanStack/router"},{"name":"@tanstack/router-plugin","old_version":"1.161.1","new_version":"1.168.13","repository_url":"https://github.com/TanStack/router"},{"name":"@types/node","old_version":"25.2.3","new_version":"25.9.1","repository_url":"https://github.com/DefinitelyTyped/DefinitelyTyped"},{"name":"@vitejs/plugin-react","old_version":"5.1.4","new_version":"6.0.2","repository_url":"https://github.com/vitejs/vite-plugin-react"},{"name":"@vitejs/plugin-react-swc","old_version":"4.2.3","new_version":"4.3.1","repository_url":"https://github.com/vitejs/vite-plugin-react"},{"name":"autoprefixer","old_version":"10.4.24","new_version":"10.5.0","repository_url":"https://github.com/postcss/autoprefixer"},{"name":"globby","old_version":"16.1.1","new_version":"16.2.0","repository_url":"https://github.com/sindresorhus/globby"},{"name":"postcss","old_version":"8.5.6","new_version":"8.5.15","repository_url":"https://github.com/postcss/postcss"},{"name":"tailwindcss","old_version":"4.2.0","new_version":"4.3.0","repository_url":"https://github.com/tailwindlabs/tailwindcss"},{"name":"@react-email/components","old_version":"1.0.8","new_version":"1.0.12","repository_url":"https://github.com/resend/react-email"},{"name":"@react-email/render","old_version":"2.0.4","new_version":"2.0.8","repository_url":"https://github.com/resend/react-email"},{"name":"@react-email/preview-server","old_version":"5.2.8","new_version":"5.2.10","repository_url":"https://github.com/resend/react-email"},{"name":"react-email","old_version":"5.2.8","new_version":"6.5.0","repository_url":"https://github.com/resend/react-email"},{"name":"@astrojs/react","old_version":"4.4.2","new_version":"5.0.6","repository_url":"https://github.com/withastro/astro"},{"name":"astro","old_version":"5.17.2","new_version":"6.4.2","repository_url":"https://github.com/withastro/astro"},{"name":"dotenv","old_version":"17.3.1","new_version":"17.4.2","repository_url":"https://github.com/motdotla/dotenv"},{"name":"drizzle-kit","old_version":"0.31.9","new_version":"0.31.10","repository_url":"https://github.com/drizzle-team/drizzle-orm"},{"name":"@modelcontextprotocol/sdk","old_version":"1.26.0","new_version":"1.29.0","repository_url":"https://github.com/modelcontextprotocol/typescript-sdk"},{"name":"got","old_version":"14.6.6","new_version":"15.0.5","repository_url":"https://github.com/sindresorhus/got"}],"path":null,"ecosystem":"npm"},"body":"Bumps the all-dependencies group with 69 updates:\n\n| Package | From | To |\n| --- | --- | --- |\n| [@eslint-react/eslint-plugin](https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin) | `2.13.0` | `5.8.9` |\n| [@eslint/js](https://github.com/eslint/eslint/tree/HEAD/packages/js) | `9.39.2` | `10.0.1` |\n| [@typescript-eslint/eslint-plugin](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin) | `8.56.0` | `8.60.0` |\n| [@typescript-eslint/parser](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/parser) | `8.56.0` | `8.60.0` |\n| [eslint](https://github.com/eslint/eslint) | `9.39.2` | `10.4.1` |\n| [eslint-import-resolver-typescript](https://github.com/import-js/eslint-import-resolver-typescript) | `4.4.4` | `4.4.5` |\n| [eslint-plugin-react-hooks](https://github.com/facebook/react/tree/HEAD/packages/eslint-plugin-react-hooks) | `7.0.1` | `7.1.1` |\n| [globals](https://github.com/sindresorhus/globals) | `17.3.0` | `17.6.0` |\n| [graphql](https://github.com/graphql/graphql-js) | `16.12.0` | `16.14.0` |\n| [happy-dom](https://github.com/capricorn86/happy-dom) | `20.6.2` | `20.9.0` |\n| [jiti](https://github.com/unjs/jiti) | `2.6.1` | `2.7.0` |\n| [lint-staged](https://github.com/lint-staged/lint-staged) | `16.2.7` | `17.0.7` |\n| [mermaid](https://github.com/mermaid-js/mermaid) | `11.12.3` | `11.15.0` |\n| [prettier](https://github.com/prettier/prettier) | `3.8.1` | `3.8.3` |\n| [react](https://github.com/facebook/react/tree/HEAD/packages/react) | `19.2.4` | `19.2.6` |\n| [@types/react](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/react) | `19.2.14` | `19.2.15` |\n| [typescript](https://github.com/microsoft/TypeScript) | `5.9.3` | `6.0.3` |\n| [typescript-eslint](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/typescript-eslint) | `8.56.0` | `8.60.0` |\n| [typescript-language-server](https://github.com/typescript-language-server/typescript-language-server) | `5.1.3` | `5.3.0` |\n| [vite](https://github.com/vitejs/vite/tree/HEAD/packages/vite) | `7.3.1` | `8.0.15` |\n| [vitepress](https://github.com/vuejs/vitepress) | `2.0.0-alpha.16` | `2.0.0-alpha.17` |\n| [vitepress-plugin-llms](https://github.com/okineadev/vitepress-plugin-llms) | `1.11.0` | `1.13.1` |\n| [vitest](https://github.com/vitest-dev/vitest/tree/HEAD/packages/vitest) | `4.0.18` | `4.1.8` |\n| [wrangler](https://github.com/cloudflare/workers-sdk/tree/HEAD/packages/wrangler) | `4.66.0` | `4.95.0` |\n| [@ai-sdk/openai](https://github.com/vercel/ai/tree/HEAD/packages/openai) | `3.0.29` | `3.0.67` |\n| [@better-auth/passkey](https://github.com/better-auth/better-auth/tree/HEAD/packages/passkey) | `1.4.18` | `1.6.13` |\n| [@better-auth/stripe](https://github.com/better-auth/better-auth/tree/HEAD/packages/stripe) | `1.4.18` | `1.6.13` |\n| [@trpc/server](https://github.com/trpc/trpc/tree/HEAD/packages/server) | `11.10.0` | `11.17.0` |\n| [ai](https://github.com/vercel/ai/tree/HEAD/packages/ai) | `6.0.91` | `6.0.193` |\n| [better-auth](https://github.com/better-auth/better-auth/tree/HEAD/packages/better-auth) | `1.4.18` | `1.6.13` |\n| [drizzle-orm](https://github.com/drizzle-team/drizzle-orm) | `0.45.1` | `0.45.2` |\n| [postgres](https://github.com/porsager/postgres) | `3.4.8` | `3.4.9` |\n| [resend](https://github.com/resend/resend-node) | `6.9.2` | `6.12.4` |\n| [stripe](https://github.com/stripe/stripe-node) | `20.3.1` | `22.2.0` |\n| [@cloudflare/workers-types](https://github.com/cloudflare/workerd) | `4.20260218.0` | `4.20260601.1` |\n| [@types/bun](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/bun) | `1.3.9` | `1.3.14` |\n| [hono](https://github.com/honojs/hono) | `4.11.10` | `4.12.23` |\n| [zod](https://github.com/colinhacks/zod) | `4.3.6` | `4.4.3` |\n| [@tanstack/react-query](https://github.com/TanStack/query/tree/HEAD/packages/react-query) | `5.90.21` | `5.100.14` |\n| [@tanstack/react-router](https://github.com/TanStack/router/tree/HEAD/packages/react-router) | `1.161.1` | `1.170.10` |\n| [@trpc/client](https://github.com/trpc/trpc/tree/HEAD/packages/client) | `11.10.0` | `11.17.0` |\n| [@trpc/tanstack-react-query](https://github.com/trpc/trpc/tree/HEAD/packages/tanstack-react-query) | `11.10.0` | `11.17.0` |\n| [jotai](https://github.com/pmndrs/jotai) | `2.17.1` | `2.20.0` |\n| [jotai-effect](https://github.com/jotaijs/jotai-effect) | `2.2.3` | `2.3.1` |\n| [lucide-react](https://github.com/lucide-icons/lucide/tree/HEAD/packages/lucide-react) | `0.574.0` | `1.17.0` |\n| [react-dom](https://github.com/facebook/react/tree/HEAD/packages/react-dom) | `19.2.4` | `19.2.6` |\n| [react-error-boundary](https://github.com/bvaughn/react-error-boundary) | `6.1.1` | `6.1.2` |\n| [tailwind-merge](https://github.com/dcastil/tailwind-merge) | `3.4.1` | `3.6.0` |\n| [@tailwindcss/postcss](https://github.com/tailwindlabs/tailwindcss/tree/HEAD/packages/@tailwindcss-postcss) | `4.2.0` | `4.3.0` |\n| [@tanstack/react-query-devtools](https://github.com/TanStack/query/tree/HEAD/packages/react-query-devtools) | `5.91.3` | `5.100.14` |\n| [@tanstack/react-router-devtools](https://github.com/TanStack/router/tree/HEAD/packages/react-router-devtools) | `1.161.1` | `1.167.0` |\n| [@tanstack/router-plugin](https://github.com/TanStack/router/tree/HEAD/packages/router-plugin) | `1.161.1` | `1.168.13` |\n| [@types/node](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/node) | `25.2.3` | `25.9.1` |\n| [@vitejs/plugin-react](https://github.com/vitejs/vite-plugin-react/tree/HEAD/packages/plugin-react) | `5.1.4` | `6.0.2` |\n| [@vitejs/plugin-react-swc](https://github.com/vitejs/vite-plugin-react/tree/HEAD/packages/plugin-react-swc) | `4.2.3` | `4.3.1` |\n| [autoprefixer](https://github.com/postcss/autoprefixer) | `10.4.24` | `10.5.0` |\n| [globby](https://github.com/sindresorhus/globby) | `16.1.1` | `16.2.0` |\n| [postcss](https://github.com/postcss/postcss) | `8.5.6` | `8.5.15` |\n| [tailwindcss](https://github.com/tailwindlabs/tailwindcss/tree/HEAD/packages/tailwindcss) | `4.2.0` | `4.3.0` |\n| [@react-email/components](https://github.com/resend/react-email/tree/HEAD/packages/components) | `1.0.8` | `1.0.12` |\n| [@react-email/render](https://github.com/resend/react-email/tree/HEAD/packages/render) | `2.0.4` | `2.0.8` |\n| [@react-email/preview-server](https://github.com/resend/react-email/tree/HEAD/packages/preview-server) | `5.2.8` | `5.2.10` |\n| [react-email](https://github.com/resend/react-email/tree/HEAD/packages/react-email) | `5.2.8` | `6.5.0` |\n| [@astrojs/react](https://github.com/withastro/astro/tree/HEAD/packages/integrations/react) | `4.4.2` | `5.0.6` |\n| [astro](https://github.com/withastro/astro/tree/HEAD/packages/astro) | `5.17.2` | `6.4.2` |\n| [dotenv](https://github.com/motdotla/dotenv) | `17.3.1` | `17.4.2` |\n| [drizzle-kit](https://github.com/drizzle-team/drizzle-orm) | `0.31.9` | `0.31.10` |\n| [@modelcontextprotocol/sdk](https://github.com/modelcontextprotocol/typescript-sdk) | `1.26.0` | `1.29.0` |\n| [got](https://github.com/sindresorhus/got) | `14.6.6` | `15.0.5` |\n\nUpdates `@eslint-react/eslint-plugin` from 2.13.0 to 5.8.9\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/Rel1cx/eslint-react/releases\"\u003e@​eslint-react/eslint-plugin's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev5.8.9 (2026-06-01)\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003ch3\u003e🐞 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003e\u003ccode\u003ereact-x/no-direct-mutation-state\u003c/code\u003e\u003c/strong\u003e: Detect nested state mutations and member expressions in assignment expressions (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1818\"\u003e#1818\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e📝 Documentation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpdated contributing guide and monorepo structure documentation.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🏗️ Internal\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eExamples\u003c/strong\u003e: Removed \u003ccode\u003e.vscode\u003c/code\u003e directories from all examples, added missing \u003ccode\u003eengines.node\u003c/code\u003e to Preact examples, cleaned up redundant \u003ccode\u003e.config/*.ts\u003c/code\u003e from \u003ccode\u003etsconfig.node.json\u003c/code\u003e, and updated \u003ccode\u003e.gitignore\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eWebsite\u003c/strong\u003e: Cleaned up configs and docs.\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eDeps\u003c/strong\u003e: Patch bumped \u003ccode\u003eeslint\u003c/code\u003e, \u003ccode\u003etinyglobby\u003c/code\u003e, and \u003ccode\u003etsdown\u003c/code\u003e across workspace packages; added \u003ccode\u003e@fontsource/iosevka-aile\u003c/code\u003e to the website; reordered CSS imports in \u003ccode\u003elayout.tsx\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003eUpdated \u003ccode\u003e.sentrux\u003c/code\u003e baseline timestamp.\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/Rel1cx/eslint-react/compare/v5.8.8...v5.8.9\"\u003ehttps://github.com/Rel1cx/eslint-react/compare/v5.8.8...v5.8.9\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003eAttestation\u003c/h2\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/attestations/29343471\"\u003ehttps://github.com/Rel1cx/eslint-react/attestations/29343471\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev5.8.8 (2026-05-31)\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003ch3\u003e📝 Documentation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003e\u003ccode\u003ekit\u003c/code\u003e\u003c/strong\u003e: Added \u003ccode\u003eis.APICall\u003c/code\u003e callout to the Kit documentation (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1813\"\u003e#1813\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003e\u003ccode\u003ejsx\u003c/code\u003e\u003c/strong\u003e: Updated \u003ccode\u003egetChildren\u003c/code\u003e and \u003ccode\u003ehasChildren\u003c/code\u003e API documentation to reflect empty string children behavior.\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eWebsite\u003c/strong\u003e: Reworked status emoji indicators across docs and examples (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1816\"\u003e#1816\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eWebsite\u003c/strong\u003e: Added ℞ prefix to recipe titles and cleaned up See Also sections.\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eWebsite\u003c/strong\u003e: Removed the \u003ccode\u003ecustom-rules-of-children\u003c/code\u003e recipe and cross-linked the remaining recipes.\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eWebsite\u003c/strong\u003e: Added redirects for moved rule documentation.\u003c/li\u003e\n\u003cli\u003eCleaned up the \u0026quot;Community Maintained Presets that use ESLint React\u0026quot; documentation page.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🏗️ Internal\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003e\u003ccode\u003ereact-x/no-misused-capture-owner-stack\u003c/code\u003e\u003c/strong\u003e: Added edge-case tests for \u003ccode\u003ecaptureOwnerStack\u003c/code\u003e (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1813\"\u003e#1813\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eWebsite\u003c/strong\u003e: Updated fonts and dropped the \u003ccode\u003edata-theme\u003c/code\u003e attribute.\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eWebsite\u003c/strong\u003e: Updated theme configuration (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1815\"\u003e#1815\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eMonorepo\u003c/strong\u003e: Aligned the \u003ccode\u003etsdown\u003c/code\u003e version in \u003ccode\u003e@local/configs\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003epnpm-workspace\u003c/strong\u003e: Enabled \u003ccode\u003etrustPolicy: \u0026quot;no-downgrade\u0026quot;\u003c/code\u003e and added \u003ccode\u003eminimumReleaseAge: 1440\u003c/code\u003e (1 day).\u003c/li\u003e\n\u003cli\u003eBumped \u003ccode\u003eeslint\u003c/code\u003e to \u003ccode\u003e10.4.1\u003c/code\u003e across workspace packages.\u003c/li\u003e\n\u003cli\u003eBumped \u003ccode\u003epnpm\u003c/code\u003e to \u003ccode\u003e11.5.0\u003c/code\u003e and refreshed the lockfile.\u003c/li\u003e\n\u003cli\u003eBumped \u003ccode\u003efumadocs\u003c/code\u003e packages and \u003ccode\u003etinyexec\u003c/code\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/Rel1cx/eslint-react/blob/main/CHANGELOG.md\"\u003e@​eslint-react/eslint-plugin's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev5.8.9 (2026-06-01)\u003c/h2\u003e\n\u003ch3\u003e🐞 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003e\u003ccode\u003ereact-x/no-direct-mutation-state\u003c/code\u003e\u003c/strong\u003e: Detect nested state mutations and member expressions in assignment expressions (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1818\"\u003e#1818\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e📝 Documentation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpdated contributing guide and monorepo structure documentation.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🏗️ Internal\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eExamples\u003c/strong\u003e: Removed \u003ccode\u003e.vscode\u003c/code\u003e directories from all examples, added missing \u003ccode\u003eengines.node\u003c/code\u003e to Preact examples, cleaned up redundant \u003ccode\u003e.config/*.ts\u003c/code\u003e from \u003ccode\u003etsconfig.node.json\u003c/code\u003e, and updated \u003ccode\u003e.gitignore\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eWebsite\u003c/strong\u003e: Cleaned up configs and docs.\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eDeps\u003c/strong\u003e: Patch bumped \u003ccode\u003eeslint\u003c/code\u003e, \u003ccode\u003etinyglobby\u003c/code\u003e, and \u003ccode\u003etsdown\u003c/code\u003e across workspace packages; added \u003ccode\u003e@fontsource/iosevka-aile\u003c/code\u003e to the website; reordered CSS imports in \u003ccode\u003elayout.tsx\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003eUpdated \u003ccode\u003e.sentrux\u003c/code\u003e baseline timestamp.\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/Rel1cx/eslint-react/compare/v5.8.8...v5.8.9\"\u003ehttps://github.com/Rel1cx/eslint-react/compare/v5.8.8...v5.8.9\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev5.8.8 (2026-05-31)\u003c/h2\u003e\n\u003ch3\u003e📝 Documentation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003e\u003ccode\u003ekit\u003c/code\u003e\u003c/strong\u003e: Added \u003ccode\u003eis.APICall\u003c/code\u003e callout to the Kit documentation (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1813\"\u003e#1813\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003e\u003ccode\u003ejsx\u003c/code\u003e\u003c/strong\u003e: Updated \u003ccode\u003egetChildren\u003c/code\u003e and \u003ccode\u003ehasChildren\u003c/code\u003e API documentation to reflect empty string children behavior.\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eWebsite\u003c/strong\u003e: Reworked status emoji indicators across docs and examples (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1816\"\u003e#1816\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eWebsite\u003c/strong\u003e: Added ℞ prefix to recipe titles and cleaned up See Also sections.\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eWebsite\u003c/strong\u003e: Removed the \u003ccode\u003ecustom-rules-of-children\u003c/code\u003e recipe and cross-linked the remaining recipes.\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eWebsite\u003c/strong\u003e: Added redirects for moved rule documentation.\u003c/li\u003e\n\u003cli\u003eCleaned up the \u0026quot;Community Maintained Presets that use ESLint React\u0026quot; documentation page.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🏗️ Internal\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003e\u003ccode\u003ereact-x/no-misused-capture-owner-stack\u003c/code\u003e\u003c/strong\u003e: Added edge-case tests for \u003ccode\u003ecaptureOwnerStack\u003c/code\u003e (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1813\"\u003e#1813\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eWebsite\u003c/strong\u003e: Updated fonts and dropped the \u003ccode\u003edata-theme\u003c/code\u003e attribute.\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eWebsite\u003c/strong\u003e: Updated theme configuration (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1815\"\u003e#1815\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eMonorepo\u003c/strong\u003e: Aligned the \u003ccode\u003etsdown\u003c/code\u003e version in \u003ccode\u003e@local/configs\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003epnpm-workspace\u003c/strong\u003e: Enabled \u003ccode\u003etrustPolicy: \u0026quot;no-downgrade\u0026quot;\u003c/code\u003e and added \u003ccode\u003eminimumReleaseAge: 1440\u003c/code\u003e (1 day).\u003c/li\u003e\n\u003cli\u003eBumped \u003ccode\u003eeslint\u003c/code\u003e to \u003ccode\u003e10.4.1\u003c/code\u003e across workspace packages.\u003c/li\u003e\n\u003cli\u003eBumped \u003ccode\u003epnpm\u003c/code\u003e to \u003ccode\u003e11.5.0\u003c/code\u003e and refreshed the lockfile.\u003c/li\u003e\n\u003cli\u003eBumped \u003ccode\u003efumadocs\u003c/code\u003e packages and \u003ccode\u003etinyexec\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003eBumped \u003ccode\u003eeslint-plugin-package-json\u003c/code\u003e to \u003ccode\u003e1.2.0\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003eUpdated dprint plugins and reformatted font families in example projects.\u003c/li\u003e\n\u003cli\u003eUpdated Sentrux baseline metrics.\u003c/li\u003e\n\u003cli\u003eUpdated \u003ccode\u003e.gitignore\u003c/code\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/Rel1cx/eslint-react/compare/v5.8.7...v5.8.8\"\u003ehttps://github.com/Rel1cx/eslint-react/compare/v5.8.7...v5.8.8\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev5.8.7 (2026-05-29)\u003c/h2\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/ff9258dc21cd08546d20e8596d2de9e5387a6875\"\u003e\u003ccode\u003eff9258d\u003c/code\u003e\u003c/a\u003e release: 5.8.9\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/60e2514c793e3f7c06f6bb1f81ac6a20da014cfa\"\u003e\u003ccode\u003e60e2514\u003c/code\u003e\u003c/a\u003e release: 5.8.8\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/5b62a422ea43365ed2abab803a95f34cab47a335\"\u003e\u003ccode\u003e5b62a42\u003c/code\u003e\u003c/a\u003e Update baseline timestamp and bump eslint to 10.4.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/0e85aa0e12f2f1cfe0c0203908f0a4e32e4c8c06\"\u003e\u003ccode\u003e0e85aa0\u003c/code\u003e\u003c/a\u003e release: 5.8.7\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/d2e2d2db15ca432a571831238bdfca72a5485d9f\"\u003e\u003ccode\u003ed2e2d2d\u003c/code\u003e\u003c/a\u003e release: 5.8.7-beta.5\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/7f9bd4a174d1ff660087c82d28ba6faea375c791\"\u003e\u003ccode\u003e7f9bd4a\u003c/code\u003e\u003c/a\u003e release: 5.8.7-beta.4\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/449f940c05ff05556d8af9b7bcc3098bcef463a9\"\u003e\u003ccode\u003e449f940\u003c/code\u003e\u003c/a\u003e docs: fix inaccurate minimum ESLint version and off preset description in README\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/846014c8c4d4cfe8b22a67424f2c15b339f8bb1f\"\u003e\u003ccode\u003e846014c\u003c/code\u003e\u003c/a\u003e release: 5.8.7-beta.3\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/9ad3404c5ae8a48c14a6e23b121250ec78364f85\"\u003e\u003ccode\u003e9ad3404\u003c/code\u003e\u003c/a\u003e release: 5.8.7-beta.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/a29c464e7111dd9df50d549c9b749f4254a68014\"\u003e\u003ccode\u003ea29c464\u003c/code\u003e\u003c/a\u003e release: 5.8.7-beta.1\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/Rel1cx/eslint-react/commits/v5.8.9/plugins/eslint-plugin\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@eslint/js` from 9.39.2 to 10.0.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/eslint/eslint/releases\"\u003e@​eslint/js's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev10.0.1\u003c/h2\u003e\n\u003ch2\u003eBug Fixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/c87d5bded54c5cf491eb04c24c9d09bbbd42c23e\"\u003e\u003ccode\u003ec87d5bd\u003c/code\u003e\u003c/a\u003e fix: update eslint (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20531\"\u003e#20531\u003c/a\u003e) (renovate[bot])\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/d84100115c14691691058f00779c94e74fca946a\"\u003e\u003ccode\u003ed841001\u003c/code\u003e\u003c/a\u003e fix: update \u003ccode\u003eminimatch\u003c/code\u003e to \u003ccode\u003e10.2.1\u003c/code\u003e to address security vulnerabilities (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20519\"\u003e#20519\u003c/a\u003e) (루밀LuMir)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/04c21475b3004904948f02049f2888b401d82c78\"\u003e\u003ccode\u003e04c2147\u003c/code\u003e\u003c/a\u003e fix: update error message for unused suppressions (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20496\"\u003e#20496\u003c/a\u003e) (fnx)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/38b089c1726feac0e31a31d47941bd99e29ce003\"\u003e\u003ccode\u003e38b089c\u003c/code\u003e\u003c/a\u003e fix: update dependency \u003ccode\u003e@​eslint/config-array\u003c/code\u003e to ^0.23.1 (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20484\"\u003e#20484\u003c/a\u003e) (renovate[bot])\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eDocumentation\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/5b3dbce50a1404a9f118afe810cefeee79388a2a\"\u003e\u003ccode\u003e5b3dbce\u003c/code\u003e\u003c/a\u003e docs: add AI acknowledgement section to templates (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20431\"\u003e#20431\u003c/a\u003e) (루밀LuMir)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/6f23076037d5879f20fb3be2ef094293b1e8d38c\"\u003e\u003ccode\u003e6f23076\u003c/code\u003e\u003c/a\u003e docs: toggle nav in no-JS mode (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20476\"\u003e#20476\u003c/a\u003e) (Tanuj Kanti)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/b69cfb32a16c5d5e9986390d484fae1d21e406f9\"\u003e\u003ccode\u003eb69cfb3\u003c/code\u003e\u003c/a\u003e docs: Update README (GitHub Actions Bot)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eChores\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/e5c281ffd038a3a7a3e5364db0b9378e0ad83020\"\u003e\u003ccode\u003ee5c281f\u003c/code\u003e\u003c/a\u003e chore: updates for v9.39.3 release (Jenkins)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/8c3832adb77cd993b4a24891900d5eeaaf093cdc\"\u003e\u003ccode\u003e8c3832a\u003c/code\u003e\u003c/a\u003e chore: update \u003ccode\u003e@​typescript-eslint/parser\u003c/code\u003e to ^8.56.0 (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20514\"\u003e#20514\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/8330d238ae6adb68bb6a1c9381e38cfedd990d94\"\u003e\u003ccode\u003e8330d23\u003c/code\u003e\u003c/a\u003e test: add tests for config-api (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20493\"\u003e#20493\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/37d6e91e88fa6a2ca6d8726679096acff21ba6cc\"\u003e\u003ccode\u003e37d6e91\u003c/code\u003e\u003c/a\u003e chore: remove eslint v10 prereleases from eslint-config-eslint deps (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20494\"\u003e#20494\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/da7cd0e79197ad16e17052eef99df141de6dbfb1\"\u003e\u003ccode\u003eda7cd0e\u003c/code\u003e\u003c/a\u003e refactor: cleanup error message templates (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20479\"\u003e#20479\u003c/a\u003e) (Francesco Trotta)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/84fb885d49ac810e79a9491276b4828b53d913e5\"\u003e\u003ccode\u003e84fb885\u003c/code\u003e\u003c/a\u003e chore: package.json update for \u003ccode\u003e@​eslint/js\u003c/code\u003e release (Jenkins)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/1f667344b57c4c09b548d94bcfac1f91b6e5c63d\"\u003e\u003ccode\u003e1f66734\u003c/code\u003e\u003c/a\u003e chore: add \u003ccode\u003eeslint\u003c/code\u003e to \u003ccode\u003epeerDependencies\u003c/code\u003e of \u003ccode\u003e@eslint/js\u003c/code\u003e (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20467\"\u003e#20467\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev10.0.0\u003c/h2\u003e\n\u003ch2\u003eBreaking Changes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/f9e54f43a5e497cdfa179338b431093245cb787b\"\u003e\u003ccode\u003ef9e54f4\u003c/code\u003e\u003c/a\u003e feat!: estimate rule-tester failure location (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20420\"\u003e#20420\u003c/a\u003e) (ST-DDT)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/a176319d8ade1a7d9b2d7fb8f038f55a2662325f\"\u003e\u003ccode\u003ea176319\u003c/code\u003e\u003c/a\u003e feat!: replace \u003ccode\u003echalk\u003c/code\u003e with \u003ccode\u003estyleText\u003c/code\u003e and add \u003ccode\u003ecolor\u003c/code\u003e to \u003ccode\u003eResultsMeta\u003c/code\u003e (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20227\"\u003e#20227\u003c/a\u003e) (루밀LuMir)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/c7046e6c1e03c4ca0eee4888a1f2eba4c6454f84\"\u003e\u003ccode\u003ec7046e6\u003c/code\u003e\u003c/a\u003e feat!: enable JSX reference tracking (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20152\"\u003e#20152\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/fa31a608901684fbcd9906d1907e66561d16e5aa\"\u003e\u003ccode\u003efa31a60\u003c/code\u003e\u003c/a\u003e feat!: add \u003ccode\u003ename\u003c/code\u003e to configs (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20015\"\u003e#20015\u003c/a\u003e) (Kirk Waiblinger)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/3383e7ec9028166cafc8ea7986c2f7498d0049f0\"\u003e\u003ccode\u003e3383e7e\u003c/code\u003e\u003c/a\u003e fix!: remove deprecated \u003ccode\u003eSourceCode\u003c/code\u003e methods (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20137\"\u003e#20137\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/501abd0e916a35554c58b7c0365537f1fa3880ce\"\u003e\u003ccode\u003e501abd0\u003c/code\u003e\u003c/a\u003e feat!: update dependency minimatch to v10 (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20246\"\u003e#20246\u003c/a\u003e) (renovate[bot])\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/ca4d3b40085de47561f89656a2207d09946ed45e\"\u003e\u003ccode\u003eca4d3b4\u003c/code\u003e\u003c/a\u003e fix!: stricter rule tester assertions for valid test cases (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20125\"\u003e#20125\u003c/a\u003e) (唯然)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/96512a66c86402fb0538cdcb6cd30b9073f6bf3b\"\u003e\u003ccode\u003e96512a6\u003c/code\u003e\u003c/a\u003e fix!: Remove deprecated rule context methods (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20086\"\u003e#20086\u003c/a\u003e) (Nicholas C. Zakas)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/c69fdacdb2e886b9d965568a397aa8220db3fe90\"\u003e\u003ccode\u003ec69fdac\u003c/code\u003e\u003c/a\u003e feat!: remove eslintrc support (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20037\"\u003e#20037\u003c/a\u003e) (Francesco Trotta)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/208b5cc34a8374ff81412b5bec2e0800eebfbd04\"\u003e\u003ccode\u003e208b5cc\u003c/code\u003e\u003c/a\u003e feat!: Use \u003ccode\u003eScopeManager#addGlobals()\u003c/code\u003e (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20132\"\u003e#20132\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/a2ee188ea7a38a0c6155f3d39e2b00e1d0f36e14\"\u003e\u003ccode\u003ea2ee188\u003c/code\u003e\u003c/a\u003e fix!: add \u003ccode\u003euniqueItems: true\u003c/code\u003e in \u003ccode\u003eno-invalid-regexp\u003c/code\u003e option (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20155\"\u003e#20155\u003c/a\u003e) (Tanuj Kanti)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/a89059dbf2832d417dd493ee81483227ec44e4ab\"\u003e\u003ccode\u003ea89059d\u003c/code\u003e\u003c/a\u003e feat!: Program range span entire source text (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20133\"\u003e#20133\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/39a6424373d915fa9de0d7b0caba9a4dc3da9b53\"\u003e\u003ccode\u003e39a6424\u003c/code\u003e\u003c/a\u003e fix!: assert 'text' is a string across all RuleFixer methods (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20082\"\u003e#20082\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/f28fbf846244e043c92b355b224d121b06140b44\"\u003e\u003ccode\u003ef28fbf8\u003c/code\u003e\u003c/a\u003e fix!: Deprecate \u003ccode\u003e\u0026quot;always\u0026quot;\u003c/code\u003e and \u003ccode\u003e\u0026quot;as-needed\u0026quot;\u003c/code\u003e options of the \u003ccode\u003eradix\u003c/code\u003e rule (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20223\"\u003e#20223\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/aa3fb2b233e929b37220be940575f42c280e0b98\"\u003e\u003ccode\u003eaa3fb2b\u003c/code\u003e\u003c/a\u003e fix!: tighten \u003ccode\u003efunc-names\u003c/code\u003e schema (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20119\"\u003e#20119\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/f6c0ed0311dcfee853367d5068c765d066e6b756\"\u003e\u003ccode\u003ef6c0ed0\u003c/code\u003e\u003c/a\u003e feat!: report \u003ccode\u003eeslint-env\u003c/code\u003e comments as errors (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20128\"\u003e#20128\u003c/a\u003e) (Francesco Trotta)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/4bf739fb533e59f7f0a66b65f7bc80be0f37d8db\"\u003e\u003ccode\u003e4bf739f\u003c/code\u003e\u003c/a\u003e fix!: remove deprecated \u003ccode\u003eLintMessage#nodeType\u003c/code\u003e and \u003ccode\u003eTestCaseError#type\u003c/code\u003e (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20096\"\u003e#20096\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/523c076866400670fb2192a3f55dbf7ad3469247\"\u003e\u003ccode\u003e523c076\u003c/code\u003e\u003c/a\u003e feat!: drop support for jiti \u0026lt; 2.2.0 (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20016\"\u003e#20016\u003c/a\u003e) (michael faith)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/454a292c95f34dad232411ddac06408e6383bb64\"\u003e\u003ccode\u003e454a292\u003c/code\u003e\u003c/a\u003e feat!: update \u003ccode\u003eeslint:recommended\u003c/code\u003e configuration (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20210\"\u003e#20210\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/4f880ee02992e1bf0e96ebaba679985e2d1295f1\"\u003e\u003ccode\u003e4f880ee\u003c/code\u003e\u003c/a\u003e feat!: remove \u003ccode\u003ev10_*\u003c/code\u003e and inactive \u003ccode\u003eunstable_*\u003c/code\u003e flags (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20225\"\u003e#20225\u003c/a\u003e) (sethamus)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/f18115c363a4ac7671a4c7f30ee13d57ebba330f\"\u003e\u003ccode\u003ef18115c\u003c/code\u003e\u003c/a\u003e feat!: \u003ccode\u003eno-shadow-restricted-names\u003c/code\u003e report \u003ccode\u003eglobalThis\u003c/code\u003e by default (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20027\"\u003e#20027\u003c/a\u003e) (sethamus)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/c6358c31fbd3937b92d89be2618ffdf5a774604e\"\u003e\u003ccode\u003ec6358c3\u003c/code\u003e\u003c/a\u003e feat!: Require Node.js \u003ccode\u003e^20.19.0 || ^22.13.0 || \u0026gt;=24\u003c/code\u003e (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20160\"\u003e#20160\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eFeatures\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/bff9091927811497dbf066b0e3b85ecb37d43822\"\u003e\u003ccode\u003ebff9091\u003c/code\u003e\u003c/a\u003e feat: handle \u003ccode\u003eArray.fromAsync\u003c/code\u003e in \u003ccode\u003earray-callback-return\u003c/code\u003e (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20457\"\u003e#20457\u003c/a\u003e) (Francesco Trotta)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/290c594bb50c439fb71bc75521ee5360daa8c222\"\u003e\u003ccode\u003e290c594\u003c/code\u003e\u003c/a\u003e feat: add \u003ccode\u003eself\u003c/code\u003e to \u003ccode\u003eno-implied-eval\u003c/code\u003e rule (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20468\"\u003e#20468\u003c/a\u003e) (sethamus)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/43677de07ebd6e14bfac40a46ad749ba783c45f2\"\u003e\u003ccode\u003e43677de\u003c/code\u003e\u003c/a\u003e feat: fix handling of function and class expression names in \u003ccode\u003eno-shadow\u003c/code\u003e (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20432\"\u003e#20432\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/84fb885d49ac810e79a9491276b4828b53d913e5\"\u003e\u003ccode\u003e84fb885\u003c/code\u003e\u003c/a\u003e chore: package.json update for \u003ccode\u003e@​eslint/js\u003c/code\u003e release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/1f667344b57c4c09b548d94bcfac1f91b6e5c63d\"\u003e\u003ccode\u003e1f66734\u003c/code\u003e\u003c/a\u003e chore: add \u003ccode\u003eeslint\u003c/code\u003e to \u003ccode\u003epeerDependencies\u003c/code\u003e of \u003ccode\u003e@eslint/js\u003c/code\u003e (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20467\"\u003e#20467\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/f3fbc2f60cbe2c718364feb8c3fc0452c0df3c56\"\u003e\u003ccode\u003ef3fbc2f\u003c/code\u003e\u003c/a\u003e chore: set \u003ccode\u003e@eslint/js\u003c/code\u003e version to 10.0.0 to skip releasing it (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20466\"\u003e#20466\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/b4b3127f8542c599ce2dea804b6582ebc40c993d\"\u003e\u003ccode\u003eb4b3127\u003c/code\u003e\u003c/a\u003e chore: package.json update for \u003ccode\u003e@​eslint/js\u003c/code\u003e release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/0b14059491d830a49b3577931f4f68fbcfce6be5\"\u003e\u003ccode\u003e0b14059\u003c/code\u003e\u003c/a\u003e chore: package.json update for \u003ccode\u003e@​eslint/js\u003c/code\u003e release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/fa31a608901684fbcd9906d1907e66561d16e5aa\"\u003e\u003ccode\u003efa31a60\u003c/code\u003e\u003c/a\u003e feat!: add \u003ccode\u003ename\u003c/code\u003e to configs (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20015\"\u003e#20015\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/1e2cad5f6fa47ed6ed89d2a29798dda926d50990\"\u003e\u003ccode\u003e1e2cad5\u003c/code\u003e\u003c/a\u003e chore: package.json update for \u003ccode\u003e@​eslint/js\u003c/code\u003e release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/454a292c95f34dad232411ddac06408e6383bb64\"\u003e\u003ccode\u003e454a292\u003c/code\u003e\u003c/a\u003e feat!: update \u003ccode\u003eeslint:recommended\u003c/code\u003e configuration (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20210\"\u003e#20210\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/c6358c31fbd3937b92d89be2618ffdf5a774604e\"\u003e\u003ccode\u003ec6358c3\u003c/code\u003e\u003c/a\u003e feat!: Require Node.js \u003ccode\u003e^20.19.0 || ^22.13.0 || \u0026gt;=24\u003c/code\u003e (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20160\"\u003e#20160\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/eslint/eslint/commits/v10.0.1/packages/js\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@typescript-eslint/eslint-plugin` from 8.56.0 to 8.60.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases\"\u003e@​typescript-eslint/eslint-plugin's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev8.60.0\u003c/h2\u003e\n\u003ch2\u003e8.60.0 (2026-05-25)\u003c/h2\u003e\n\u003ch3\u003e🚀 Features\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003erule-tester:\u003c/strong\u003e added updates of RuleTester from upstream (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12291\"\u003e#12291\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🩹 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eplayground TS version selector is not working (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12326\"\u003e#12326\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/issues/12325\"\u003e#12325\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e❤️ Thank You\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eEvyatar Daud \u003ca href=\"https://github.com/StyleShit\"\u003e\u003ccode\u003e@​StyleShit\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eVinccool96\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.60.0\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003ev8.59.4\u003c/h2\u003e\n\u003ch2\u003e8.59.4 (2026-05-18)\u003c/h2\u003e\n\u003ch3\u003e🩹 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-floating-promises] stack overflow when using recursive types (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12294\"\u003e#12294\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eproject-service:\u003c/strong\u003e throw error cause in \u003ccode\u003egetParsedConfigFileFromTSServer\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12321\"\u003e#12321\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003etypescript-eslint:\u003c/strong\u003e export Compatible* types from typescript-eslint to resolve pnpm TS error (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12340\"\u003e#12340\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e❤️ Thank You\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eEvyatar Daud \u003ca href=\"https://github.com/StyleShit\"\u003e\u003ccode\u003e@​StyleShit\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eKirk Waiblinger \u003ca href=\"https://github.com/kirkwaiblinger\"\u003e\u003ccode\u003e@​kirkwaiblinger\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003elumir\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.4\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003ev8.59.3\u003c/h2\u003e\n\u003ch2\u003e8.59.3 (2026-05-11)\u003c/h2\u003e\n\u003cp\u003eThis was a version bump only, there were no code changes.\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.3\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003ev8.59.2\u003c/h2\u003e\n\u003ch2\u003e8.59.2 (2026-05-04)\u003c/h2\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/CHANGELOG.md\"\u003e@​typescript-eslint/eslint-plugin's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e8.60.0 (2026-05-25)\u003c/h2\u003e\n\u003cp\u003eThis was a version bump only for eslint-plugin to align it with other projects, there were no code changes.\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.60.0\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003e8.59.4 (2026-05-18)\u003c/h2\u003e\n\u003ch3\u003e🩹 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-floating-promises] stack overflow when using recursive types (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12294\"\u003e#12294\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e❤️ Thank You\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eEvyatar Daud \u003ca href=\"https://github.com/StyleShit\"\u003e\u003ccode\u003e@​StyleShit\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.4\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003e8.59.3 (2026-05-11)\u003c/h2\u003e\n\u003cp\u003eThis was a version bump only for eslint-plugin to align it with other projects, there were no code changes.\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.3\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003e8.59.2 (2026-05-04)\u003c/h2\u003e\n\u003ch3\u003e🩹 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-deprecated] object destructuring values should be treated as declarations (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12292\"\u003e#12292\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unsafe-type-assertion] handle crash on recursive template literal types (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12150\"\u003e#12150\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e❤️ Thank You\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eDima Barabash\u003c/li\u003e\n\u003cli\u003eKirk Waiblinger \u003ca href=\"https://github.com/kirkwaiblinger\"\u003e\u003ccode\u003e@​kirkwaiblinger\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.2\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003e8.59.1 (2026-04-27)\u003c/h2\u003e\n\u003ch3\u003e🩹 Fixes\u003c/h3\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/f891c29de5f3e23f3d8c59cc599d3196e54e9b58\"\u003e\u003ccode\u003ef891c29\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.60.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/ca6ca1431b6d18235297a7e29feb5d98f012dff2\"\u003e\u003ccode\u003eca6ca14\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.59.4\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/4302433ae6bf93d4ddc35264ad1b951254758566\"\u003e\u003ccode\u003e4302433\u003c/code\u003e\u003c/a\u003e fix(eslint-plugin): [no-floating-promises] stack overflow when using recursiv...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/10b79f1ba8e98610a3af85152a1b3b406f91e633\"\u003e\u003ccode\u003e10b79f1\u003c/code\u003e\u003c/a\u003e chore(deps): update dependency eslint to v10.4.0 (\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin/issues/12339\"\u003e#12339\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/2a6765d9628dc776f8127c96f088bb807c0bcab2\"\u003e\u003ccode\u003e2a6765d\u003c/code\u003e\u003c/a\u003e chore: clenaup \u003ccode\u003egetAwaitedType\u003c/code\u003e from \u003ccode\u003etypescript.d.ts\u003c/code\u003e (\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin/issues/12302\"\u003e#12302\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/48e13c0261e3cb1bf4f4dfaa462cdb3a56ef7383\"\u003e\u003ccode\u003e48e13c0\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.59.3\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/e26dc8003ababf078aad4df17765ee4cea30644c\"\u003e\u003ccode\u003ee26dc80\u003c/code\u003e\u003c/a\u003e docs: update stale links to latest (\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin/issues/12313\"\u003e#12313\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/44f9625336841a8ee3eb01a9e02e49b1d7b12648\"\u003e\u003ccode\u003e44f9625\u003c/code\u003e\u003c/a\u003e chore(deps): update vitest monorepo to v4.1.5 (\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin/issues/12307\"\u003e#12307\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/2ec35f1760aade4df4c631d76d78c7ed5e136333\"\u003e\u003ccode\u003e2ec35f1\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.59.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/ec3ef25390f7daf5a9ff33a60282bdbbb49ab0f3\"\u003e\u003ccode\u003eec3ef25\u003c/code\u003e\u003c/a\u003e test: make no-useless-empty-export tests fully static (\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin/issues/12260\"\u003e#12260\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commits/v8.60.0/packages/eslint-plugin\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@typescript-eslint/parser` from 8.56.0 to 8.60.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases\"\u003e@​typescript-eslint/parser's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev8.60.0\u003c/h2\u003e\n\u003ch2\u003e8.60.0 (2026-05-25)\u003c/h2\u003e\n\u003ch3\u003e🚀 Features\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003erule-tester:\u003c/strong\u003e added updates of RuleTester from upstream (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12291\"\u003e#12291\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🩹 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eplayground TS version selector is not working (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12326\"\u003e#12326\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/issues/12325\"\u003e#12325\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e❤️ Thank You\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eEvyatar Daud \u003ca href=\"https://github.com/StyleShit\"\u003e\u003ccode\u003e@​StyleShit\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eVinccool96\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.60.0\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003ev8.59.4\u003c/h2\u003e\n\u003ch2\u003e8.59.4 (2026-05-18)\u003c/h2\u003e\n\u003ch3\u003e🩹 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-floating-promises] stack overflow when using recursive types (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12294\"\u003e#12294\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eproject-service:\u003c/strong\u003e throw error cause in \u003ccode\u003egetParsedConfigFileFromTSServer\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12321\"\u003e#12321\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003etypescript-eslint:\u003c/strong\u003e export Compatible* types from typescript-eslint to resolve pnpm TS error (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12340\"\u003e#12340\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e❤️ Thank You\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eEvyatar Daud \u003ca href=\"https://github.com/StyleShit\"\u003e\u003ccode\u003e@​StyleShit\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eKirk Waiblinger \u003ca href=\"https://github.com/kirkwaiblinger\"\u003e\u003ccode\u003e@​kirkwaiblinger\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003elumir\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.4\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003ev8.59.3\u003c/h2\u003e\n\u003ch2\u003e8.59.3 (2026-05-11)\u003c/h2\u003e\n\u003cp\u003eThis was a version bump only, there were no code changes.\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.3\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003ev8.59.2\u003c/h2\u003e\n\u003ch2\u003e8.59.2 (2026-05-04)\u003c/h2\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/parser/CHANGELOG.md\"\u003e@​typescript-eslint/parser's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e8.60.0 (2026-05-25)\u003c/h2\u003e\n\u003cp\u003eThis was a version bump only for parser to align it with other projects, there were no code changes.\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.60.0\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003e8.59.4 (2026-05-18)\u003c/h2\u003e\n\u003cp\u003eThis was a version bump only for parser to align it with other projects, there were no code changes.\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.4\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003e8.59.3 (2026-05-11)\u003c/h2\u003e\n\u003cp\u003eThis was a version bump only for parser to align it with other projects, there were no code changes.\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.3\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003e8.59.2 (2026-05-04)\u003c/h2\u003e\n\u003cp\u003eThis was a version bump only for parser to align it with other projects, there were no code changes.\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.2\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003e8.59.1 (2026-04-27)\u003c/h2\u003e\n\u003cp\u003eThis was a version bump only for parser to align it with other projects, there were no code changes.\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.1\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003e8.59.0 (2026-04-20)\u003c/h2\u003e\n\u003cp\u003eThis was a version bump only for parser to align it with other projects, there were no code changes.\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.0\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003e8.58.2 (2026-04-13)\u003c/h2\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/f891c29de5f3e23f3d8c59cc599d3196e54e9b58\"\u003e\u003ccode\u003ef891c29\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.60.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/ca6ca1431b6d18235297a7e29feb5d98f012dff2\"\u003e\u003ccode\u003eca6ca14\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.59.4\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/48e13c0261e3cb1bf4f4dfaa462cdb3a56ef7383\"\u003e\u003ccode\u003e48e13c0\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.59.3\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/44f9625336841a8ee3eb01a9e02e49b1d7b12648\"\u003e\u003ccode\u003e44f9625\u003c/code\u003e\u003c/a\u003e chore(deps): update vitest monorepo to v4.1.5 (\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/parser/issues/12307\"\u003e#12307\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/2ec35f1760aade4df4c631d76d78c7ed5e136333\"\u003e\u003ccode\u003e2ec35f1\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.59.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/52457932e5507b5ca01e720a541f3f8d01e09b9d\"\u003e\u003ccode\u003e5245793\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.59.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/ea9ae4f8817873480e3501145059f63e39e8d8a1\"\u003e\u003ccode\u003eea9ae4f\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.59.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/90c2803a4c250e0343598d41e973f95e743bf4ce\"\u003e\u003ccode\u003e90c2803\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.58.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/be6b49a02d68db9bdc8985e7e9e1598700fda2fa\"\u003e\u003ccode\u003ebe6b49a\u003c/code\u003e\u003c/a\u003e fix: remove tsbuildinfo cache file from published packages (\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/parser/issues/12187\"\u003e#12187\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/5311ed312eadf4e238324f2726ae0b1f3f2206e6\"\u003e\u003ccode\u003e5311ed3\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.58.1\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commits/v8.60.0/packages/parser\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `eslint` from 9.39.2 to 10.4.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/eslint/eslint/releases\"\u003eeslint's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev10.4.1\u003c/h2\u003e\n\u003ch2\u003eBug Fixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/e557467db7496220eebcbe2ac5ea6d38c12bb1ec\"\u003e\u003ccode\u003ee557467\u003c/code\u003e\u003c/a\u003e fix: update \u003ccode\u003e@eslint/plugin-kit\u003c/code\u003e version to 0.7.2 (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20930\"\u003e#20930\u003c/a\u003e) (Francesco Trotta)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/d4ce898796ca22c3b96aa70d3014cb85f4bac1cd\"\u003e\u003ccode\u003ed4ce898\u003c/code\u003e\u003c/a\u003e fix: propagate failures from delegated commands (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20917\"\u003e#20917\u003c/a\u003e) (Minh Vu)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/f4f3507460bc016b5be979c05d2969793f570cbf\"\u003e\u003ccode\u003ef4f3507\u003c/code\u003e\u003c/a\u003e fix: prefer-arrow-callback invalid autofix with newline after \u003ccode\u003easync\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20916\"\u003e#20916\u003c/a\u003e) (kuldeep kumar)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/c5bc78b37e08b9054a11f0cc2d81808bb24acb85\"\u003e\u003ccode\u003ec5bc78b\u003c/code\u003e\u003c/a\u003e fix: false positive for reference in \u003ccode\u003efinally\u003c/code\u003e block (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20655\"\u003e#20655\u003c/a\u003e) (Tanuj Kanti)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/27538c01f5df4e9306f6f4ba867b2dd6307fae59\"\u003e\u003ccode\u003e27538c0\u003c/code\u003e\u003c/a\u003e fix: add missing CodePath and CodePathSegment types (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20853\"\u003e#20853\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eDocumentation\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/61b0add61ffc52665562be7bb96f526690a78b30\"\u003e\u003ccode\u003e61b0add\u003c/code\u003e\u003c/a\u003e docs: remove deprecated rule from related rules of \u003ccode\u003emax-params\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20921\"\u003e#20921\u003c/a\u003e) (Tanuj Kanti)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/305d5b91aeac24d36fde42f75625a8f183d4ce43\"\u003e\u003ccode\u003e305d5b9\u003c/code\u003e\u003c/a\u003e docs: remove deprecated rules from related rules section (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20911\"\u003e#20911\u003c/a\u003e) (Tanuj Kanti)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/49b0202d01918b8061720d586dffd7c68047090c\"\u003e\u003ccode\u003e49b0202\u003c/code\u003e\u003c/a\u003e docs: fix \u003ccode\u003edisplay: none\u003c/code\u003e of ad (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20901\"\u003e#20901\u003c/a\u003e) (Tanuj Kanti)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/9067f9492ec998afc5b4f057a477ecf6ebd45e44\"\u003e\u003ccode\u003e9067f94\u003c/code\u003e\u003c/a\u003e docs: switch build to Node.js 24 (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20893\"\u003e#20893\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/c91b0417e3420c76807ce1fa2aea76e2de87ab86\"\u003e\u003ccode\u003ec91b041\u003c/code\u003e\u003c/a\u003e docs: Update README (GitHub Actions Bot)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/e349265cb37f3ebc837e178e48a725bb782bd870\"\u003e\u003ccode\u003ee349265\u003c/code\u003e\u003c/a\u003e docs: clarify semver strings in rule deprecation objects (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20885\"\u003e#20885\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eChores\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/b0e466b6ab47bfc7de43d8de0c315d8ee83aa584\"\u003e\u003ccode\u003eb0e466b\u003c/code\u003e\u003c/a\u003e test: add \u003ccode\u003edata\u003c/code\u003e property to invalid tests cases for rules (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20924\"\u003e#20924\u003c/a\u003e) (Tanuj Kanti)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/f78838bc4c86d487e1bcc7cede260c4467721c46\"\u003e\u003ccode\u003ef78838b\u003c/code\u003e\u003c/a\u003e test: add CodePath type coverage (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20904\"\u003e#20904\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/1daa4bd734b79a62e317d0394394a6b38cff49f9\"\u003e\u003ccode\u003e1daa4bd\u003c/code\u003e\u003c/a\u003e chore: update \u003ccode\u003eeslint-plugin-eslint-comments\u003c/code\u003e test data to latest commit (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20922\"\u003e#20922\u003c/a\u003e) (Francesco Trotta)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/002942ce988ea28b78e0a2f3b074081e638b552c\"\u003e\u003ccode\u003e002942c\u003c/code\u003e\u003c/a\u003e ci: declare contents:read on update-readme workflow (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20919\"\u003e#20919\u003c/a\u003e) (Arpit Jain)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/64bca24e7bed35bc3c864fc625cb2d89eca87d5b\"\u003e\u003ccode\u003e64bca24\u003c/code\u003e\u003c/a\u003e chore: update ecosystem plugins (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20912\"\u003e#20912\u003c/a\u003e) (ESLint Bot)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/6d7c832950d5e92499d88e504080661f888f8f56\"\u003e\u003ccode\u003e6d7c832\u003c/code\u003e\u003c/a\u003e chore: ignore fflate updates in renovate (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20908\"\u003e#20908\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/b2c86382164d87c6203b78d52068cd6a2a6ffe30\"\u003e\u003ccode\u003eb2c8638\u003c/code\u003e\u003c/a\u003e ci: bump pnpm/action-setup from 6.0.7 to 6.0.8 (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20889\"\u003e#20889\u003c/a\u003e) (dependabot[bot])\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/a9b8d7f74c50211701cfc49710fa541fd91b2aa5\"\u003e\u003ccode\u003ea9b8d7f\u003c/code\u003e\u003c/a\u003e chore: increase maxBuffer for ecosystem tests (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20881\"\u003e#20881\u003c/a\u003e) (sethamus)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/b702ead5e1ed7cb9f28238a454797662efb37396\"\u003e\u003ccode\u003eb702ead\u003c/code\u003e\u003c/a\u003e chore: update ecosystem update PR settings (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20884\"\u003e#20884\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/507f60e9a78c9a902bc8759f066ae17a1ea6cd81\"\u003e\u003ccode\u003e507f60e\u003c/code\u003e\u003c/a\u003e chore: update ecosystem plugins (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20882\"\u003e#20882\u003c/a\u003e) (ESLint Bot)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/92f5c5bb6bf3a5d167c8ee53a430833410295c6d\"\u003e\u003ccode\u003e92f5c5b\u003c/code\u003e\u003c/a\u003e test: add unit test for message-count (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20878\"\u003e#20878\u003c/a\u003e) (kuldeep kumar)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/df321080af5758b1fa25e4b9a40e26135642dd6e\"\u003e\u003ccode\u003edf32108\u003c/code\u003e\u003c/a\u003e chore: add \u003ccode\u003e@​eslint/markdown\u003c/code\u003e and typescript-eslint ecosystem tests (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20837\"\u003e#20837\u003c/a\u003e) (sethamus)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/327f91d36aa49f2a50ded931d841a16374fd875f\"\u003e\u003ccode\u003e327f91d\u003c/code\u003e\u003c/a\u003e chore: use includeIgnoreFile internally (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20876\"\u003e#20876\u003c/a\u003e) (Kirk Waiblinger)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/f0dc4bd893fb3a9f44e4ddc3ad7063ffb0beacd3\"\u003e\u003ccode\u003ef0dc4bd\u003c/code\u003e\u003c/a\u003e chore: pin fflate@0.8.2 (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20877\"\u003e#20877\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/0f4bd257a67a082b756de746d9e0c4842ab764ca\"\u003e\u003ccode\u003e0f4bd25\u003c/code\u003e\u003c/a\u003e ci: run Discord alert for ecosystem test failures (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20873\"\u003e#20873\u003c/a\u003e) (Copilot)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev10.4.0\u003c/h2\u003e\n\u003ch2\u003eFeatures\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/1a45ec596af1dd5f880e6874cb8f24dafb6a7ecf\"\u003e\u003ccode\u003e1a45ec5\u003c/code\u003e\u003c/a\u003e feat: check sequence expressions in \u003ccode\u003efor-direction\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20701\"\u003e#20701\u003c/a\u003e) (kuldeep kumar)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/450040bd89b989b3531824c6be45feb5fe3d936b\"\u003e\u003ccode\u003e450040b\u003c/code\u003e\u003c/a\u003e feat: add \u003ccode\u003eincludeIgnoreFile()\u003c/code\u003e to \u003ccode\u003eeslint/config\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20735\"\u003e#20735\u003c/a\u003e) (Kirk Waiblinger)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eBug Fixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/544c0c3da589166ad8e5d634f35d3d06701c57be\"\u003e\u003ccode\u003e544c0c3\u003c/code\u003e\u003c/a\u003e fix: escape code path DOT labels in debug output (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20866\"\u003e#20866\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/6799431203f2579632d0870f98ba132067f4040c\"\u003e\u003ccode\u003e6799431\u003c/code\u003e\u003c/a\u003e fix: update dependency \u003ccode\u003e@​eslint/config-helpers\u003c/code\u003e to ^0.6.0 (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20850\"\u003e#20850\u003c/a\u003e) (renovate[bot])\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/f078fef5005dceb14fc162aab7c7200e027688dd\"\u003e\u003ccode\u003ef078fef\u003c/code\u003e\u003c/a\u003e fix: handle non-array deprecated rule replacements (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20825\"\u003e#20825\u003c/a\u003e) (xbinaryx)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eDocumentation\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/7e52a7151fb92eec0e0f67fe4e5ddbd1ccce796f\"\u003e\u003ccode\u003e7e52a71\u003c/code\u003e\u003c/a\u003e docs: add mention of \u003ccode\u003e@eslint-react/eslint-plugin\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20869\"\u003e#20869\u003c/a\u003e) (Pavel)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/db3468ba746407d7f286f18f7ea9db6df0e3bc08\"\u003e\u003ccode\u003edb3468b\u003c/code\u003e\u003c/a\u003e docs: tweak wording around ambiguous CJS-vs-ESM config (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20865\"\u003e#20865\u003c/a\u003e) (Kirk Waiblinger)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/90846643ec6e97d447ae0d831fabe6d17b0a998a\"\u003e\u003ccode\u003e9084664\u003c/code\u003e\u003c/a\u003e docs: Update README (GitHub Actions Bot)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/9cc73875046e3c4b8313644cbb1e99e26b36bd3f\"\u003e\u003ccode\u003e9cc7387\u003c/code\u003e\u003c/a\u003e docs: Update README (GitHub Actions Bot)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/3d7b5484407403817aa9071a394d336d8ea96eb5\"\u003e\u003ccode\u003e3d7b548\u003c/code\u003e\u003c/a\u003e docs: Update README (GitHub Actions Bot)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/191ec3c0a3f94ce0f110df761f0b2b8949011ccb\"\u003e\u003ccode\u003e191ec3c\u003c/code\u003e\u003c/a\u003e docs: Update README (GitHub Actions Bot)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/4a3d15a99c452c4db2fd56b577fa7597e98ab0c2\"\u003e\u003ccode\u003e4a3d15a\u003c/code\u003e\u003c/a\u003e 10.4.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/43e7e2bdc5c6cacc535446b7d23c10f780384ba8\"\u003e\u003ccode\u003e43e7e2b\u003c/code\u003e\u003c/a\u003e Build: changelog update for 10.4.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/e557467db7496220eebcbe2ac5ea6d38c12bb1ec\"\u003e\u003ccode\u003ee557467\u003c/code\u003e\u003c/a\u003e fix: update \u003ccode\u003e@eslint/plugin-kit\u003c/code\u003e version to 0.7.2 (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20930\"\u003e#20930\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/b0e466b6ab47bfc7de43d8de0c315d8ee83aa584\"\u003e\u003ccode\u003eb0e466b\u003c/code\u003e\u003c/a\u003e test: add \u003ccode\u003edata\u003c/code\u003e property to invalid tests cases for rules (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20924\"\u003e#20924\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/d4ce898796ca22c3b96aa70d3014cb85f4bac1cd\"\u003e\u003ccode\u003ed4ce898\u003c/code\u003e\u003c/a\u003e fix: propagate failures from delegated commands (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20917\"\u003e#20917\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/f4f3507460bc016b5be979c05d2969793f570cbf\"\u003e\u003ccode\u003ef4f3507\u003c/code\u003e\u003c/a\u003e fix: prefer-arrow-callback invalid autofix with newline after \u003ccode\u003easync\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20916\"\u003e#20916\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/f78838bc4c86d487e1bcc7cede260c4467721c46\"\u003e\u003ccode\u003ef78838b\u003c/code\u003e\u003c/a\u003e test: add CodePath type coverage (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20904\"\u003e#20904\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/61b0add61ffc52665562be7bb96f526690a78b30\"\u003e\u003ccode\u003e61b0add\u003c/code\u003e\u003c/a\u003e docs: remove deprecated rule from related rules of \u003ccode\u003emax-params\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20921\"\u003e#20921\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/1daa4bd734b79a62e317d0394394a6b38cff49f9\"\u003e\u003ccode\u003e1daa4bd\u003c/code\u003e\u003c/a\u003e chore: update \u003ccode\u003eeslint-plugin-eslint-comments\u003c/code\u003e test data to latest commit (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20\"\u003e#20\u003c/a\u003e...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/002942ce988ea28b78e0a2f3b074081e638b552c\"\u003e\u003ccode\u003e002942c\u003c/code\u003e\u003c/a\u003e ci: declare contents:read on update-readme workflow (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20919\"\u003e#20919\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/eslint/eslint/compare/v9.39.2...v10.4.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `eslint-import-resolver-typescript` from 4.4.4 to 4.4.5\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/import-js/eslint-import-resolver-typescript/releases\"\u003eeslint-import-resolver-typescript's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev4.4.5\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/import-js/eslint-import-resolver-typescript/pull/473\"\u003e#473\u003c/a\u003e \u003ca href=\"https://github.com/import-js/eslint-import-resolver-typescript/commit/32c61abccf26bd2a2267f2e0e67d82e6f88d149a\"\u003e\u003ccode\u003e32c61ab\u003c/code\u003e\u003c/a\u003e Thanks \u003ca href=\"https://github.com/leey0818\"\u003e\u003ccode\u003e@​leey0818\u003c/code\u003e\u003c/a\u003e! - fix: check tsconfig matching before using resolver\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/import-js/eslint-import-resolver-typescript/blob/master/CHANGELOG.md\"\u003eeslint-import-resolver-typescript's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e4.4.5\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/import-js/eslint-import-resolver-typescript/pull/473\"\u003e#473\u003c/a\u003e \u003ca href=\"https://github.com/import-js/eslint-import-resolver-typescript/commit/32c61abccf26bd2a2267f2e0e67d82e6f88d149a\"\u003e\u003ccode\u003e32c61ab\u003c/code\u003e\u003c/a\u003e Thanks \u003ca href=\"https://github.com/leey0818\"\u003e\u003ccode\u003e@​leey0818\u003c/code\u003e\u003c/a\u003e! - fix: check tsconfig matching before using resolver\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/import-js/eslint-import-resolver-typescript/commit/724c47d8c08fa8ffa702c7a94ba53b367a4727fb\"\u003e\u003ccode\u003e724c47d\u003c/code\u003e\u003c/a\u003e chore: release eslint-import-resolver-typescript (\u003ca href=\"https://redirect.github.com/import-js/eslint-import-resolver-typescript/issues/480\"\u003e#480\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/import-js/eslint-import-resolver-typescript/commit/32c61abccf26bd2a2267f2e0e67d82e6f88d149a\"\u003e\u003ccode\u003e32c61ab\u003c/code\u003e\u003c/a\u003e fix: check tsconfig matching before using resolver (\u003ca href=\"https://redirect.github.com/import-js/eslint-import-resolver-typescript/issues/473\"\u003e#473\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/import-js/eslint-import-resolver-typescript/compare/v4.4.4...v4.4.5\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eMaintainer changes\u003c/summary\u003e\n\u003cp\u003eThis version was pushed to npm by \u003ca href=\"https://www.npmjs.com/~GitHub%20Actions\"\u003eGitHub Actions\u003c/a\u003e, a new releaser for eslint-import-resolver-typescript since your current version.\u003c/p\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `eslint-plugin-react-hooks` from 7.0.1 to 7.1.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/facebook/react/releases\"\u003eeslint-plugin-react-hooks's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eeslint-plugin-react-hooks@7.1.1 (April 17, 2026)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eNote:\u003c/strong\u003e 7.1.0 accidentally removed the \u003ccode\u003ecomponent-hook-factories\u003c/code\u003e rule, causing errors for users who referenced it in their ESLint config. This is now fixed.\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdd deprecated no-op \u003ccode\u003ecomponent-hook-factories\u003c/code\u003e rule for backwards compatibility. (\u003ca href=\"https://github.com/mofeiZ\"\u003e\u003ccode\u003e@​mofeiZ\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/36307\"\u003e#36307\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eeslint-plugin-react-hooks@7.1.0 (April 16, 2026)\u003c/h2\u003e\n\u003cp\u003eThis release adds ESLint v10 support, improves performance by skipping compilation for non-React files, and includes compiler lint improvements including better \u003ccode\u003eset-state-in-effect\u003c/code\u003e detection, improved ref validation, and more helpful error reporting.\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdd ESLint v10 support. (\u003ca href=\"https://github.com/azat-io\"\u003e\u003ccode\u003e@​azat-io\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/35720\"\u003e#35720\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSkip compilation for non-React files to improve performance. (\u003ca href=\"https://github.com/josephsavona\"\u003e\u003ccode\u003e@​josephsavona\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/35589\"\u003e#35589\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix exhaustive deps bug with Flow type casting. (\u003ca href=\"https://github.com/jorge-cab\"\u003e\u003ccode\u003e@​jorge-cab\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/35691\"\u003e#35691\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix \u003ccode\u003euseEffectEvent\u003c/code\u003e checks in component syntax. (\u003ca href=\"https://github.com/jbrown215\"\u003e\u003ccode\u003e@​jbrown215\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/35041\"\u003e#35041\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eImproved \u003ccode\u003eset-state-in-effect\u003c/code\u003e validation with fewer false negatives. (\u003ca href=\"https://github.com/jorge-cab\"\u003e\u003ccode\u003e@​jorge-cab\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/fa...\n\n_Description has been truncated_","html_url":"https://github.com/nkTmmT/learning-saas/pull/1","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/nkTmmT%2Flearning-saas/issues/1","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/1/packages"},{"uuid":"4561712763","node_id":"PR_kwDOR0KTyc7hSmXY","number":9,"state":"closed","title":"deps(deps): bump the all-dependencies group across 1 directory with 69 updates","user":"dependabot[bot]","labels":[],"assignees":[],"locked":false,"comments_count":2,"pull_request":true,"closed_at":"2026-06-08T04:17:33.000Z","author_association":null,"state_reason":null,"created_at":"2026-06-01T08:55:16.000Z","updated_at":"2026-06-08T04:17:34.000Z","time_to_close":588137,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"deps(deps): bump","group_name":"all-dependencies","update_count":69,"packages":[{"name":"@eslint-react/eslint-plugin","old_version":"2.13.0","new_version":"5.8.9","repository_url":"https://github.com/Rel1cx/eslint-react"},{"name":"@eslint/js","old_version":"9.39.2","new_version":"10.0.1","repository_url":"https://github.com/eslint/eslint"},{"name":"@typescript-eslint/eslint-plugin","old_version":"8.56.0","new_version":"8.60.0","repository_url":"https://github.com/typescript-eslint/typescript-eslint"},{"name":"@typescript-eslint/parser","old_version":"8.56.0","new_version":"8.60.0","repository_url":"https://github.com/typescript-eslint/typescript-eslint"},{"name":"eslint","old_version":"9.39.2","new_version":"10.4.1","repository_url":"https://github.com/eslint/eslint"},{"name":"eslint-import-resolver-typescript","old_version":"4.4.4","new_version":"4.4.5","repository_url":"https://github.com/import-js/eslint-import-resolver-typescript"},{"name":"eslint-plugin-react-hooks","old_version":"7.0.1","new_version":"7.1.1","repository_url":"https://github.com/facebook/react"},{"name":"globals","old_version":"17.3.0","new_version":"17.6.0","repository_url":"https://github.com/sindresorhus/globals"},{"name":"graphql","old_version":"16.12.0","new_version":"16.14.0","repository_url":"https://github.com/graphql/graphql-js"},{"name":"happy-dom","old_version":"20.6.2","new_version":"20.9.0","repository_url":"https://github.com/capricorn86/happy-dom"},{"name":"jiti","old_version":"2.6.1","new_version":"2.7.0","repository_url":"https://github.com/unjs/jiti"},{"name":"lint-staged","old_version":"16.2.7","new_version":"17.0.7","repository_url":"https://github.com/lint-staged/lint-staged"},{"name":"mermaid","old_version":"11.12.3","new_version":"11.15.0","repository_url":"https://github.com/mermaid-js/mermaid"},{"name":"prettier","old_version":"3.8.1","new_version":"3.8.3","repository_url":"https://github.com/prettier/prettier"},{"name":"react","old_version":"19.2.4","new_version":"19.2.6","repository_url":"https://github.com/facebook/react"},{"name":"@types/react","old_version":"19.2.14","new_version":"19.2.15","repository_url":"https://github.com/DefinitelyTyped/DefinitelyTyped"},{"name":"typescript","old_version":"5.9.3","new_version":"6.0.3","repository_url":"https://github.com/microsoft/TypeScript"},{"name":"typescript-eslint","old_version":"8.56.0","new_version":"8.60.0","repository_url":"https://github.com/typescript-eslint/typescript-eslint"},{"name":"typescript-language-server","old_version":"5.1.3","new_version":"5.3.0","repository_url":"https://github.com/typescript-language-server/typescript-language-server"},{"name":"vite","old_version":"7.3.1","new_version":"8.0.15","repository_url":"https://github.com/vitejs/vite"},{"name":"vitepress","old_version":"2.0.0-alpha.16","new_version":"2.0.0-alpha.17","repository_url":"https://github.com/vuejs/vitepress"},{"name":"vitepress-plugin-llms","old_version":"1.11.0","new_version":"1.13.1","repository_url":"https://github.com/okineadev/vitepress-plugin-llms"},{"name":"vitest","old_version":"4.0.18","new_version":"4.1.8","repository_url":"https://github.com/vitest-dev/vitest"},{"name":"wrangler","old_version":"4.66.0","new_version":"4.95.0","repository_url":"https://github.com/cloudflare/workers-sdk"},{"name":"@ai-sdk/openai","old_version":"3.0.29","new_version":"3.0.67","repository_url":"https://github.com/vercel/ai"},{"name":"@better-auth/passkey","old_version":"1.4.18","new_version":"1.6.13","repository_url":"https://github.com/better-auth/better-auth"},{"name":"@better-auth/stripe","old_version":"1.4.18","new_version":"1.6.13","repository_url":"https://github.com/better-auth/better-auth"},{"name":"@trpc/server","old_version":"11.10.0","new_version":"11.17.0","repository_url":"https://github.com/trpc/trpc"},{"name":"ai","old_version":"6.0.91","new_version":"6.0.193","repository_url":"https://github.com/vercel/ai"},{"name":"better-auth","old_version":"1.4.18","new_version":"1.6.13","repository_url":"https://github.com/better-auth/better-auth"},{"name":"drizzle-orm","old_version":"0.45.1","new_version":"0.45.2","repository_url":"https://github.com/drizzle-team/drizzle-orm"},{"name":"postgres","old_version":"3.4.8","new_version":"3.4.9","repository_url":"https://github.com/porsager/postgres"},{"name":"resend","old_version":"6.9.2","new_version":"6.12.4","repository_url":"https://github.com/resend/resend-node"},{"name":"stripe","old_version":"20.3.1","new_version":"22.2.0","repository_url":"https://github.com/stripe/stripe-node"},{"name":"@cloudflare/workers-types","old_version":"4.20260218.0","new_version":"4.20260601.1","repository_url":"https://github.com/cloudflare/workerd"},{"name":"@types/bun","old_version":"1.3.9","new_version":"1.3.14","repository_url":"https://github.com/DefinitelyTyped/DefinitelyTyped"},{"name":"hono","old_version":"4.11.10","new_version":"4.12.23","repository_url":"https://github.com/honojs/hono"},{"name":"zod","old_version":"4.3.6","new_version":"4.4.3","repository_url":"https://github.com/colinhacks/zod"},{"name":"@tanstack/react-query","old_version":"5.90.21","new_version":"5.100.14","repository_url":"https://github.com/TanStack/query"},{"name":"@tanstack/react-router","old_version":"1.161.1","new_version":"1.170.10","repository_url":"https://github.com/TanStack/router"},{"name":"@trpc/client","old_version":"11.10.0","new_version":"11.17.0","repository_url":"https://github.com/trpc/trpc"},{"name":"@trpc/tanstack-react-query","old_version":"11.10.0","new_version":"11.17.0","repository_url":"https://github.com/trpc/trpc"},{"name":"jotai","old_version":"2.17.1","new_version":"2.20.0","repository_url":"https://github.com/pmndrs/jotai"},{"name":"jotai-effect","old_version":"2.2.3","new_version":"2.3.1","repository_url":"https://github.com/jotaijs/jotai-effect"},{"name":"lucide-react","old_version":"0.574.0","new_version":"1.17.0","repository_url":"https://github.com/lucide-icons/lucide"},{"name":"react-dom","old_version":"19.2.4","new_version":"19.2.6","repository_url":"https://github.com/facebook/react"},{"name":"react-error-boundary","old_version":"6.1.1","new_version":"6.1.2","repository_url":"https://github.com/bvaughn/react-error-boundary"},{"name":"tailwind-merge","old_version":"3.4.1","new_version":"3.6.0","repository_url":"https://github.com/dcastil/tailwind-merge"},{"name":"@tailwindcss/postcss","old_version":"4.2.0","new_version":"4.3.0","repository_url":"https://github.com/tailwindlabs/tailwindcss"},{"name":"@tanstack/react-query-devtools","old_version":"5.91.3","new_version":"5.100.14","repository_url":"https://github.com/TanStack/query"},{"name":"@tanstack/react-router-devtools","old_version":"1.161.1","new_version":"1.167.0","repository_url":"https://github.com/TanStack/router"},{"name":"@tanstack/router-plugin","old_version":"1.161.1","new_version":"1.168.13","repository_url":"https://github.com/TanStack/router"},{"name":"@types/node","old_version":"25.2.3","new_version":"25.9.1","repository_url":"https://github.com/DefinitelyTyped/DefinitelyTyped"},{"name":"@vitejs/plugin-react","old_version":"5.1.4","new_version":"6.0.2","repository_url":"https://github.com/vitejs/vite-plugin-react"},{"name":"@vitejs/plugin-react-swc","old_version":"4.2.3","new_version":"4.3.1","repository_url":"https://github.com/vitejs/vite-plugin-react"},{"name":"autoprefixer","old_version":"10.4.24","new_version":"10.5.0","repository_url":"https://github.com/postcss/autoprefixer"},{"name":"globby","old_version":"16.1.1","new_version":"16.2.0","repository_url":"https://github.com/sindresorhus/globby"},{"name":"@react-email/components","old_version":"1.0.8","new_version":"1.0.12","repository_url":"https://github.com/resend/react-email"},{"name":"@react-email/render","old_version":"2.0.4","new_version":"2.0.8","repository_url":"https://github.com/resend/react-email"},{"name":"@react-email/preview-server","old_version":"5.2.8","new_version":"5.2.10","repository_url":"https://github.com/resend/react-email"},{"name":"react-email","old_version":"5.2.8","new_version":"6.5.0","repository_url":"https://github.com/resend/react-email"},{"name":"@astrojs/react","old_version":"4.4.2","new_version":"5.0.6","repository_url":"https://github.com/withastro/astro"},{"name":"astro","old_version":"5.17.2","new_version":"6.4.2","repository_url":"https://github.com/withastro/astro"},{"name":"dotenv","old_version":"17.3.1","new_version":"17.4.2","repository_url":"https://github.com/motdotla/dotenv"},{"name":"drizzle-kit","old_version":"0.31.9","new_version":"0.31.10","repository_url":"https://github.com/drizzle-team/drizzle-orm"},{"name":"@modelcontextprotocol/sdk","old_version":"1.26.0","new_version":"1.29.0","repository_url":"https://github.com/modelcontextprotocol/typescript-sdk"},{"name":"got","old_version":"14.6.6","new_version":"15.0.5","repository_url":"https://github.com/sindresorhus/got"}],"path":null,"ecosystem":"npm"},"body":"Bumps the all-dependencies group with 67 updates in the / directory:\n\n| Package | From | To |\n| --- | --- | --- |\n| [@eslint-react/eslint-plugin](https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin) | `2.13.0` | `5.8.9` |\n| [@eslint/js](https://github.com/eslint/eslint/tree/HEAD/packages/js) | `9.39.2` | `10.0.1` |\n| [@typescript-eslint/eslint-plugin](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin) | `8.56.0` | `8.60.0` |\n| [@typescript-eslint/parser](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/parser) | `8.56.0` | `8.60.0` |\n| [eslint](https://github.com/eslint/eslint) | `9.39.2` | `10.4.1` |\n| [eslint-import-resolver-typescript](https://github.com/import-js/eslint-import-resolver-typescript) | `4.4.4` | `4.4.5` |\n| [eslint-plugin-react-hooks](https://github.com/facebook/react/tree/HEAD/packages/eslint-plugin-react-hooks) | `7.0.1` | `7.1.1` |\n| [globals](https://github.com/sindresorhus/globals) | `17.3.0` | `17.6.0` |\n| [graphql](https://github.com/graphql/graphql-js) | `16.12.0` | `16.14.0` |\n| [happy-dom](https://github.com/capricorn86/happy-dom) | `20.6.2` | `20.9.0` |\n| [jiti](https://github.com/unjs/jiti) | `2.6.1` | `2.7.0` |\n| [lint-staged](https://github.com/lint-staged/lint-staged) | `16.2.7` | `17.0.7` |\n| [mermaid](https://github.com/mermaid-js/mermaid) | `11.12.3` | `11.15.0` |\n| [prettier](https://github.com/prettier/prettier) | `3.8.1` | `3.8.3` |\n| [react](https://github.com/facebook/react/tree/HEAD/packages/react) | `19.2.4` | `19.2.6` |\n| [@types/react](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/react) | `19.2.14` | `19.2.15` |\n| [typescript](https://github.com/microsoft/TypeScript) | `5.9.3` | `6.0.3` |\n| [typescript-eslint](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/typescript-eslint) | `8.56.0` | `8.60.0` |\n| [typescript-language-server](https://github.com/typescript-language-server/typescript-language-server) | `5.1.3` | `5.3.0` |\n| [vite](https://github.com/vitejs/vite/tree/HEAD/packages/vite) | `7.3.1` | `8.0.15` |\n| [vitepress](https://github.com/vuejs/vitepress) | `2.0.0-alpha.16` | `2.0.0-alpha.17` |\n| [vitepress-plugin-llms](https://github.com/okineadev/vitepress-plugin-llms) | `1.11.0` | `1.13.1` |\n| [vitest](https://github.com/vitest-dev/vitest/tree/HEAD/packages/vitest) | `4.0.18` | `4.1.8` |\n| [wrangler](https://github.com/cloudflare/workers-sdk/tree/HEAD/packages/wrangler) | `4.66.0` | `4.95.0` |\n| [@ai-sdk/openai](https://github.com/vercel/ai/tree/HEAD/packages/openai) | `3.0.29` | `3.0.67` |\n| [@better-auth/passkey](https://github.com/better-auth/better-auth/tree/HEAD/packages/passkey) | `1.4.18` | `1.6.13` |\n| [@better-auth/stripe](https://github.com/better-auth/better-auth/tree/HEAD/packages/stripe) | `1.4.18` | `1.6.13` |\n| [@trpc/server](https://github.com/trpc/trpc/tree/HEAD/packages/server) | `11.10.0` | `11.17.0` |\n| [ai](https://github.com/vercel/ai/tree/HEAD/packages/ai) | `6.0.91` | `6.0.193` |\n| [better-auth](https://github.com/better-auth/better-auth/tree/HEAD/packages/better-auth) | `1.4.18` | `1.6.13` |\n| [drizzle-orm](https://github.com/drizzle-team/drizzle-orm) | `0.45.1` | `0.45.2` |\n| [postgres](https://github.com/porsager/postgres) | `3.4.8` | `3.4.9` |\n| [resend](https://github.com/resend/resend-node) | `6.9.2` | `6.12.4` |\n| [stripe](https://github.com/stripe/stripe-node) | `20.3.1` | `22.2.0` |\n| [@cloudflare/workers-types](https://github.com/cloudflare/workerd) | `4.20260218.0` | `4.20260601.1` |\n| [@types/bun](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/bun) | `1.3.9` | `1.3.14` |\n| [hono](https://github.com/honojs/hono) | `4.11.10` | `4.12.23` |\n| [zod](https://github.com/colinhacks/zod) | `4.3.6` | `4.4.3` |\n| [@tanstack/react-query](https://github.com/TanStack/query/tree/HEAD/packages/react-query) | `5.90.21` | `5.100.14` |\n| [@tanstack/react-router](https://github.com/TanStack/router/tree/HEAD/packages/react-router) | `1.161.1` | `1.170.10` |\n| [@trpc/client](https://github.com/trpc/trpc/tree/HEAD/packages/client) | `11.10.0` | `11.17.0` |\n| [@trpc/tanstack-react-query](https://github.com/trpc/trpc/tree/HEAD/packages/tanstack-react-query) | `11.10.0` | `11.17.0` |\n| [jotai](https://github.com/pmndrs/jotai) | `2.17.1` | `2.20.0` |\n| [jotai-effect](https://github.com/jotaijs/jotai-effect) | `2.2.3` | `2.3.1` |\n| [lucide-react](https://github.com/lucide-icons/lucide/tree/HEAD/packages/lucide-react) | `0.574.0` | `1.17.0` |\n| [react-dom](https://github.com/facebook/react/tree/HEAD/packages/react-dom) | `19.2.4` | `19.2.6` |\n| [react-error-boundary](https://github.com/bvaughn/react-error-boundary) | `6.1.1` | `6.1.2` |\n| [tailwind-merge](https://github.com/dcastil/tailwind-merge) | `3.4.1` | `3.6.0` |\n| [@tailwindcss/postcss](https://github.com/tailwindlabs/tailwindcss/tree/HEAD/packages/@tailwindcss-postcss) | `4.2.0` | `4.3.0` |\n| [@tanstack/react-query-devtools](https://github.com/TanStack/query/tree/HEAD/packages/react-query-devtools) | `5.91.3` | `5.100.14` |\n| [@tanstack/react-router-devtools](https://github.com/TanStack/router/tree/HEAD/packages/react-router-devtools) | `1.161.1` | `1.167.0` |\n| [@tanstack/router-plugin](https://github.com/TanStack/router/tree/HEAD/packages/router-plugin) | `1.161.1` | `1.168.13` |\n| [@types/node](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/node) | `25.2.3` | `25.9.1` |\n| [@vitejs/plugin-react](https://github.com/vitejs/vite-plugin-react/tree/HEAD/packages/plugin-react) | `5.1.4` | `6.0.2` |\n| [@vitejs/plugin-react-swc](https://github.com/vitejs/vite-plugin-react/tree/HEAD/packages/plugin-react-swc) | `4.2.3` | `4.3.1` |\n| [autoprefixer](https://github.com/postcss/autoprefixer) | `10.4.24` | `10.5.0` |\n| [globby](https://github.com/sindresorhus/globby) | `16.1.1` | `16.2.0` |\n| [@react-email/components](https://github.com/resend/react-email/tree/HEAD/packages/components) | `1.0.8` | `1.0.12` |\n| [@react-email/render](https://github.com/resend/react-email/tree/HEAD/packages/render) | `2.0.4` | `2.0.8` |\n| [@react-email/preview-server](https://github.com/resend/react-email/tree/HEAD/packages/preview-server) | `5.2.8` | `5.2.10` |\n| [react-email](https://github.com/resend/react-email/tree/HEAD/packages/react-email) | `5.2.8` | `6.5.0` |\n| [@astrojs/react](https://github.com/withastro/astro/tree/HEAD/packages/integrations/react) | `4.4.2` | `5.0.6` |\n| [astro](https://github.com/withastro/astro/tree/HEAD/packages/astro) | `5.17.2` | `6.4.2` |\n| [dotenv](https://github.com/motdotla/dotenv) | `17.3.1` | `17.4.2` |\n| [drizzle-kit](https://github.com/drizzle-team/drizzle-orm) | `0.31.9` | `0.31.10` |\n| [@modelcontextprotocol/sdk](https://github.com/modelcontextprotocol/typescript-sdk) | `1.26.0` | `1.29.0` |\n| [got](https://github.com/sindresorhus/got) | `14.6.6` | `15.0.5` |\n\n\nUpdates `@eslint-react/eslint-plugin` from 2.13.0 to 5.8.9\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/Rel1cx/eslint-react/releases\"\u003e@​eslint-react/eslint-plugin's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev5.8.9 (2026-06-01)\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003ch3\u003e🐞 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003e\u003ccode\u003ereact-x/no-direct-mutation-state\u003c/code\u003e\u003c/strong\u003e: Detect nested state mutations and member expressions in assignment expressions (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1818\"\u003e#1818\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e📝 Documentation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpdated contributing guide and monorepo structure documentation.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🏗️ Internal\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eExamples\u003c/strong\u003e: Removed \u003ccode\u003e.vscode\u003c/code\u003e directories from all examples, added missing \u003ccode\u003eengines.node\u003c/code\u003e to Preact examples, cleaned up redundant \u003ccode\u003e.config/*.ts\u003c/code\u003e from \u003ccode\u003etsconfig.node.json\u003c/code\u003e, and updated \u003ccode\u003e.gitignore\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eWebsite\u003c/strong\u003e: Cleaned up configs and docs.\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eDeps\u003c/strong\u003e: Patch bumped \u003ccode\u003eeslint\u003c/code\u003e, \u003ccode\u003etinyglobby\u003c/code\u003e, and \u003ccode\u003etsdown\u003c/code\u003e across workspace packages; added \u003ccode\u003e@fontsource/iosevka-aile\u003c/code\u003e to the website; reordered CSS imports in \u003ccode\u003elayout.tsx\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003eUpdated \u003ccode\u003e.sentrux\u003c/code\u003e baseline timestamp.\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/Rel1cx/eslint-react/compare/v5.8.8...v5.8.9\"\u003ehttps://github.com/Rel1cx/eslint-react/compare/v5.8.8...v5.8.9\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003eAttestation\u003c/h2\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/attestations/29343471\"\u003ehttps://github.com/Rel1cx/eslint-react/attestations/29343471\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev5.8.8 (2026-05-31)\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003ch3\u003e📝 Documentation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003e\u003ccode\u003ekit\u003c/code\u003e\u003c/strong\u003e: Added \u003ccode\u003eis.APICall\u003c/code\u003e callout to the Kit documentation (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1813\"\u003e#1813\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003e\u003ccode\u003ejsx\u003c/code\u003e\u003c/strong\u003e: Updated \u003ccode\u003egetChildren\u003c/code\u003e and \u003ccode\u003ehasChildren\u003c/code\u003e API documentation to reflect empty string children behavior.\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eWebsite\u003c/strong\u003e: Reworked status emoji indicators across docs and examples (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1816\"\u003e#1816\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eWebsite\u003c/strong\u003e: Added ℞ prefix to recipe titles and cleaned up See Also sections.\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eWebsite\u003c/strong\u003e: Removed the \u003ccode\u003ecustom-rules-of-children\u003c/code\u003e recipe and cross-linked the remaining recipes.\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eWebsite\u003c/strong\u003e: Added redirects for moved rule documentation.\u003c/li\u003e\n\u003cli\u003eCleaned up the \u0026quot;Community Maintained Presets that use ESLint React\u0026quot; documentation page.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🏗️ Internal\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003e\u003ccode\u003ereact-x/no-misused-capture-owner-stack\u003c/code\u003e\u003c/strong\u003e: Added edge-case tests for \u003ccode\u003ecaptureOwnerStack\u003c/code\u003e (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1813\"\u003e#1813\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eWebsite\u003c/strong\u003e: Updated fonts and dropped the \u003ccode\u003edata-theme\u003c/code\u003e attribute.\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eWebsite\u003c/strong\u003e: Updated theme configuration (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1815\"\u003e#1815\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eMonorepo\u003c/strong\u003e: Aligned the \u003ccode\u003etsdown\u003c/code\u003e version in \u003ccode\u003e@local/configs\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003epnpm-workspace\u003c/strong\u003e: Enabled \u003ccode\u003etrustPolicy: \u0026quot;no-downgrade\u0026quot;\u003c/code\u003e and added \u003ccode\u003eminimumReleaseAge: 1440\u003c/code\u003e (1 day).\u003c/li\u003e\n\u003cli\u003eBumped \u003ccode\u003eeslint\u003c/code\u003e to \u003ccode\u003e10.4.1\u003c/code\u003e across workspace packages.\u003c/li\u003e\n\u003cli\u003eBumped \u003ccode\u003epnpm\u003c/code\u003e to \u003ccode\u003e11.5.0\u003c/code\u003e and refreshed the lockfile.\u003c/li\u003e\n\u003cli\u003eBumped \u003ccode\u003efumadocs\u003c/code\u003e packages and \u003ccode\u003etinyexec\u003c/code\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/Rel1cx/eslint-react/blob/main/CHANGELOG.md\"\u003e@​eslint-react/eslint-plugin's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev5.8.9 (2026-06-01)\u003c/h2\u003e\n\u003ch3\u003e🐞 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003e\u003ccode\u003ereact-x/no-direct-mutation-state\u003c/code\u003e\u003c/strong\u003e: Detect nested state mutations and member expressions in assignment expressions (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1818\"\u003e#1818\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e📝 Documentation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpdated contributing guide and monorepo structure documentation.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🏗️ Internal\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eExamples\u003c/strong\u003e: Removed \u003ccode\u003e.vscode\u003c/code\u003e directories from all examples, added missing \u003ccode\u003eengines.node\u003c/code\u003e to Preact examples, cleaned up redundant \u003ccode\u003e.config/*.ts\u003c/code\u003e from \u003ccode\u003etsconfig.node.json\u003c/code\u003e, and updated \u003ccode\u003e.gitignore\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eWebsite\u003c/strong\u003e: Cleaned up configs and docs.\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eDeps\u003c/strong\u003e: Patch bumped \u003ccode\u003eeslint\u003c/code\u003e, \u003ccode\u003etinyglobby\u003c/code\u003e, and \u003ccode\u003etsdown\u003c/code\u003e across workspace packages; added \u003ccode\u003e@fontsource/iosevka-aile\u003c/code\u003e to the website; reordered CSS imports in \u003ccode\u003elayout.tsx\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003eUpdated \u003ccode\u003e.sentrux\u003c/code\u003e baseline timestamp.\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/Rel1cx/eslint-react/compare/v5.8.8...v5.8.9\"\u003ehttps://github.com/Rel1cx/eslint-react/compare/v5.8.8...v5.8.9\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev5.8.8 (2026-05-31)\u003c/h2\u003e\n\u003ch3\u003e📝 Documentation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003e\u003ccode\u003ekit\u003c/code\u003e\u003c/strong\u003e: Added \u003ccode\u003eis.APICall\u003c/code\u003e callout to the Kit documentation (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1813\"\u003e#1813\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003e\u003ccode\u003ejsx\u003c/code\u003e\u003c/strong\u003e: Updated \u003ccode\u003egetChildren\u003c/code\u003e and \u003ccode\u003ehasChildren\u003c/code\u003e API documentation to reflect empty string children behavior.\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eWebsite\u003c/strong\u003e: Reworked status emoji indicators across docs and examples (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1816\"\u003e#1816\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eWebsite\u003c/strong\u003e: Added ℞ prefix to recipe titles and cleaned up See Also sections.\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eWebsite\u003c/strong\u003e: Removed the \u003ccode\u003ecustom-rules-of-children\u003c/code\u003e recipe and cross-linked the remaining recipes.\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eWebsite\u003c/strong\u003e: Added redirects for moved rule documentation.\u003c/li\u003e\n\u003cli\u003eCleaned up the \u0026quot;Community Maintained Presets that use ESLint React\u0026quot; documentation page.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🏗️ Internal\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003e\u003ccode\u003ereact-x/no-misused-capture-owner-stack\u003c/code\u003e\u003c/strong\u003e: Added edge-case tests for \u003ccode\u003ecaptureOwnerStack\u003c/code\u003e (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1813\"\u003e#1813\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eWebsite\u003c/strong\u003e: Updated fonts and dropped the \u003ccode\u003edata-theme\u003c/code\u003e attribute.\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eWebsite\u003c/strong\u003e: Updated theme configuration (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1815\"\u003e#1815\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eMonorepo\u003c/strong\u003e: Aligned the \u003ccode\u003etsdown\u003c/code\u003e version in \u003ccode\u003e@local/configs\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003epnpm-workspace\u003c/strong\u003e: Enabled \u003ccode\u003etrustPolicy: \u0026quot;no-downgrade\u0026quot;\u003c/code\u003e and added \u003ccode\u003eminimumReleaseAge: 1440\u003c/code\u003e (1 day).\u003c/li\u003e\n\u003cli\u003eBumped \u003ccode\u003eeslint\u003c/code\u003e to \u003ccode\u003e10.4.1\u003c/code\u003e across workspace packages.\u003c/li\u003e\n\u003cli\u003eBumped \u003ccode\u003epnpm\u003c/code\u003e to \u003ccode\u003e11.5.0\u003c/code\u003e and refreshed the lockfile.\u003c/li\u003e\n\u003cli\u003eBumped \u003ccode\u003efumadocs\u003c/code\u003e packages and \u003ccode\u003etinyexec\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003eBumped \u003ccode\u003eeslint-plugin-package-json\u003c/code\u003e to \u003ccode\u003e1.2.0\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003eUpdated dprint plugins and reformatted font families in example projects.\u003c/li\u003e\n\u003cli\u003eUpdated Sentrux baseline metrics.\u003c/li\u003e\n\u003cli\u003eUpdated \u003ccode\u003e.gitignore\u003c/code\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/Rel1cx/eslint-react/compare/v5.8.7...v5.8.8\"\u003ehttps://github.com/Rel1cx/eslint-react/compare/v5.8.7...v5.8.8\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev5.8.7 (2026-05-29)\u003c/h2\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/ff9258dc21cd08546d20e8596d2de9e5387a6875\"\u003e\u003ccode\u003eff9258d\u003c/code\u003e\u003c/a\u003e release: 5.8.9\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/60e2514c793e3f7c06f6bb1f81ac6a20da014cfa\"\u003e\u003ccode\u003e60e2514\u003c/code\u003e\u003c/a\u003e release: 5.8.8\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/5b62a422ea43365ed2abab803a95f34cab47a335\"\u003e\u003ccode\u003e5b62a42\u003c/code\u003e\u003c/a\u003e Update baseline timestamp and bump eslint to 10.4.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/0e85aa0e12f2f1cfe0c0203908f0a4e32e4c8c06\"\u003e\u003ccode\u003e0e85aa0\u003c/code\u003e\u003c/a\u003e release: 5.8.7\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/d2e2d2db15ca432a571831238bdfca72a5485d9f\"\u003e\u003ccode\u003ed2e2d2d\u003c/code\u003e\u003c/a\u003e release: 5.8.7-beta.5\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/7f9bd4a174d1ff660087c82d28ba6faea375c791\"\u003e\u003ccode\u003e7f9bd4a\u003c/code\u003e\u003c/a\u003e release: 5.8.7-beta.4\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/449f940c05ff05556d8af9b7bcc3098bcef463a9\"\u003e\u003ccode\u003e449f940\u003c/code\u003e\u003c/a\u003e docs: fix inaccurate minimum ESLint version and off preset description in README\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/846014c8c4d4cfe8b22a67424f2c15b339f8bb1f\"\u003e\u003ccode\u003e846014c\u003c/code\u003e\u003c/a\u003e release: 5.8.7-beta.3\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/9ad3404c5ae8a48c14a6e23b121250ec78364f85\"\u003e\u003ccode\u003e9ad3404\u003c/code\u003e\u003c/a\u003e release: 5.8.7-beta.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/a29c464e7111dd9df50d549c9b749f4254a68014\"\u003e\u003ccode\u003ea29c464\u003c/code\u003e\u003c/a\u003e release: 5.8.7-beta.1\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/Rel1cx/eslint-react/commits/v5.8.9/plugins/eslint-plugin\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@eslint/js` from 9.39.2 to 10.0.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/eslint/eslint/releases\"\u003e@​eslint/js's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev10.0.1\u003c/h2\u003e\n\u003ch2\u003eBug Fixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/c87d5bded54c5cf491eb04c24c9d09bbbd42c23e\"\u003e\u003ccode\u003ec87d5bd\u003c/code\u003e\u003c/a\u003e fix: update eslint (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20531\"\u003e#20531\u003c/a\u003e) (renovate[bot])\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/d84100115c14691691058f00779c94e74fca946a\"\u003e\u003ccode\u003ed841001\u003c/code\u003e\u003c/a\u003e fix: update \u003ccode\u003eminimatch\u003c/code\u003e to \u003ccode\u003e10.2.1\u003c/code\u003e to address security vulnerabilities (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20519\"\u003e#20519\u003c/a\u003e) (루밀LuMir)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/04c21475b3004904948f02049f2888b401d82c78\"\u003e\u003ccode\u003e04c2147\u003c/code\u003e\u003c/a\u003e fix: update error message for unused suppressions (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20496\"\u003e#20496\u003c/a\u003e) (fnx)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/38b089c1726feac0e31a31d47941bd99e29ce003\"\u003e\u003ccode\u003e38b089c\u003c/code\u003e\u003c/a\u003e fix: update dependency \u003ccode\u003e@​eslint/config-array\u003c/code\u003e to ^0.23.1 (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20484\"\u003e#20484\u003c/a\u003e) (renovate[bot])\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eDocumentation\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/5b3dbce50a1404a9f118afe810cefeee79388a2a\"\u003e\u003ccode\u003e5b3dbce\u003c/code\u003e\u003c/a\u003e docs: add AI acknowledgement section to templates (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20431\"\u003e#20431\u003c/a\u003e) (루밀LuMir)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/6f23076037d5879f20fb3be2ef094293b1e8d38c\"\u003e\u003ccode\u003e6f23076\u003c/code\u003e\u003c/a\u003e docs: toggle nav in no-JS mode (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20476\"\u003e#20476\u003c/a\u003e) (Tanuj Kanti)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/b69cfb32a16c5d5e9986390d484fae1d21e406f9\"\u003e\u003ccode\u003eb69cfb3\u003c/code\u003e\u003c/a\u003e docs: Update README (GitHub Actions Bot)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eChores\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/e5c281ffd038a3a7a3e5364db0b9378e0ad83020\"\u003e\u003ccode\u003ee5c281f\u003c/code\u003e\u003c/a\u003e chore: updates for v9.39.3 release (Jenkins)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/8c3832adb77cd993b4a24891900d5eeaaf093cdc\"\u003e\u003ccode\u003e8c3832a\u003c/code\u003e\u003c/a\u003e chore: update \u003ccode\u003e@​typescript-eslint/parser\u003c/code\u003e to ^8.56.0 (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20514\"\u003e#20514\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/8330d238ae6adb68bb6a1c9381e38cfedd990d94\"\u003e\u003ccode\u003e8330d23\u003c/code\u003e\u003c/a\u003e test: add tests for config-api (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20493\"\u003e#20493\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/37d6e91e88fa6a2ca6d8726679096acff21ba6cc\"\u003e\u003ccode\u003e37d6e91\u003c/code\u003e\u003c/a\u003e chore: remove eslint v10 prereleases from eslint-config-eslint deps (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20494\"\u003e#20494\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/da7cd0e79197ad16e17052eef99df141de6dbfb1\"\u003e\u003ccode\u003eda7cd0e\u003c/code\u003e\u003c/a\u003e refactor: cleanup error message templates (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20479\"\u003e#20479\u003c/a\u003e) (Francesco Trotta)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/84fb885d49ac810e79a9491276b4828b53d913e5\"\u003e\u003ccode\u003e84fb885\u003c/code\u003e\u003c/a\u003e chore: package.json update for \u003ccode\u003e@​eslint/js\u003c/code\u003e release (Jenkins)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/1f667344b57c4c09b548d94bcfac1f91b6e5c63d\"\u003e\u003ccode\u003e1f66734\u003c/code\u003e\u003c/a\u003e chore: add \u003ccode\u003eeslint\u003c/code\u003e to \u003ccode\u003epeerDependencies\u003c/code\u003e of \u003ccode\u003e@eslint/js\u003c/code\u003e (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20467\"\u003e#20467\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev10.0.0\u003c/h2\u003e\n\u003ch2\u003eBreaking Changes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/f9e54f43a5e497cdfa179338b431093245cb787b\"\u003e\u003ccode\u003ef9e54f4\u003c/code\u003e\u003c/a\u003e feat!: estimate rule-tester failure location (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20420\"\u003e#20420\u003c/a\u003e) (ST-DDT)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/a176319d8ade1a7d9b2d7fb8f038f55a2662325f\"\u003e\u003ccode\u003ea176319\u003c/code\u003e\u003c/a\u003e feat!: replace \u003ccode\u003echalk\u003c/code\u003e with \u003ccode\u003estyleText\u003c/code\u003e and add \u003ccode\u003ecolor\u003c/code\u003e to \u003ccode\u003eResultsMeta\u003c/code\u003e (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20227\"\u003e#20227\u003c/a\u003e) (루밀LuMir)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/c7046e6c1e03c4ca0eee4888a1f2eba4c6454f84\"\u003e\u003ccode\u003ec7046e6\u003c/code\u003e\u003c/a\u003e feat!: enable JSX reference tracking (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20152\"\u003e#20152\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/fa31a608901684fbcd9906d1907e66561d16e5aa\"\u003e\u003ccode\u003efa31a60\u003c/code\u003e\u003c/a\u003e feat!: add \u003ccode\u003ename\u003c/code\u003e to configs (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20015\"\u003e#20015\u003c/a\u003e) (Kirk Waiblinger)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/3383e7ec9028166cafc8ea7986c2f7498d0049f0\"\u003e\u003ccode\u003e3383e7e\u003c/code\u003e\u003c/a\u003e fix!: remove deprecated \u003ccode\u003eSourceCode\u003c/code\u003e methods (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20137\"\u003e#20137\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/501abd0e916a35554c58b7c0365537f1fa3880ce\"\u003e\u003ccode\u003e501abd0\u003c/code\u003e\u003c/a\u003e feat!: update dependency minimatch to v10 (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20246\"\u003e#20246\u003c/a\u003e) (renovate[bot])\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/ca4d3b40085de47561f89656a2207d09946ed45e\"\u003e\u003ccode\u003eca4d3b4\u003c/code\u003e\u003c/a\u003e fix!: stricter rule tester assertions for valid test cases (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20125\"\u003e#20125\u003c/a\u003e) (唯然)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/96512a66c86402fb0538cdcb6cd30b9073f6bf3b\"\u003e\u003ccode\u003e96512a6\u003c/code\u003e\u003c/a\u003e fix!: Remove deprecated rule context methods (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20086\"\u003e#20086\u003c/a\u003e) (Nicholas C. Zakas)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/c69fdacdb2e886b9d965568a397aa8220db3fe90\"\u003e\u003ccode\u003ec69fdac\u003c/code\u003e\u003c/a\u003e feat!: remove eslintrc support (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20037\"\u003e#20037\u003c/a\u003e) (Francesco Trotta)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/208b5cc34a8374ff81412b5bec2e0800eebfbd04\"\u003e\u003ccode\u003e208b5cc\u003c/code\u003e\u003c/a\u003e feat!: Use \u003ccode\u003eScopeManager#addGlobals()\u003c/code\u003e (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20132\"\u003e#20132\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/a2ee188ea7a38a0c6155f3d39e2b00e1d0f36e14\"\u003e\u003ccode\u003ea2ee188\u003c/code\u003e\u003c/a\u003e fix!: add \u003ccode\u003euniqueItems: true\u003c/code\u003e in \u003ccode\u003eno-invalid-regexp\u003c/code\u003e option (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20155\"\u003e#20155\u003c/a\u003e) (Tanuj Kanti)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/a89059dbf2832d417dd493ee81483227ec44e4ab\"\u003e\u003ccode\u003ea89059d\u003c/code\u003e\u003c/a\u003e feat!: Program range span entire source text (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20133\"\u003e#20133\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/39a6424373d915fa9de0d7b0caba9a4dc3da9b53\"\u003e\u003ccode\u003e39a6424\u003c/code\u003e\u003c/a\u003e fix!: assert 'text' is a string across all RuleFixer methods (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20082\"\u003e#20082\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/f28fbf846244e043c92b355b224d121b06140b44\"\u003e\u003ccode\u003ef28fbf8\u003c/code\u003e\u003c/a\u003e fix!: Deprecate \u003ccode\u003e\u0026quot;always\u0026quot;\u003c/code\u003e and \u003ccode\u003e\u0026quot;as-needed\u0026quot;\u003c/code\u003e options of the \u003ccode\u003eradix\u003c/code\u003e rule (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20223\"\u003e#20223\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/aa3fb2b233e929b37220be940575f42c280e0b98\"\u003e\u003ccode\u003eaa3fb2b\u003c/code\u003e\u003c/a\u003e fix!: tighten \u003ccode\u003efunc-names\u003c/code\u003e schema (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20119\"\u003e#20119\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/f6c0ed0311dcfee853367d5068c765d066e6b756\"\u003e\u003ccode\u003ef6c0ed0\u003c/code\u003e\u003c/a\u003e feat!: report \u003ccode\u003eeslint-env\u003c/code\u003e comments as errors (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20128\"\u003e#20128\u003c/a\u003e) (Francesco Trotta)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/4bf739fb533e59f7f0a66b65f7bc80be0f37d8db\"\u003e\u003ccode\u003e4bf739f\u003c/code\u003e\u003c/a\u003e fix!: remove deprecated \u003ccode\u003eLintMessage#nodeType\u003c/code\u003e and \u003ccode\u003eTestCaseError#type\u003c/code\u003e (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20096\"\u003e#20096\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/523c076866400670fb2192a3f55dbf7ad3469247\"\u003e\u003ccode\u003e523c076\u003c/code\u003e\u003c/a\u003e feat!: drop support for jiti \u0026lt; 2.2.0 (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20016\"\u003e#20016\u003c/a\u003e) (michael faith)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/454a292c95f34dad232411ddac06408e6383bb64\"\u003e\u003ccode\u003e454a292\u003c/code\u003e\u003c/a\u003e feat!: update \u003ccode\u003eeslint:recommended\u003c/code\u003e configuration (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20210\"\u003e#20210\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/4f880ee02992e1bf0e96ebaba679985e2d1295f1\"\u003e\u003ccode\u003e4f880ee\u003c/code\u003e\u003c/a\u003e feat!: remove \u003ccode\u003ev10_*\u003c/code\u003e and inactive \u003ccode\u003eunstable_*\u003c/code\u003e flags (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20225\"\u003e#20225\u003c/a\u003e) (sethamus)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/f18115c363a4ac7671a4c7f30ee13d57ebba330f\"\u003e\u003ccode\u003ef18115c\u003c/code\u003e\u003c/a\u003e feat!: \u003ccode\u003eno-shadow-restricted-names\u003c/code\u003e report \u003ccode\u003eglobalThis\u003c/code\u003e by default (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20027\"\u003e#20027\u003c/a\u003e) (sethamus)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/c6358c31fbd3937b92d89be2618ffdf5a774604e\"\u003e\u003ccode\u003ec6358c3\u003c/code\u003e\u003c/a\u003e feat!: Require Node.js \u003ccode\u003e^20.19.0 || ^22.13.0 || \u0026gt;=24\u003c/code\u003e (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20160\"\u003e#20160\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eFeatures\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/bff9091927811497dbf066b0e3b85ecb37d43822\"\u003e\u003ccode\u003ebff9091\u003c/code\u003e\u003c/a\u003e feat: handle \u003ccode\u003eArray.fromAsync\u003c/code\u003e in \u003ccode\u003earray-callback-return\u003c/code\u003e (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20457\"\u003e#20457\u003c/a\u003e) (Francesco Trotta)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/290c594bb50c439fb71bc75521ee5360daa8c222\"\u003e\u003ccode\u003e290c594\u003c/code\u003e\u003c/a\u003e feat: add \u003ccode\u003eself\u003c/code\u003e to \u003ccode\u003eno-implied-eval\u003c/code\u003e rule (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20468\"\u003e#20468\u003c/a\u003e) (sethamus)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/43677de07ebd6e14bfac40a46ad749ba783c45f2\"\u003e\u003ccode\u003e43677de\u003c/code\u003e\u003c/a\u003e feat: fix handling of function and class expression names in \u003ccode\u003eno-shadow\u003c/code\u003e (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20432\"\u003e#20432\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/84fb885d49ac810e79a9491276b4828b53d913e5\"\u003e\u003ccode\u003e84fb885\u003c/code\u003e\u003c/a\u003e chore: package.json update for \u003ccode\u003e@​eslint/js\u003c/code\u003e release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/1f667344b57c4c09b548d94bcfac1f91b6e5c63d\"\u003e\u003ccode\u003e1f66734\u003c/code\u003e\u003c/a\u003e chore: add \u003ccode\u003eeslint\u003c/code\u003e to \u003ccode\u003epeerDependencies\u003c/code\u003e of \u003ccode\u003e@eslint/js\u003c/code\u003e (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20467\"\u003e#20467\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/f3fbc2f60cbe2c718364feb8c3fc0452c0df3c56\"\u003e\u003ccode\u003ef3fbc2f\u003c/code\u003e\u003c/a\u003e chore: set \u003ccode\u003e@eslint/js\u003c/code\u003e version to 10.0.0 to skip releasing it (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20466\"\u003e#20466\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/b4b3127f8542c599ce2dea804b6582ebc40c993d\"\u003e\u003ccode\u003eb4b3127\u003c/code\u003e\u003c/a\u003e chore: package.json update for \u003ccode\u003e@​eslint/js\u003c/code\u003e release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/0b14059491d830a49b3577931f4f68fbcfce6be5\"\u003e\u003ccode\u003e0b14059\u003c/code\u003e\u003c/a\u003e chore: package.json update for \u003ccode\u003e@​eslint/js\u003c/code\u003e release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/fa31a608901684fbcd9906d1907e66561d16e5aa\"\u003e\u003ccode\u003efa31a60\u003c/code\u003e\u003c/a\u003e feat!: add \u003ccode\u003ename\u003c/code\u003e to configs (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20015\"\u003e#20015\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/1e2cad5f6fa47ed6ed89d2a29798dda926d50990\"\u003e\u003ccode\u003e1e2cad5\u003c/code\u003e\u003c/a\u003e chore: package.json update for \u003ccode\u003e@​eslint/js\u003c/code\u003e release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/454a292c95f34dad232411ddac06408e6383bb64\"\u003e\u003ccode\u003e454a292\u003c/code\u003e\u003c/a\u003e feat!: update \u003ccode\u003eeslint:recommended\u003c/code\u003e configuration (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20210\"\u003e#20210\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/c6358c31fbd3937b92d89be2618ffdf5a774604e\"\u003e\u003ccode\u003ec6358c3\u003c/code\u003e\u003c/a\u003e feat!: Require Node.js \u003ccode\u003e^20.19.0 || ^22.13.0 || \u0026gt;=24\u003c/code\u003e (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20160\"\u003e#20160\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/eslint/eslint/commits/v10.0.1/packages/js\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@typescript-eslint/eslint-plugin` from 8.56.0 to 8.60.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases\"\u003e@​typescript-eslint/eslint-plugin's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev8.60.0\u003c/h2\u003e\n\u003ch2\u003e8.60.0 (2026-05-25)\u003c/h2\u003e\n\u003ch3\u003e🚀 Features\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003erule-tester:\u003c/strong\u003e added updates of RuleTester from upstream (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12291\"\u003e#12291\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🩹 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eplayground TS version selector is not working (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12326\"\u003e#12326\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/issues/12325\"\u003e#12325\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e❤️ Thank You\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eEvyatar Daud \u003ca href=\"https://github.com/StyleShit\"\u003e\u003ccode\u003e@​StyleShit\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eVinccool96\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.60.0\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003ev8.59.4\u003c/h2\u003e\n\u003ch2\u003e8.59.4 (2026-05-18)\u003c/h2\u003e\n\u003ch3\u003e🩹 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-floating-promises] stack overflow when using recursive types (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12294\"\u003e#12294\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eproject-service:\u003c/strong\u003e throw error cause in \u003ccode\u003egetParsedConfigFileFromTSServer\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12321\"\u003e#12321\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003etypescript-eslint:\u003c/strong\u003e export Compatible* types from typescript-eslint to resolve pnpm TS error (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12340\"\u003e#12340\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e❤️ Thank You\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eEvyatar Daud \u003ca href=\"https://github.com/StyleShit\"\u003e\u003ccode\u003e@​StyleShit\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eKirk Waiblinger \u003ca href=\"https://github.com/kirkwaiblinger\"\u003e\u003ccode\u003e@​kirkwaiblinger\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003elumir\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.4\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003ev8.59.3\u003c/h2\u003e\n\u003ch2\u003e8.59.3 (2026-05-11)\u003c/h2\u003e\n\u003cp\u003eThis was a version bump only, there were no code changes.\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.3\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003ev8.59.2\u003c/h2\u003e\n\u003ch2\u003e8.59.2 (2026-05-04)\u003c/h2\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/CHANGELOG.md\"\u003e@​typescript-eslint/eslint-plugin's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e8.60.0 (2026-05-25)\u003c/h2\u003e\n\u003cp\u003eThis was a version bump only for eslint-plugin to align it with other projects, there were no code changes.\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.60.0\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003e8.59.4 (2026-05-18)\u003c/h2\u003e\n\u003ch3\u003e🩹 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-floating-promises] stack overflow when using recursive types (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12294\"\u003e#12294\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e❤️ Thank You\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eEvyatar Daud \u003ca href=\"https://github.com/StyleShit\"\u003e\u003ccode\u003e@​StyleShit\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.4\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003e8.59.3 (2026-05-11)\u003c/h2\u003e\n\u003cp\u003eThis was a version bump only for eslint-plugin to align it with other projects, there were no code changes.\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.3\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003e8.59.2 (2026-05-04)\u003c/h2\u003e\n\u003ch3\u003e🩹 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-deprecated] object destructuring values should be treated as declarations (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12292\"\u003e#12292\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unsafe-type-assertion] handle crash on recursive template literal types (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12150\"\u003e#12150\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e❤️ Thank You\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eDima Barabash\u003c/li\u003e\n\u003cli\u003eKirk Waiblinger \u003ca href=\"https://github.com/kirkwaiblinger\"\u003e\u003ccode\u003e@​kirkwaiblinger\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.2\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003e8.59.1 (2026-04-27)\u003c/h2\u003e\n\u003ch3\u003e🩹 Fixes\u003c/h3\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/f891c29de5f3e23f3d8c59cc599d3196e54e9b58\"\u003e\u003ccode\u003ef891c29\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.60.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/ca6ca1431b6d18235297a7e29feb5d98f012dff2\"\u003e\u003ccode\u003eca6ca14\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.59.4\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/4302433ae6bf93d4ddc35264ad1b951254758566\"\u003e\u003ccode\u003e4302433\u003c/code\u003e\u003c/a\u003e fix(eslint-plugin): [no-floating-promises] stack overflow when using recursiv...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/10b79f1ba8e98610a3af85152a1b3b406f91e633\"\u003e\u003ccode\u003e10b79f1\u003c/code\u003e\u003c/a\u003e chore(deps): update dependency eslint to v10.4.0 (\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin/issues/12339\"\u003e#12339\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/2a6765d9628dc776f8127c96f088bb807c0bcab2\"\u003e\u003ccode\u003e2a6765d\u003c/code\u003e\u003c/a\u003e chore: clenaup \u003ccode\u003egetAwaitedType\u003c/code\u003e from \u003ccode\u003etypescript.d.ts\u003c/code\u003e (\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin/issues/12302\"\u003e#12302\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/48e13c0261e3cb1bf4f4dfaa462cdb3a56ef7383\"\u003e\u003ccode\u003e48e13c0\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.59.3\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/e26dc8003ababf078aad4df17765ee4cea30644c\"\u003e\u003ccode\u003ee26dc80\u003c/code\u003e\u003c/a\u003e docs: update stale links to latest (\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin/issues/12313\"\u003e#12313\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/44f9625336841a8ee3eb01a9e02e49b1d7b12648\"\u003e\u003ccode\u003e44f9625\u003c/code\u003e\u003c/a\u003e chore(deps): update vitest monorepo to v4.1.5 (\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin/issues/12307\"\u003e#12307\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/2ec35f1760aade4df4c631d76d78c7ed5e136333\"\u003e\u003ccode\u003e2ec35f1\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.59.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/ec3ef25390f7daf5a9ff33a60282bdbbb49ab0f3\"\u003e\u003ccode\u003eec3ef25\u003c/code\u003e\u003c/a\u003e test: make no-useless-empty-export tests fully static (\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin/issues/12260\"\u003e#12260\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commits/v8.60.0/packages/eslint-plugin\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@typescript-eslint/parser` from 8.56.0 to 8.60.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases\"\u003e@​typescript-eslint/parser's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev8.60.0\u003c/h2\u003e\n\u003ch2\u003e8.60.0 (2026-05-25)\u003c/h2\u003e\n\u003ch3\u003e🚀 Features\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003erule-tester:\u003c/strong\u003e added updates of RuleTester from upstream (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12291\"\u003e#12291\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🩹 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eplayground TS version selector is not working (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12326\"\u003e#12326\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/issues/12325\"\u003e#12325\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e❤️ Thank You\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eEvyatar Daud \u003ca href=\"https://github.com/StyleShit\"\u003e\u003ccode\u003e@​StyleShit\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eVinccool96\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.60.0\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003ev8.59.4\u003c/h2\u003e\n\u003ch2\u003e8.59.4 (2026-05-18)\u003c/h2\u003e\n\u003ch3\u003e🩹 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-floating-promises] stack overflow when using recursive types (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12294\"\u003e#12294\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eproject-service:\u003c/strong\u003e throw error cause in \u003ccode\u003egetParsedConfigFileFromTSServer\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12321\"\u003e#12321\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003etypescript-eslint:\u003c/strong\u003e export Compatible* types from typescript-eslint to resolve pnpm TS error (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12340\"\u003e#12340\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e❤️ Thank You\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eEvyatar Daud \u003ca href=\"https://github.com/StyleShit\"\u003e\u003ccode\u003e@​StyleShit\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eKirk Waiblinger \u003ca href=\"https://github.com/kirkwaiblinger\"\u003e\u003ccode\u003e@​kirkwaiblinger\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003elumir\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.4\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003ev8.59.3\u003c/h2\u003e\n\u003ch2\u003e8.59.3 (2026-05-11)\u003c/h2\u003e\n\u003cp\u003eThis was a version bump only, there were no code changes.\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.3\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003ev8.59.2\u003c/h2\u003e\n\u003ch2\u003e8.59.2 (2026-05-04)\u003c/h2\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/parser/CHANGELOG.md\"\u003e@​typescript-eslint/parser's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e8.60.0 (2026-05-25)\u003c/h2\u003e\n\u003cp\u003eThis was a version bump only for parser to align it with other projects, there were no code changes.\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.60.0\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003e8.59.4 (2026-05-18)\u003c/h2\u003e\n\u003cp\u003eThis was a version bump only for parser to align it with other projects, there were no code changes.\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.4\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003e8.59.3 (2026-05-11)\u003c/h2\u003e\n\u003cp\u003eThis was a version bump only for parser to align it with other projects, there were no code changes.\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.3\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003e8.59.2 (2026-05-04)\u003c/h2\u003e\n\u003cp\u003eThis was a version bump only for parser to align it with other projects, there were no code changes.\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.2\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003e8.59.1 (2026-04-27)\u003c/h2\u003e\n\u003cp\u003eThis was a version bump only for parser to align it with other projects, there were no code changes.\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.1\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003e8.59.0 (2026-04-20)\u003c/h2\u003e\n\u003cp\u003eThis was a version bump only for parser to align it with other projects, there were no code changes.\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.0\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003e8.58.2 (2026-04-13)\u003c/h2\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/f891c29de5f3e23f3d8c59cc599d3196e54e9b58\"\u003e\u003ccode\u003ef891c29\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.60.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/ca6ca1431b6d18235297a7e29feb5d98f012dff2\"\u003e\u003ccode\u003eca6ca14\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.59.4\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/48e13c0261e3cb1bf4f4dfaa462cdb3a56ef7383\"\u003e\u003ccode\u003e48e13c0\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.59.3\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/44f9625336841a8ee3eb01a9e02e49b1d7b12648\"\u003e\u003ccode\u003e44f9625\u003c/code\u003e\u003c/a\u003e chore(deps): update vitest monorepo to v4.1.5 (\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/parser/issues/12307\"\u003e#12307\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/2ec35f1760aade4df4c631d76d78c7ed5e136333\"\u003e\u003ccode\u003e2ec35f1\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.59.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/52457932e5507b5ca01e720a541f3f8d01e09b9d\"\u003e\u003ccode\u003e5245793\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.59.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/ea9ae4f8817873480e3501145059f63e39e8d8a1\"\u003e\u003ccode\u003eea9ae4f\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.59.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/90c2803a4c250e0343598d41e973f95e743bf4ce\"\u003e\u003ccode\u003e90c2803\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.58.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/be6b49a02d68db9bdc8985e7e9e1598700fda2fa\"\u003e\u003ccode\u003ebe6b49a\u003c/code\u003e\u003c/a\u003e fix: remove tsbuildinfo cache file from published packages (\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/parser/issues/12187\"\u003e#12187\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/5311ed312eadf4e238324f2726ae0b1f3f2206e6\"\u003e\u003ccode\u003e5311ed3\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.58.1\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commits/v8.60.0/packages/parser\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `eslint` from 9.39.2 to 10.4.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/eslint/eslint/releases\"\u003eeslint's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev10.4.1\u003c/h2\u003e\n\u003ch2\u003eBug Fixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/e557467db7496220eebcbe2ac5ea6d38c12bb1ec\"\u003e\u003ccode\u003ee557467\u003c/code\u003e\u003c/a\u003e fix: update \u003ccode\u003e@eslint/plugin-kit\u003c/code\u003e version to 0.7.2 (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20930\"\u003e#20930\u003c/a\u003e) (Francesco Trotta)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/d4ce898796ca22c3b96aa70d3014cb85f4bac1cd\"\u003e\u003ccode\u003ed4ce898\u003c/code\u003e\u003c/a\u003e fix: propagate failures from delegated commands (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20917\"\u003e#20917\u003c/a\u003e) (Minh Vu)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/f4f3507460bc016b5be979c05d2969793f570cbf\"\u003e\u003ccode\u003ef4f3507\u003c/code\u003e\u003c/a\u003e fix: prefer-arrow-callback invalid autofix with newline after \u003ccode\u003easync\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20916\"\u003e#20916\u003c/a\u003e) (kuldeep kumar)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/c5bc78b37e08b9054a11f0cc2d81808bb24acb85\"\u003e\u003ccode\u003ec5bc78b\u003c/code\u003e\u003c/a\u003e fix: false positive for reference in \u003ccode\u003efinally\u003c/code\u003e block (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20655\"\u003e#20655\u003c/a\u003e) (Tanuj Kanti)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/27538c01f5df4e9306f6f4ba867b2dd6307fae59\"\u003e\u003ccode\u003e27538c0\u003c/code\u003e\u003c/a\u003e fix: add missing CodePath and CodePathSegment types (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20853\"\u003e#20853\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eDocumentation\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/61b0add61ffc52665562be7bb96f526690a78b30\"\u003e\u003ccode\u003e61b0add\u003c/code\u003e\u003c/a\u003e docs: remove deprecated rule from related rules of \u003ccode\u003emax-params\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20921\"\u003e#20921\u003c/a\u003e) (Tanuj Kanti)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/305d5b91aeac24d36fde42f75625a8f183d4ce43\"\u003e\u003ccode\u003e305d5b9\u003c/code\u003e\u003c/a\u003e docs: remove deprecated rules from related rules section (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20911\"\u003e#20911\u003c/a\u003e) (Tanuj Kanti)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/49b0202d01918b8061720d586dffd7c68047090c\"\u003e\u003ccode\u003e49b0202\u003c/code\u003e\u003c/a\u003e docs: fix \u003ccode\u003edisplay: none\u003c/code\u003e of ad (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20901\"\u003e#20901\u003c/a\u003e) (Tanuj Kanti)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/9067f9492ec998afc5b4f057a477ecf6ebd45e44\"\u003e\u003ccode\u003e9067f94\u003c/code\u003e\u003c/a\u003e docs: switch build to Node.js 24 (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20893\"\u003e#20893\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/c91b0417e3420c76807ce1fa2aea76e2de87ab86\"\u003e\u003ccode\u003ec91b041\u003c/code\u003e\u003c/a\u003e docs: Update README (GitHub Actions Bot)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/e349265cb37f3ebc837e178e48a725bb782bd870\"\u003e\u003ccode\u003ee349265\u003c/code\u003e\u003c/a\u003e docs: clarify semver strings in rule deprecation objects (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20885\"\u003e#20885\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eChores\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/b0e466b6ab47bfc7de43d8de0c315d8ee83aa584\"\u003e\u003ccode\u003eb0e466b\u003c/code\u003e\u003c/a\u003e test: add \u003ccode\u003edata\u003c/code\u003e property to invalid tests cases for rules (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20924\"\u003e#20924\u003c/a\u003e) (Tanuj Kanti)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/f78838bc4c86d487e1bcc7cede260c4467721c46\"\u003e\u003ccode\u003ef78838b\u003c/code\u003e\u003c/a\u003e test: add CodePath type coverage (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20904\"\u003e#20904\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/1daa4bd734b79a62e317d0394394a6b38cff49f9\"\u003e\u003ccode\u003e1daa4bd\u003c/code\u003e\u003c/a\u003e chore: update \u003ccode\u003eeslint-plugin-eslint-comments\u003c/code\u003e test data to latest commit (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20922\"\u003e#20922\u003c/a\u003e) (Francesco Trotta)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/002942ce988ea28b78e0a2f3b074081e638b552c\"\u003e\u003ccode\u003e002942c\u003c/code\u003e\u003c/a\u003e ci: declare contents:read on update-readme workflow (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20919\"\u003e#20919\u003c/a\u003e) (Arpit Jain)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/64bca24e7bed35bc3c864fc625cb2d89eca87d5b\"\u003e\u003ccode\u003e64bca24\u003c/code\u003e\u003c/a\u003e chore: update ecosystem plugins (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20912\"\u003e#20912\u003c/a\u003e) (ESLint Bot)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/6d7c832950d5e92499d88e504080661f888f8f56\"\u003e\u003ccode\u003e6d7c832\u003c/code\u003e\u003c/a\u003e chore: ignore fflate updates in renovate (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20908\"\u003e#20908\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/b2c86382164d87c6203b78d52068cd6a2a6ffe30\"\u003e\u003ccode\u003eb2c8638\u003c/code\u003e\u003c/a\u003e ci: bump pnpm/action-setup from 6.0.7 to 6.0.8 (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20889\"\u003e#20889\u003c/a\u003e) (dependabot[bot])\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/a9b8d7f74c50211701cfc49710fa541fd91b2aa5\"\u003e\u003ccode\u003ea9b8d7f\u003c/code\u003e\u003c/a\u003e chore: increase maxBuffer for ecosystem tests (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20881\"\u003e#20881\u003c/a\u003e) (sethamus)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/b702ead5e1ed7cb9f28238a454797662efb37396\"\u003e\u003ccode\u003eb702ead\u003c/code\u003e\u003c/a\u003e chore: update ecosystem update PR settings (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20884\"\u003e#20884\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/507f60e9a78c9a902bc8759f066ae17a1ea6cd81\"\u003e\u003ccode\u003e507f60e\u003c/code\u003e\u003c/a\u003e chore: update ecosystem plugins (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20882\"\u003e#20882\u003c/a\u003e) (ESLint Bot)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/92f5c5bb6bf3a5d167c8ee53a430833410295c6d\"\u003e\u003ccode\u003e92f5c5b\u003c/code\u003e\u003c/a\u003e test: add unit test for message-count (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20878\"\u003e#20878\u003c/a\u003e) (kuldeep kumar)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/df321080af5758b1fa25e4b9a40e26135642dd6e\"\u003e\u003ccode\u003edf32108\u003c/code\u003e\u003c/a\u003e chore: add \u003ccode\u003e@​eslint/markdown\u003c/code\u003e and typescript-eslint ecosystem tests (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20837\"\u003e#20837\u003c/a\u003e) (sethamus)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/327f91d36aa49f2a50ded931d841a16374fd875f\"\u003e\u003ccode\u003e327f91d\u003c/code\u003e\u003c/a\u003e chore: use includeIgnoreFile internally (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20876\"\u003e#20876\u003c/a\u003e) (Kirk Waiblinger)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/f0dc4bd893fb3a9f44e4ddc3ad7063ffb0beacd3\"\u003e\u003ccode\u003ef0dc4bd\u003c/code\u003e\u003c/a\u003e chore: pin fflate@0.8.2 (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20877\"\u003e#20877\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/0f4bd257a67a082b756de746d9e0c4842ab764ca\"\u003e\u003ccode\u003e0f4bd25\u003c/code\u003e\u003c/a\u003e ci: run Discord alert for ecosystem test failures (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20873\"\u003e#20873\u003c/a\u003e) (Copilot)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev10.4.0\u003c/h2\u003e\n\u003ch2\u003eFeatures\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/1a45ec596af1dd5f880e6874cb8f24dafb6a7ecf\"\u003e\u003ccode\u003e1a45ec5\u003c/code\u003e\u003c/a\u003e feat: check sequence expressions in \u003ccode\u003efor-direction\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20701\"\u003e#20701\u003c/a\u003e) (kuldeep kumar)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/450040bd89b989b3531824c6be45feb5fe3d936b\"\u003e\u003ccode\u003e450040b\u003c/code\u003e\u003c/a\u003e feat: add \u003ccode\u003eincludeIgnoreFile()\u003c/code\u003e to \u003ccode\u003eeslint/config\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20735\"\u003e#20735\u003c/a\u003e) (Kirk Waiblinger)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eBug Fixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/544c0c3da589166ad8e5d634f35d3d06701c57be\"\u003e\u003ccode\u003e544c0c3\u003c/code\u003e\u003c/a\u003e fix: escape code path DOT labels in debug output (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20866\"\u003e#20866\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/6799431203f2579632d0870f98ba132067f4040c\"\u003e\u003ccode\u003e6799431\u003c/code\u003e\u003c/a\u003e fix: update dependency \u003ccode\u003e@​eslint/config-helpers\u003c/code\u003e to ^0.6.0 (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20850\"\u003e#20850\u003c/a\u003e) (renovate[bot])\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/f078fef5005dceb14fc162aab7c7200e027688dd\"\u003e\u003ccode\u003ef078fef\u003c/code\u003e\u003c/a\u003e fix: handle non-array deprecated rule replacements (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20825\"\u003e#20825\u003c/a\u003e) (xbinaryx)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eDocumentation\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/7e52a7151fb92eec0e0f67fe4e5ddbd1ccce796f\"\u003e\u003ccode\u003e7e52a71\u003c/code\u003e\u003c/a\u003e docs: add mention of \u003ccode\u003e@eslint-react/eslint-plugin\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20869\"\u003e#20869\u003c/a\u003e) (Pavel)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/db3468ba746407d7f286f18f7ea9db6df0e3bc08\"\u003e\u003ccode\u003edb3468b\u003c/code\u003e\u003c/a\u003e docs: tweak wording around ambiguous CJS-vs-ESM config (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20865\"\u003e#20865\u003c/a\u003e) (Kirk Waiblinger)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/90846643ec6e97d447ae0d831fabe6d17b0a998a\"\u003e\u003ccode\u003e9084664\u003c/code\u003e\u003c/a\u003e docs: Update README (GitHub Actions Bot)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/9cc73875046e3c4b8313644cbb1e99e26b36bd3f\"\u003e\u003ccode\u003e9cc7387\u003c/code\u003e\u003c/a\u003e docs: Update README (GitHub Actions Bot)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/3d7b5484407403817aa9071a394d336d8ea96eb5\"\u003e\u003ccode\u003e3d7b548\u003c/code\u003e\u003c/a\u003e docs: Update README (GitHub Actions Bot)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/191ec3c0a3f94ce0f110df761f0b2b8949011ccb\"\u003e\u003ccode\u003e191ec3c\u003c/code\u003e\u003c/a\u003e docs: Update README (GitHub Actions Bot)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/4a3d15a99c452c4db2fd56b577fa7597e98ab0c2\"\u003e\u003ccode\u003e4a3d15a\u003c/code\u003e\u003c/a\u003e 10.4.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/43e7e2bdc5c6cacc535446b7d23c10f780384ba8\"\u003e\u003ccode\u003e43e7e2b\u003c/code\u003e\u003c/a\u003e Build: changelog update for 10.4.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/e557467db7496220eebcbe2ac5ea6d38c12bb1ec\"\u003e\u003ccode\u003ee557467\u003c/code\u003e\u003c/a\u003e fix: update \u003ccode\u003e@eslint/plugin-kit\u003c/code\u003e version to 0.7.2 (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20930\"\u003e#20930\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/b0e466b6ab47bfc7de43d8de0c315d8ee83aa584\"\u003e\u003ccode\u003eb0e466b\u003c/code\u003e\u003c/a\u003e test: add \u003ccode\u003edata\u003c/code\u003e property to invalid tests cases for rules (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20924\"\u003e#20924\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/d4ce898796ca22c3b96aa70d3014cb85f4bac1cd\"\u003e\u003ccode\u003ed4ce898\u003c/code\u003e\u003c/a\u003e fix: propagate failures from delegated commands (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20917\"\u003e#20917\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/f4f3507460bc016b5be979c05d2969793f570cbf\"\u003e\u003ccode\u003ef4f3507\u003c/code\u003e\u003c/a\u003e fix: prefer-arrow-callback invalid autofix with newline after \u003ccode\u003easync\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20916\"\u003e#20916\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/f78838bc4c86d487e1bcc7cede260c4467721c46\"\u003e\u003ccode\u003ef78838b\u003c/code\u003e\u003c/a\u003e test: add CodePath type coverage (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20904\"\u003e#20904\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/61b0add61ffc52665562be7bb96f526690a78b30\"\u003e\u003ccode\u003e61b0add\u003c/code\u003e\u003c/a\u003e docs: remove deprecated rule from related rules of \u003ccode\u003emax-params\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20921\"\u003e#20921\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/1daa4bd734b79a62e317d0394394a6b38cff49f9\"\u003e\u003ccode\u003e1daa4bd\u003c/code\u003e\u003c/a\u003e chore: update \u003ccode\u003eeslint-plugin-eslint-comments\u003c/code\u003e test data to latest commit (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20\"\u003e#20\u003c/a\u003e...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/002942ce988ea28b78e0a2f3b074081e638b552c\"\u003e\u003ccode\u003e002942c\u003c/code\u003e\u003c/a\u003e ci: declare contents:read on update-readme workflow (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20919\"\u003e#20919\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/eslint/eslint/compare/v9.39.2...v10.4.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `eslint-import-resolver-typescript` from 4.4.4 to 4.4.5\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/import-js/eslint-import-resolver-typescript/releases\"\u003eeslint-import-resolver-typescript's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev4.4.5\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/import-js/eslint-import-resolver-typescript/pull/473\"\u003e#473\u003c/a\u003e \u003ca href=\"https://github.com/import-js/eslint-import-resolver-typescript/commit/32c61abccf26bd2a2267f2e0e67d82e6f88d149a\"\u003e\u003ccode\u003e32c61ab\u003c/code\u003e\u003c/a\u003e Thanks \u003ca href=\"https://github.com/leey0818\"\u003e\u003ccode\u003e@​leey0818\u003c/code\u003e\u003c/a\u003e! - fix: check tsconfig matching before using resolver\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/import-js/eslint-import-resolver-typescript/blob/master/CHANGELOG.md\"\u003eeslint-import-resolver-typescript's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e4.4.5\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/import-js/eslint-import-resolver-typescript/pull/473\"\u003e#473\u003c/a\u003e \u003ca href=\"https://github.com/import-js/eslint-import-resolver-typescript/commit/32c61abccf26bd2a2267f2e0e67d82e6f88d149a\"\u003e\u003ccode\u003e32c61ab\u003c/code\u003e\u003c/a\u003e Thanks \u003ca href=\"https://github.com/leey0818\"\u003e\u003ccode\u003e@​leey0818\u003c/code\u003e\u003c/a\u003e! - fix: check tsconfig matching before using resolver\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/import-js/eslint-import-resolver-typescript/commit/724c47d8c08fa8ffa702c7a94ba53b367a4727fb\"\u003e\u003ccode\u003e724c47d\u003c/code\u003e\u003c/a\u003e chore: release eslint-import-resolver-typescript (\u003ca href=\"https://redirect.github.com/import-js/eslint-import-resolver-typescript/issues/480\"\u003e#480\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/import-js/eslint-import-resolver-typescript/commit/32c61abccf26bd2a2267f2e0e67d82e6f88d149a\"\u003e\u003ccode\u003e32c61ab\u003c/code\u003e\u003c/a\u003e fix: check tsconfig matching before using resolver (\u003ca href=\"https://redirect.github.com/import-js/eslint-import-resolver-typescript/issues/473\"\u003e#473\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/import-js/eslint-import-resolver-typescript/compare/v4.4.4...v4.4.5\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eMaintainer changes\u003c/summary\u003e\n\u003cp\u003eThis version was pushed to npm by \u003ca href=\"https://www.npmjs.com/~GitHub%20Actions\"\u003eGitHub Actions\u003c/a\u003e, a new releaser for eslint-import-resolver-typescript since your current version.\u003c/p\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `eslint-plugin-react-hooks` from 7.0.1 to 7.1.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/facebook/react/releases\"\u003eeslint-plugin-react-hooks's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eeslint-plugin-react-hooks@7.1.1 (April 17, 2026)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eNote:\u003c/strong\u003e 7.1.0 accidentally removed the \u003ccode\u003ecomponent-hook-factories\u003c/code\u003e rule, causing errors for users who referenced it in their ESLint config. This is now fixed.\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdd deprecated no-op \u003ccode\u003ecomponent-hook-factories\u003c/code\u003e rule for backwards compatibility. (\u003ca href=\"https://github.com/mofeiZ\"\u003e\u003ccode\u003e@​mofeiZ\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/36307\"\u003e#36307\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eeslint-plugin-react-hooks@7.1.0 (April 16, 2026)\u003c/h2\u003e\n\u003cp\u003eThis release adds ESLint v10 support, improves performance by skipping compilation for non-React files, and includes compiler lint improvements including better \u003ccode\u003eset-state-in-effect\u003c/code\u003e detection, improved ref validation, and more helpful error reporting.\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdd ESLint v10 support. (\u003ca href=\"https://github.com/azat-io\"\u003e\u003ccode\u003e@​azat-io\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/35720\"\u003e#35720\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSkip compilation for non-React files to improve performance. (\u003ca href=\"https://github.com/josephsavona\"\u003e\u003ccode\u003e@​josephsavona\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/35589\"\u003e#35589\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix exhaustive deps bug with Flow type casting. (\u003ca href=\"https://github.com/jorge-cab\"\u003e\u003ccode\u003e@​jorge-cab\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/35691\"\u003e#35691\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix \u003ccode\u003euseEffectEvent\u003c/code\u003e checks in component syntax. (\u003ca href=\"https://github.com/jbrown215\"\u003e\u003ccode\u003e@​jbrown215\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/35041\"\u003e#35041\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eImproved \u003ccode\u003eset-state-in-effect\u003c/code\u003e validation with fewer false negatives. (\u003ca href=\"https://github.com/jorge-cab\"\u003e\u003ccode\u003e@​jorge-cab\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/35134\"\u003e#35134\u003c/a\u003e, \u003ca href=\"https://github.com/josephsavona\"\u003e\u003ccode\u003e@​josephsavona\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react...\n\n_Description has been truncated_","html_url":"https://github.com/mr-ElAmine/string/pull/9","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/mr-ElAmine%2Fstring/issues/9","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/9/packages"},{"uuid":"4541269654","node_id":"PR_kwDORTPxEM7gRmh1","number":358,"state":"closed","title":"chore(deps): bump the dependencies group across 1 directory with 16 updates","user":"dependabot[bot]","labels":["dependencies","javascript"],"assignees":[],"locked":false,"comments_count":1,"pull_request":true,"closed_at":"2026-05-31T23:24:30.000Z","author_association":null,"state_reason":null,"created_at":"2026-05-28T14:37:22.000Z","updated_at":"2026-05-31T23:24:32.000Z","time_to_close":290828,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"chore(deps): bump","group_name":"dependencies","update_count":16,"packages":[{"name":"typescript-eslint","old_version":"8.59.3","new_version":"8.60.0","repository_url":"https://github.com/typescript-eslint/typescript-eslint"},{"name":"pyright","old_version":"1.1.409","new_version":"1.1.410","repository_url":"https://github.com/Microsoft/pyright"},{"name":"typescript-language-server","old_version":"5.2.0","new_version":"5.3.0","repository_url":"https://github.com/typescript-language-server/typescript-language-server"},{"name":"ws","old_version":"8.20.1","new_version":"8.21.0","repository_url":"https://github.com/websockets/ws"},{"name":"@vitest/coverage-v8","old_version":"4.1.6","new_version":"4.1.7","repository_url":"https://github.com/vitest-dev/vitest"},{"name":"tsx","old_version":"4.22.0","new_version":"4.22.3","repository_url":"https://github.com/privatenumber/tsx"},{"name":"vitest","old_version":"4.1.6","new_version":"4.1.7","repository_url":"https://github.com/vitest-dev/vitest"},{"name":"@assistant-ui/react","old_version":"0.14.5","new_version":"0.14.11","repository_url":"https://github.com/assistant-ui/assistant-ui"},{"name":"@assistant-ui/react-markdown","old_version":"0.14.0","new_version":"0.14.1","repository_url":"https://github.com/assistant-ui/assistant-ui"},{"name":"lucide-react","old_version":"1.16.0","new_version":"1.17.0","repository_url":"https://github.com/lucide-icons/lucide"},{"name":"react-resizable-panels","old_version":"4.11.1","new_version":"4.11.2","repository_url":"https://github.com/bvaughn/react-resizable-panels"},{"name":"shiki","old_version":"4.0.2","new_version":"4.1.0","repository_url":"https://github.com/shikijs/shiki"},{"name":"zustand","old_version":"5.0.13","new_version":"5.0.14","repository_url":"https://github.com/pmndrs/zustand"},{"name":"@types/react","old_version":"19.2.14","new_version":"19.2.15","repository_url":"https://github.com/DefinitelyTyped/DefinitelyTyped"},{"name":"electron","old_version":"41.6.1","new_version":"42.3.0","repository_url":"https://github.com/electron/electron"},{"name":"vite","old_version":"8.0.13","new_version":"8.0.14","repository_url":"https://github.com/vitejs/vite"}],"path":null,"ecosystem":"npm"},"body":"Bumps the dependencies group with 16 updates in the / directory:\n\n| Package | From | To |\n| --- | --- | --- |\n| [typescript-eslint](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/typescript-eslint) | `8.59.3` | `8.60.0` |\n| [pyright](https://github.com/Microsoft/pyright/tree/HEAD/packages/pyright) | `1.1.409` | `1.1.410` |\n| [typescript-language-server](https://github.com/typescript-language-server/typescript-language-server) | `5.2.0` | `5.3.0` |\n| [ws](https://github.com/websockets/ws) | `8.20.1` | `8.21.0` |\n| [@vitest/coverage-v8](https://github.com/vitest-dev/vitest/tree/HEAD/packages/coverage-v8) | `4.1.6` | `4.1.7` |\n| [tsx](https://github.com/privatenumber/tsx) | `4.22.0` | `4.22.3` |\n| [vitest](https://github.com/vitest-dev/vitest/tree/HEAD/packages/vitest) | `4.1.6` | `4.1.7` |\n| [@assistant-ui/react](https://github.com/assistant-ui/assistant-ui/tree/HEAD/packages/react) | `0.14.5` | `0.14.11` |\n| [@assistant-ui/react-markdown](https://github.com/assistant-ui/assistant-ui/tree/HEAD/packages/react-markdown) | `0.14.0` | `0.14.1` |\n| [lucide-react](https://github.com/lucide-icons/lucide/tree/HEAD/packages/lucide-react) | `1.16.0` | `1.17.0` |\n| [react-resizable-panels](https://github.com/bvaughn/react-resizable-panels) | `4.11.1` | `4.11.2` |\n| [shiki](https://github.com/shikijs/shiki/tree/HEAD/packages/shiki) | `4.0.2` | `4.1.0` |\n| [zustand](https://github.com/pmndrs/zustand) | `5.0.13` | `5.0.14` |\n| [@types/react](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/react) | `19.2.14` | `19.2.15` |\n| [electron](https://github.com/electron/electron) | `41.6.1` | `42.3.0` |\n| [vite](https://github.com/vitejs/vite/tree/HEAD/packages/vite) | `8.0.13` | `8.0.14` |\n\n\nUpdates `typescript-eslint` from 8.59.3 to 8.60.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases\"\u003etypescript-eslint's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev8.60.0\u003c/h2\u003e\n\u003ch2\u003e8.60.0 (2026-05-25)\u003c/h2\u003e\n\u003ch3\u003e🚀 Features\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003erule-tester:\u003c/strong\u003e added updates of RuleTester from upstream (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12291\"\u003e#12291\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🩹 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eplayground TS version selector is not working (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12326\"\u003e#12326\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/issues/12325\"\u003e#12325\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e❤️ Thank You\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eEvyatar Daud \u003ca href=\"https://github.com/StyleShit\"\u003e\u003ccode\u003e@​StyleShit\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eVinccool96\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.60.0\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003ev8.59.4\u003c/h2\u003e\n\u003ch2\u003e8.59.4 (2026-05-18)\u003c/h2\u003e\n\u003ch3\u003e🩹 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-floating-promises] stack overflow when using recursive types (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12294\"\u003e#12294\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eproject-service:\u003c/strong\u003e throw error cause in \u003ccode\u003egetParsedConfigFileFromTSServer\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12321\"\u003e#12321\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003etypescript-eslint:\u003c/strong\u003e export Compatible* types from typescript-eslint to resolve pnpm TS error (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12340\"\u003e#12340\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e❤️ Thank You\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eEvyatar Daud \u003ca href=\"https://github.com/StyleShit\"\u003e\u003ccode\u003e@​StyleShit\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eKirk Waiblinger \u003ca href=\"https://github.com/kirkwaiblinger\"\u003e\u003ccode\u003e@​kirkwaiblinger\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003elumir\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.4\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/typescript-eslint/CHANGELOG.md\"\u003etypescript-eslint's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e8.60.0 (2026-05-25)\u003c/h2\u003e\n\u003cp\u003eThis was a version bump only for typescript-eslint to align it with other projects, there were no code changes.\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.60.0\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003e8.59.4 (2026-05-18)\u003c/h2\u003e\n\u003ch3\u003e🩹 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003etypescript-eslint:\u003c/strong\u003e export Compatible* types from typescript-eslint to resolve pnpm TS error (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12340\"\u003e#12340\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e❤️ Thank You\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eKirk Waiblinger \u003ca href=\"https://github.com/kirkwaiblinger\"\u003e\u003ccode\u003e@​kirkwaiblinger\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.4\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/f891c29de5f3e23f3d8c59cc599d3196e54e9b58\"\u003e\u003ccode\u003ef891c29\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.60.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/ca6ca1431b6d18235297a7e29feb5d98f012dff2\"\u003e\u003ccode\u003eca6ca14\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.59.4\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/4b927c607755b2648d5854b9e928c1dbb2b8e088\"\u003e\u003ccode\u003e4b927c6\u003c/code\u003e\u003c/a\u003e fix(typescript-eslint): export Compatible* types from typescript-eslint to re...\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commits/v8.60.0/packages/typescript-eslint\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `pyright` from 1.1.409 to 1.1.410\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/Microsoft/pyright/releases\"\u003epyright's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ePublished 1.1.410\u003c/h2\u003e\n\u003ch2\u003eChanges:\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e2dfeabc9f2ced43ebc672a6a7b85a99917694581 Published 1.1.410\u003c/li\u003e\n\u003cli\u003e79cc195a205ca526c3b5a796d8c1f6dec431fd3b Update NODE_VERSION to '22.x' in workflow files for consistency with vscode (\u003ca href=\"https://github.com/Microsoft/pyright/tree/HEAD/packages/pyright/issues/11460\"\u003e#11460\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e505a9bcb8780582ebe76a7b354be8f23d5e23dab Update typeshed to 483fd73dcea6f5fbc04ea602e802e798024fa2e2 (\u003ca href=\"https://github.com/Microsoft/pyright/tree/HEAD/packages/pyright/issues/11416\"\u003e#11416\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ef06cf49e40560ecdf91f68337302ceb720407ad8 Fix hang in constraint solver for cyclic TypeVar lower bounds (\u003ca href=\"https://github.com/Microsoft/pyright/tree/HEAD/packages/pyright/issues/11413\"\u003e#11413\u003c/a\u003e) (\u003ca href=\"https://github.com/Microsoft/pyright/tree/HEAD/packages/pyright/issues/11415\"\u003e#11415\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e3619ecdf4f41ede49fe297196c976d4761cf4733 Faster tokenizer (\u003ca href=\"https://github.com/Microsoft/pyright/tree/HEAD/packages/pyright/issues/11392\"\u003e#11392\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e34c556b79362cc527431de819ce77925b49c5e1d Push pylance changes to pyright (\u003ca href=\"https://github.com/Microsoft/pyright/tree/HEAD/packages/pyright/issues/11396\"\u003e#11396\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eThis list of changes was \u003ca href=\"https://devdiv.visualstudio.com/DevDiv/_build/results?buildId=14167094\u0026amp;view=logs\"\u003eauto generated\u003c/a\u003e.\u003c!-- raw HTML omitted --\u003e\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/pyright/commit/2dfeabc9f2ced43ebc672a6a7b85a99917694581\"\u003e\u003ccode\u003e2dfeabc\u003c/code\u003e\u003c/a\u003e Published 1.1.410\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/pyright/commit/4cc1392284c66116b8bb13a6e2965faa152c77a6\"\u003e\u003ccode\u003e4cc1392\u003c/code\u003e\u003c/a\u003e Update rspack dependencies to version 2.0.4 (\u003ca href=\"https://github.com/Microsoft/pyright/tree/HEAD/packages/pyright/issues/11458\"\u003e#11458\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/pyright/commit/4243a1b36c91204720c4cf80e5bbcb4a0737a759\"\u003e\u003ccode\u003e4243a1b\u003c/code\u003e\u003c/a\u003e Bump node-forge from 1.3.3 to 1.4.0 in /packages/pyright (\u003ca href=\"https://github.com/Microsoft/pyright/tree/HEAD/packages/pyright/issues/11422\"\u003e#11422\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/pyright/commit/8f9807eefb292b4b66cd787b22ef5c4916358842\"\u003e\u003ccode\u003e8f9807e\u003c/code\u003e\u003c/a\u003e Bump fast-uri from 3.1.0 to 3.1.2 in /packages/pyright (\u003ca href=\"https://github.com/Microsoft/pyright/tree/HEAD/packages/pyright/issues/11428\"\u003e#11428\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/pyright/commit/53969cf1e39498f097437b4ee92cc2fad00cf641\"\u003e\u003ccode\u003e53969cf\u003c/code\u003e\u003c/a\u003e fix: restore axios 1.16.0 and correct minimatch/npm-check-updates regressions...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/pyright/commit/47aace824993d97facd3281a6746732cc25f83f8\"\u003e\u003ccode\u003e47aace8\u003c/code\u003e\u003c/a\u003e chore: consolidate open Dependabot PRs into single dependency update (\u003ca href=\"https://github.com/Microsoft/pyright/tree/HEAD/packages/pyright/issues/11417\"\u003e#11417\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/pyright/commit/34c556b79362cc527431de819ce77925b49c5e1d\"\u003e\u003ccode\u003e34c556b\u003c/code\u003e\u003c/a\u003e Push pylance changes to pyright (\u003ca href=\"https://github.com/Microsoft/pyright/tree/HEAD/packages/pyright/issues/11396\"\u003e#11396\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/Microsoft/pyright/commits/1.1.410/packages/pyright\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eMaintainer changes\u003c/summary\u003e\n\u003cp\u003eThis version was pushed to npm by \u003ca href=\"https://www.npmjs.com/~rchiodo\"\u003erchiodo\u003c/a\u003e, a new releaser for pyright since your current version.\u003c/p\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `typescript-language-server` from 5.2.0 to 5.3.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/typescript-language-server/typescript-language-server/releases\"\u003etypescript-language-server's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev5.3.0\u003c/h2\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/typescript-language-server/typescript-language-server/compare/v5.2.0...v5.3.0\"\u003e5.3.0\u003c/a\u003e (2026-05-21)\u003c/h2\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003ehover info verbosity (\u003ca href=\"https://redirect.github.com/typescript-language-server/typescript-language-server/issues/1092\"\u003e#1092\u003c/a\u003e) (\u003ca href=\"https://github.com/typescript-language-server/typescript-language-server/commit/b73207c610912dd278cf64733a0c5c7ce26b3a58\"\u003eb73207c\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003erefresh inlay hints and code lens on relevant configuration change (\u003ca href=\"https://redirect.github.com/typescript-language-server/typescript-language-server/issues/1095\"\u003e#1095\u003c/a\u003e) (\u003ca href=\"https://github.com/typescript-language-server/typescript-language-server/commit/fd53d0e5948f84c12fa8a90b512cad9b2a604fce\"\u003efd53d0e\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/typescript-language-server/typescript-language-server/blob/master/CHANGELOG.md\"\u003etypescript-language-server's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/typescript-language-server/typescript-language-server/compare/v5.2.0...v5.3.0\"\u003e5.3.0\u003c/a\u003e (2026-05-21)\u003c/h2\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003ehover info verbosity (\u003ca href=\"https://redirect.github.com/typescript-language-server/typescript-language-server/issues/1092\"\u003e#1092\u003c/a\u003e) (\u003ca href=\"https://github.com/typescript-language-server/typescript-language-server/commit/b73207c610912dd278cf64733a0c5c7ce26b3a58\"\u003eb73207c\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003erefresh inlay hints and code lens on relevant configuration change (\u003ca href=\"https://redirect.github.com/typescript-language-server/typescript-language-server/issues/1095\"\u003e#1095\u003c/a\u003e) (\u003ca href=\"https://github.com/typescript-language-server/typescript-language-server/commit/fd53d0e5948f84c12fa8a90b512cad9b2a604fce\"\u003efd53d0e\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-language-server/typescript-language-server/commit/589044479e4bc2bffb796b593242136f5323b582\"\u003e\u003ccode\u003e5890444\u003c/code\u003e\u003c/a\u003e chore(master): release 5.3.0 (\u003ca href=\"https://redirect.github.com/typescript-language-server/typescript-language-server/issues/1094\"\u003e#1094\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-language-server/typescript-language-server/commit/fd53d0e5948f84c12fa8a90b512cad9b2a604fce\"\u003e\u003ccode\u003efd53d0e\u003c/code\u003e\u003c/a\u003e feat: refresh inlay hints and code lens on relevant configuration change (\u003ca href=\"https://redirect.github.com/typescript-language-server/typescript-language-server/issues/1095\"\u003e#1095\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-language-server/typescript-language-server/commit/b73207c610912dd278cf64733a0c5c7ce26b3a58\"\u003e\u003ccode\u003eb73207c\u003c/code\u003e\u003c/a\u003e feat: hover info verbosity (\u003ca href=\"https://redirect.github.com/typescript-language-server/typescript-language-server/issues/1092\"\u003e#1092\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-language-server/typescript-language-server/commit/b4aaa2382a09664c8580abe54eecc465089f5927\"\u003e\u003ccode\u003eb4aaa23\u003c/code\u003e\u003c/a\u003e chore(deps): update dependency \u003ccode\u003e@​types/react\u003c/code\u003e to ^19.2.15 (\u003ca href=\"https://redirect.github.com/typescript-language-server/typescript-language-server/issues/1091\"\u003e#1091\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-language-server/typescript-language-server/commit/6ab24c8c2f6e43cfffac940ed4606ae2acbe635d\"\u003e\u003ccode\u003e6ab24c8\u003c/code\u003e\u003c/a\u003e chore(deps): update all non-major dependencies (\u003ca href=\"https://redirect.github.com/typescript-language-server/typescript-language-server/issues/1089\"\u003e#1089\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/typescript-language-server/typescript-language-server/compare/v5.2.0...v5.3.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `ws` from 8.20.1 to 8.21.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/websockets/ws/releases\"\u003ews's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e8.21.0\u003c/h2\u003e\n\u003ch1\u003eFeatures\u003c/h1\u003e\n\u003cul\u003e\n\u003cli\u003eIntroduced the \u003ccode\u003emaxBufferedChunks\u003c/code\u003e and \u003ccode\u003emaxFragments\u003c/code\u003e options (2b2abd45).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch1\u003eBug fixes\u003c/h1\u003e\n\u003cul\u003e\n\u003cli\u003eFixed a remote memory exhaustion DoS vulnerability (2b2abd45).\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eA high volume of tiny fragments and data chunks could be sent by a peer, using\nmodest network traffic, to crash a \u003ccode\u003ews\u003c/code\u003e server or client due to OOM.\u003c/p\u003e\n\u003cpre lang=\"js\"\u003e\u003ccode\u003eimport { WebSocket, WebSocketServer } from 'ws';\r\n\u003cp\u003econst wss = new WebSocketServer({ port: 0 }, function () {\nconst data = Buffer.alloc(1);\nconst options = { fin: false };\nconst { port } = wss.address();\nconst ws = new WebSocket(\u003ccode\u003ews://localhost:${port}\u003c/code\u003e);\u003c/p\u003e\n\u003cp\u003ews.on('open', function () {\n(function send() {\nws.send(data, options, function (err) {\nif (err) return;\nsend();\n});\n})();\n});\u003c/p\u003e\n\u003cp\u003ews.on('error', console.error);\nws.on('close', function (code, reason) {\nconsole.log(\u003ccode\u003eclient close - code: ${code} reason: ${reason.toString()}\u003c/code\u003e);\n});\n});\u003c/p\u003e\n\u003cp\u003ewss.on('connection', function (ws) {\nws.on('error', console.error);\nws.on('close', function (code, reason) {\nconsole.log(\u003ccode\u003eserver close - code: ${code} reason: ${reason.toString()}\u003c/code\u003e);\n});\n});\n\u003c/code\u003e\u003c/pre\u003e\u003c/p\u003e\n\u003cp\u003eThe vulnerability was responsibly disclosed and fixed by \u003ca href=\"https://github.com/Nadav0077\"\u003eNadav Magier\u003c/a\u003e.\u003c/p\u003e\n\u003cp\u003eIn vulnerable versions, the issue can be mitigated by lowering the value of the\n\u003ccode\u003emaxPayload\u003c/code\u003e option if possible.\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/websockets/ws/commit/bca91adf15677e47dbe4f959653452727be28b94\"\u003e\u003ccode\u003ebca91ad\u003c/code\u003e\u003c/a\u003e [dist] 8.21.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/websockets/ws/commit/2b2abd458a1b647d0b6033bd62a619c36189839a\"\u003e\u003ccode\u003e2b2abd4\u003c/code\u003e\u003c/a\u003e [security] Limit retained message parts\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/websockets/ws/commit/78eabe2a6677b231bf9c82601bde86ff91639490\"\u003e\u003ccode\u003e78eabe2\u003c/code\u003e\u003c/a\u003e [security] Add latest vulnerability to SECURITY.md\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/websockets/ws/compare/8.20.1...8.21.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@vitest/coverage-v8` from 4.1.6 to 4.1.7\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/vitest-dev/vitest/releases\"\u003e@​vitest/coverage-v8's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev4.1.7\u003c/h2\u003e\n\u003ch3\u003e   🐞 Bug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003erunner\u003c/strong\u003e: Limit concurrency per task branch in addition to per leaf callbacks (backport)  -  by \u003ca href=\"https://github.com/hi-ogawa\"\u003e\u003ccode\u003e@​hi-ogawa\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/vitest-dev/vitest/issues/10384\"\u003evitest-dev/vitest#10384\u003c/a\u003e \u003ca href=\"https://github.com/vitest-dev/vitest/commit/4f0f2a1ee\"\u003e\u003c!-- raw HTML omitted --\u003e(4f0f2)\u003c!-- raw HTML omitted --\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch5\u003e    \u003ca href=\"https://github.com/vitest-dev/vitest/compare/v4.1.6...v4.1.7\"\u003eView changes on GitHub\u003c/a\u003e\u003c/h5\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vitest-dev/vitest/commit/a09d47236e19fd3151351080c667036ca6164dc4\"\u003e\u003ccode\u003ea09d472\u003c/code\u003e\u003c/a\u003e chore: release v4.1.7\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/vitest-dev/vitest/commits/v4.1.7/packages/coverage-v8\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `tsx` from 4.22.0 to 4.22.3\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/privatenumber/tsx/releases\"\u003etsx's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev4.22.3\u003c/h2\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/privatenumber/tsx/compare/v4.22.2...v4.22.3\"\u003e4.22.3\u003c/a\u003e (2026-05-19)\u003c/h2\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003edecode typed loader source (\u003ca href=\"https://github.com/privatenumber/tsx/commit/dce02fc3b8b64a58d24560714902b16f89332f1f\"\u003edce02fc\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003epreserve entrypoint with TypeScript preload hooks (\u003ca href=\"https://github.com/privatenumber/tsx/commit/68f72f3304d8c3ff7048bde8571af9c163fcefa2\"\u003e68f72f3\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003chr /\u003e\n\u003cp\u003eThis release is also available on:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://www.npmjs.com/package/tsx/v/4.22.3\"\u003e\u003ccode\u003enpm package (@​latest dist-tag)\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev4.22.2\u003c/h2\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/privatenumber/tsx/compare/v4.22.1...v4.22.2\"\u003e4.22.2\u003c/a\u003e (2026-05-18)\u003c/h2\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003epreserve CJS JSON require in ESM hooks (\u003ca href=\"https://github.com/privatenumber/tsx/commit/35b700bd8620696df03827068af29dcd0d091a60\"\u003e35b700b\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003epreserve named exports from CommonJS TypeScript (\u003ca href=\"https://github.com/privatenumber/tsx/commit/11de737dae1fb9dae28db3716df5b1a7e1a6a089\"\u003e11de737\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003esupport module.exports require(esm) interop (\u003ca href=\"https://github.com/privatenumber/tsx/commit/cf8f19918e4e0a0dc5ee5c52d8cc15e5e22d7c49\"\u003ecf8f199\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003chr /\u003e\n\u003cp\u003eThis release is also available on:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://www.npmjs.com/package/tsx/v/4.22.2\"\u003e\u003ccode\u003enpm package (@​latest dist-tag)\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev4.22.1\u003c/h2\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/privatenumber/tsx/compare/v4.22.0...v4.22.1\"\u003e4.22.1\u003c/a\u003e (2026-05-17)\u003c/h2\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eresolve tsconfig path aliases containing a colon (\u003ca href=\"https://redirect.github.com/privatenumber/tsx/issues/780\"\u003e#780\u003c/a\u003e) (\u003ca href=\"https://github.com/privatenumber/tsx/commit/6979f28810829dc79ec9baf406e162a18b65ab4b\"\u003e6979f28\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003chr /\u003e\n\u003cp\u003eThis release is also available on:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://www.npmjs.com/package/tsx/v/4.22.1\"\u003e\u003ccode\u003enpm package (@​latest dist-tag)\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/privatenumber/tsx/commit/dce02fc3b8b64a58d24560714902b16f89332f1f\"\u003e\u003ccode\u003edce02fc\u003c/code\u003e\u003c/a\u003e fix: decode typed loader source\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/privatenumber/tsx/commit/68f72f3304d8c3ff7048bde8571af9c163fcefa2\"\u003e\u003ccode\u003e68f72f3\u003c/code\u003e\u003c/a\u003e fix: preserve entrypoint with TypeScript preload hooks\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/privatenumber/tsx/commit/69455cfefbfe71100a3c58d3ce7cea42445d9113\"\u003e\u003ccode\u003e69455cf\u003c/code\u003e\u003c/a\u003e test: cover package exports for ambiguous ESM reexports\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/privatenumber/tsx/commit/35b700bd8620696df03827068af29dcd0d091a60\"\u003e\u003ccode\u003e35b700b\u003c/code\u003e\u003c/a\u003e fix: preserve CJS JSON require in ESM hooks\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/privatenumber/tsx/commit/ef807dba6832260fb4cafd78d81f5469a733966b\"\u003e\u003ccode\u003eef807db\u003c/code\u003e\u003c/a\u003e chore: update testing dependencies\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/privatenumber/tsx/commit/3917090d4f61863ea6ea16e4a9a3722a112cc3f7\"\u003e\u003ccode\u003e3917090\u003c/code\u003e\u003c/a\u003e test: document compatibility test taxonomy\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/privatenumber/tsx/commit/de8113ffa8edbcd4e05fa218324c3e8c2a4afdbe\"\u003e\u003ccode\u003ede8113f\u003c/code\u003e\u003c/a\u003e refactor: centralize Node capability facts\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/privatenumber/tsx/commit/c1f62db45ada60b24ceb3dfdf7f64173d9a15396\"\u003e\u003ccode\u003ec1f62db\u003c/code\u003e\u003c/a\u003e test: consolidate tsconfig path edge coverage\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/privatenumber/tsx/commit/4e08174ec10276ac71c9a69eb28426ad702d0c76\"\u003e\u003ccode\u003e4e08174\u003c/code\u003e\u003c/a\u003e test: consolidate loader hook coverage\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/privatenumber/tsx/commit/674bb30bc87ce00b36e9c820d47394defba9ae36\"\u003e\u003ccode\u003e674bb30\u003c/code\u003e\u003c/a\u003e test: consolidate tsImport commonjs mts coverage\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/privatenumber/tsx/compare/v4.22.0...v4.22.3\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `vitest` from 4.1.6 to 4.1.7\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/vitest-dev/vitest/releases\"\u003evitest's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev4.1.7\u003c/h2\u003e\n\u003ch3\u003e   🐞 Bug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003erunner\u003c/strong\u003e: Limit concurrency per task branch in addition to per leaf callbacks (backport)  -  by \u003ca href=\"https://github.com/hi-ogawa\"\u003e\u003ccode\u003e@​hi-ogawa\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/vitest-dev/vitest/issues/10384\"\u003evitest-dev/vitest#10384\u003c/a\u003e \u003ca href=\"https://github.com/vitest-dev/vitest/commit/4f0f2a1ee\"\u003e\u003c!-- raw HTML omitted --\u003e(4f0f2)\u003c!-- raw HTML omitted --\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch5\u003e    \u003ca href=\"https://github.com/vitest-dev/vitest/compare/v4.1.6...v4.1.7\"\u003eView changes on GitHub\u003c/a\u003e\u003c/h5\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vitest-dev/vitest/commit/a09d47236e19fd3151351080c667036ca6164dc4\"\u003e\u003ccode\u003ea09d472\u003c/code\u003e\u003c/a\u003e chore: release v4.1.7\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/vitest-dev/vitest/commits/v4.1.7/packages/vitest\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@assistant-ui/react` from 0.14.5 to 0.14.11\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/assistant-ui/assistant-ui/releases\"\u003e@​assistant-ui/react's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e\u003ccode\u003e@​assistant-ui/react\u003c/code\u003e\u003ca href=\"https://github.com/0\"\u003e\u003ccode\u003e@​0\u003c/code\u003e\u003c/a\u003e.14.11\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/assistant-ui/assistant-ui/pull/4125\"\u003e#4125\u003c/a\u003e \u003ca href=\"https://github.com/assistant-ui/assistant-ui/commit/e639a11838642aa111644077ba51acf6277051f2\"\u003e\u003ccode\u003ee639a11\u003c/code\u003e\u003c/a\u003e - chore: drop tracker-behaviour explainer comments left behind in satellite runtimes (\u003ca href=\"https://github.com/Yonom\"\u003e\u003ccode\u003e@​Yonom\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e\u003ccode\u003e@​assistant-ui/react\u003c/code\u003e\u003ca href=\"https://github.com/0\"\u003e\u003ccode\u003e@​0\u003c/code\u003e\u003c/a\u003e.14.9\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/assistant-ui/assistant-ui/pull/4120\"\u003e#4120\u003c/a\u003e \u003ca href=\"https://github.com/assistant-ui/assistant-ui/commit/372d4f0c538a766fd9a849fef74e413dde86d74a\"\u003e\u003ccode\u003e372d4f0\u003c/code\u003e\u003c/a\u003e - feat: simplify \u003ccode\u003eMessagePrimitive.GroupedParts\u003c/code\u003e API and add \u003ccode\u003egroupPartByType\u003c/code\u003e helper. (\u003ca href=\"https://github.com/Yonom\"\u003e\u003ccode\u003e@​Yonom\u003c/code\u003e\u003c/a\u003e)\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eNew \u003ccode\u003egroupPartByType({ ... })\u003c/code\u003e helper builds a \u003ccode\u003egroupBy\u003c/code\u003e from a \u003ccode\u003epart.type → group-key path\u003c/code\u003e lookup. The map keys are typed against \u003ccode\u003ePartState[\u0026quot;type\u0026quot;]\u003c/code\u003e (autocomplete + typo rejection), missing keys leave the part ungrouped, and the returned function carries an internal memo fingerprint so the tree survives unrelated re-renders even when reconstructed inline.\u003c/li\u003e\n\u003cli\u003eSpecial map key \u003ccode\u003e\u0026quot;mcp-app\u0026quot;\u003c/code\u003e matches tool-call parts that point at an assistant-ui MCP app resource (\u003ccode\u003eui://...\u003c/code\u003e). It takes precedence over the \u003ccode\u003e\u0026quot;tool-call\u0026quot;\u003c/code\u003e entry for those parts, so MCP apps can be routed separately (e.g. rendered outside a chain-of-thought wrapper).\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003egroupBy\u003c/code\u003e signature simplified from \u003ccode\u003e(part, index, parts) =\u0026gt; string | string[] | null | undefined\u003c/code\u003e to \u003ccode\u003e(part) =\u0026gt; readonly \\\u003c/code\u003egroup-${string}`[] | null\u003ccode\u003e. The 2nd/3rd args were unused in practice. Arrays are required (no bare-string shorthand); \u003c/code\u003enull\u003ccode\u003eis accepted as an alias for\u003c/code\u003e[]` to soften the migration.\u003c/li\u003e\n\u003cli\u003eInternal memoization now uses the helper's memo fingerprint when present, otherwise rebuilds the tree per render (O(n), cheap). The previous \u0026quot;pass a stable reference\u0026quot; advice is dropped — inline \u003ccode\u003egroupBy\u003c/code\u003e is fine.\u003c/li\u003e\n\u003cli\u003eDocs and examples updated to lead with \u003ccode\u003egroupPartByType\u003c/code\u003e. The \u003ccode\u003egetMcpAppFromToolPart\u003c/code\u003e branch in \u003ccode\u003epackages/ui\u003c/code\u003e switches to \u003ccode\u003e\u0026quot;mcp-app\u0026quot;: []\u003c/code\u003e via the helper.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/assistant-ui/assistant-ui/pull/4107\"\u003e#4107\u003c/a\u003e \u003ca href=\"https://github.com/assistant-ui/assistant-ui/commit/32ae846a91b61eccd01330693868a48f2f3bb0c4\"\u003e\u003ccode\u003e32ae846\u003c/code\u003e\u003c/a\u003e - feat: surface AI SDK v6 tool approvals as a first-class \u003ccode\u003erespondToApproval\u003c/code\u003e prop on tool components. tool-call parts in the \u003ccode\u003eapproval-requested\u003c/code\u003e state now carry \u003ccode\u003epart.approval = { id, isAutomatic? }\u003c/code\u003e; tool components call \u003ccode\u003erespondToApproval({ approved, reason? })\u003c/code\u003e to ack the gate without threading \u003ccode\u003echatHelpers\u003c/code\u003e through application context. also fixes a transient \u003ccode\u003erequires-action\u003c/code\u003e flicker for the \u003ccode\u003eapproval-responded\u003c/code\u003e state and tightens the external-message converter so interrupt vs pending tool calls are distinguished by an actual \u003ccode\u003einterrupt\u003c/code\u003e/\u003ccode\u003eapproval\u003c/code\u003e field rather than by \u003ccode\u003eresult === undefined\u003c/code\u003e. (\u003ca href=\"https://github.com/okisdev\"\u003e\u003ccode\u003e@​okisdev\u003c/code\u003e\u003c/a\u003e)\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eUpdated dependencies [\u003ca href=\"https://github.com/assistant-ui/assistant-ui/commit/372d4f0c538a766fd9a849fef74e413dde86d74a\"\u003e\u003ccode\u003e372d4f0\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/assistant-ui/assistant-ui/commit/d4f1db428b1a1fe5c122150e1e366a377e9adb5f\"\u003e\u003ccode\u003ed4f1db4\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/assistant-ui/assistant-ui/commit/32ae846a91b61eccd01330693868a48f2f3bb0c4\"\u003e\u003ccode\u003e32ae846\u003c/code\u003e\u003c/a\u003e]:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e@​assistant-ui/core\u003c/code\u003e\u003ca href=\"https://github.com/0\"\u003e\u003ccode\u003e@​0\u003c/code\u003e\u003c/a\u003e.2.6\u003c/li\u003e\n\u003cli\u003eassistant-stream@0.3.17\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e\u003ccode\u003e@​assistant-ui/react\u003c/code\u003e\u003ca href=\"https://github.com/0\"\u003e\u003ccode\u003e@​0\u003c/code\u003e\u003c/a\u003e.14.8\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/assistant-ui/assistant-ui/pull/4093\"\u003e#4093\u003c/a\u003e \u003ca href=\"https://github.com/assistant-ui/assistant-ui/commit/b02b7012cff158b4e73b82503b9ea90638b7398d\"\u003e\u003ccode\u003eb02b701\u003c/code\u003e\u003c/a\u003e - feat(react): \u003ccode\u003eunstable_insertNewlineOnTouchEnter\u003c/code\u003e on \u003ccode\u003eComposerPrimitive.Input\u003c/code\u003e (\u003ca href=\"https://github.com/okisdev\"\u003e\u003ccode\u003e@​okisdev\u003c/code\u003e\u003c/a\u003e)\u003c/p\u003e\n\u003cp\u003eWhen set, plain Enter on a touch-primary device — detected via the \u003ccode\u003e(pointer: coarse) and (not (any-pointer: fine))\u003c/code\u003e media query — inserts a newline instead of submitting. Messages then dispatch only via the explicit Send button, matching the chat-input convention used by WhatsApp, Slack, Discord, iMessage, ChatGPT, and Claude.ai, and avoiding the consumer-side caret-aware re-insertion dance the previous workaround required.\u003c/p\u003e\n\u003cp\u003eOrthogonal to \u003ccode\u003esubmitMode\u003c/code\u003e: only takes effect when \u003ccode\u003esubmitMode\u003c/code\u003e resolves to \u003ccode\u003e\u0026quot;enter\u0026quot;\u003c/code\u003e (the default). A tablet paired with a hardware keyboard can still submit via \u003ccode\u003esubmitMode=\u0026quot;ctrlEnter\u0026quot;\u003c/code\u003e (Cmd/Ctrl+Enter), and \u003ccode\u003esubmitMode=\u0026quot;none\u0026quot;\u003c/code\u003e is unchanged.\u003c/p\u003e\n\u003cpre lang=\"tsx\"\u003e\u003ccode\u003e\u0026lt;ComposerPrimitive.Input\n  placeholder=\u0026quot;Ask anything...\u0026quot;\n  unstable_insertNewlineOnTouchEnter\n/\u0026gt;\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eStays \u003ccode\u003eunstable_\u003c/code\u003e until we have enough field signal to flip the behavior on by default.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/assistant-ui/assistant-ui/pull/3967\"\u003e#3967\u003c/a\u003e \u003ca href=\"https://github.com/assistant-ui/assistant-ui/commit/0a0c306286598ea885b046a1dfb85016f720051c\"\u003e\u003ccode\u003e0a0c306\u003c/code\u003e\u003c/a\u003e - feat(core, react): add \u003ccode\u003eMessagePrimitive.GenerativeUI\u003c/code\u003e primitive (\u003ca href=\"https://github.com/samdickson22\"\u003e\u003ccode\u003e@​samdickson22\u003c/code\u003e\u003c/a\u003e)\u003c/p\u003e\n\u003cp\u003eA new first-class primitive for rendering agent-described React UI from a JSON\nspec, with a consumer-provided component allowlist as the security boundary.\u003c/p\u003e\n\u003cp\u003eThe agent emits a new \u003ccode\u003egenerative-ui\u003c/code\u003e message part containing a tree of\ncomponents by name; \u003ccode\u003eMessagePrimitive.GenerativeUI\u003c/code\u003e walks the spec and resolves\neach name against the registry you pass in. Unknown names throw a typed\n\u003ccode\u003eGenerativeUIRenderError\u003c/code\u003e (or invoke the optional \u003ccode\u003eFallback\u003c/code\u003e). Composes with\n\u003ccode\u003eMessagePrimitive.Parts\u003c/code\u003e via the new \u003ccode\u003ecomponents.generativeUI\u003c/code\u003e option, and\nsupports streaming partial specs.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/assistant-ui/assistant-ui/blob/main/packages/react/CHANGELOG.md\"\u003e@​assistant-ui/react's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e0.14.11\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/assistant-ui/assistant-ui/pull/4125\"\u003e#4125\u003c/a\u003e \u003ca href=\"https://github.com/assistant-ui/assistant-ui/commit/e639a11838642aa111644077ba51acf6277051f2\"\u003e\u003ccode\u003ee639a11\u003c/code\u003e\u003c/a\u003e - chore: drop tracker-behaviour explainer comments left behind in satellite runtimes (\u003ca href=\"https://github.com/Yonom\"\u003e\u003ccode\u003e@​Yonom\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e0.14.10\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/assistant-ui/assistant-ui/pull/4118\"\u003e#4118\u003c/a\u003e \u003ca href=\"https://github.com/assistant-ui/assistant-ui/commit/a6e0653bad29fb93627646a77c3383000c57ee33\"\u003e\u003ccode\u003ea6e0653\u003c/code\u003e\u003c/a\u003e - feat(core): build a client-side tool-invocations pipeline directly into \u003ccode\u003euseExternalStoreRuntime\u003c/code\u003e. Tool-call parts in messages now fire \u003ccode\u003estreamCall\u003c/code\u003e / \u003ccode\u003eexecute\u003c/code\u003e automatically for any external-store runtime that opts in. Opt in per-adapter via \u003ccode\u003eunstable_enableToolInvocations: true\u003c/code\u003e (off by default — most external-store runtimes either run tools server-side or already wire their own client-side dispatch path; double-firing is the risk). The \u003ccode\u003e_store.isLoading\u003c/code\u003e flag signals when initial history is loaded: snapshots observed while \u003ccode\u003eisLoading === true\u003c/code\u003e are treated as historical (no fire), matching the contract that callers like \u003ccode\u003eimportExternalState\u003c/code\u003e already rely on. Six in-tree runtimes (\u003ccode\u003euseAssistantTransportRuntime\u003c/code\u003e, \u003ccode\u003euseAISDKRuntime\u003c/code\u003e, \u003ccode\u003euseLangGraphRuntime\u003c/code\u003e, \u003ccode\u003euseStreamRuntime\u003c/code\u003e, \u003ccode\u003euseAgUiRuntime\u003c/code\u003e, \u003ccode\u003euseAdkRuntime\u003c/code\u003e) are migrated to the embedded tracker; the standalone \u003ccode\u003euseToolInvocations\u003c/code\u003e React hook is removed. Adds \u003ccode\u003eExternalStoreAdapter.setToolStatuses\u003c/code\u003e so adapters can mirror the tracker's per-tool-call status into local React state for converter metadata. Auto-aborts in-flight tool calls on new turns (\u003ccode\u003eappend()\u003c/code\u003e with \u003ccode\u003estartRun\u003c/code\u003e, \u003ccode\u003estartRun()\u003c/code\u003e) so a tool that finishes after the user moves on can no longer feed a stale result into the next turn. (\u003ca href=\"https://github.com/Yonom\"\u003e\u003ccode\u003e@​Yonom\u003c/code\u003e\u003c/a\u003e)\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eUpdated dependencies [\u003ca href=\"https://github.com/assistant-ui/assistant-ui/commit/73950929dbebadb275e3bdee23331f65f2635a33\"\u003e\u003ccode\u003e7395092\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/assistant-ui/assistant-ui/commit/a6e0653bad29fb93627646a77c3383000c57ee33\"\u003e\u003ccode\u003ea6e0653\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/assistant-ui/assistant-ui/commit/cabfc715e99f23a55dc1276a6028792d7ecad822\"\u003e\u003ccode\u003ecabfc71\u003c/code\u003e\u003c/a\u003e]:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e@​assistant-ui/core\u003c/code\u003e\u003ca href=\"https://github.com/0\"\u003e\u003ccode\u003e@​0\u003c/code\u003e\u003c/a\u003e.2.7\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@​assistant-ui/tap\u003c/code\u003e\u003ca href=\"https://github.com/0\"\u003e\u003ccode\u003e@​0\u003c/code\u003e\u003c/a\u003e.5.13\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e0.14.9\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/assistant-ui/assistant-ui/pull/4120\"\u003e#4120\u003c/a\u003e \u003ca href=\"https://github.com/assistant-ui/assistant-ui/commit/372d4f0c538a766fd9a849fef74e413dde86d74a\"\u003e\u003ccode\u003e372d4f0\u003c/code\u003e\u003c/a\u003e - feat: simplify \u003ccode\u003eMessagePrimitive.GroupedParts\u003c/code\u003e API and add \u003ccode\u003egroupPartByType\u003c/code\u003e helper. (\u003ca href=\"https://github.com/Yonom\"\u003e\u003ccode\u003e@​Yonom\u003c/code\u003e\u003c/a\u003e)\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eNew \u003ccode\u003egroupPartByType({ ... })\u003c/code\u003e helper builds a \u003ccode\u003egroupBy\u003c/code\u003e from a \u003ccode\u003epart.type → group-key path\u003c/code\u003e lookup. The map keys are typed against \u003ccode\u003ePartState[\u0026quot;type\u0026quot;]\u003c/code\u003e (autocomplete + typo rejection), missing keys leave the part ungrouped, and the returned function carries an internal memo fingerprint so the tree survives unrelated re-renders even when reconstructed inline.\u003c/li\u003e\n\u003cli\u003eSpecial map key \u003ccode\u003e\u0026quot;mcp-app\u0026quot;\u003c/code\u003e matches tool-call parts that point at an assistant-ui MCP app resource (\u003ccode\u003eui://...\u003c/code\u003e). It takes precedence over the \u003ccode\u003e\u0026quot;tool-call\u0026quot;\u003c/code\u003e entry for those parts, so MCP apps can be routed separately (e.g. rendered outside a chain-of-thought wrapper).\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003egroupBy\u003c/code\u003e signature simplified from \u003ccode\u003e(part, index, parts) =\u0026gt; string | string[] | null | undefined\u003c/code\u003e to \u003ccode\u003e(part) =\u0026gt; readonly \\\u003c/code\u003egroup-${string}`[] | null\u003ccode\u003e. The 2nd/3rd args were unused in practice. Arrays are required (no bare-string shorthand); \u003c/code\u003enull\u003ccode\u003eis accepted as an alias for\u003c/code\u003e[]` to soften the migration.\u003c/li\u003e\n\u003cli\u003eInternal memoization now uses the helper's memo fingerprint when present, otherwise rebuilds the tree per render (O(n), cheap). The previous \u0026quot;pass a stable reference\u0026quot; advice is dropped — inline \u003ccode\u003egroupBy\u003c/code\u003e is fine.\u003c/li\u003e\n\u003cli\u003eDocs and examples updated to lead with \u003ccode\u003egroupPartByType\u003c/code\u003e. The \u003ccode\u003egetMcpAppFromToolPart\u003c/code\u003e branch in \u003ccode\u003epackages/ui\u003c/code\u003e switches to \u003ccode\u003e\u0026quot;mcp-app\u0026quot;: []\u003c/code\u003e via the helper.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/assistant-ui/assistant-ui/pull/4107\"\u003e#4107\u003c/a\u003e \u003ca href=\"https://github.com/assistant-ui/assistant-ui/commit/32ae846a91b61eccd01330693868a48f2f3bb0c4\"\u003e\u003ccode\u003e32ae846\u003c/code\u003e\u003c/a\u003e - feat: surface AI SDK v6 tool approvals as a first-class \u003ccode\u003erespondToApproval\u003c/code\u003e prop on tool components. tool-call parts in the \u003ccode\u003eapproval-requested\u003c/code\u003e state now carry \u003ccode\u003epart.approval = { id, isAutomatic? }\u003c/code\u003e; tool components call \u003ccode\u003erespondToApproval({ approved, reason? })\u003c/code\u003e to ack the gate without threading \u003ccode\u003echatHelpers\u003c/code\u003e through application context. also fixes a transient \u003ccode\u003erequires-action\u003c/code\u003e flicker for the \u003ccode\u003eapproval-responded\u003c/code\u003e state and tightens the external-message converter so interrupt vs pending tool calls are distinguished by an actual \u003ccode\u003einterrupt\u003c/code\u003e/\u003ccode\u003eapproval\u003c/code\u003e field rather than by \u003ccode\u003eresult === undefined\u003c/code\u003e. (\u003ca href=\"https://github.com/okisdev\"\u003e\u003ccode\u003e@​okisdev\u003c/code\u003e\u003c/a\u003e)\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eUpdated dependencies [\u003ca href=\"https://github.com/assistant-ui/assistant-ui/commit/372d4f0c538a766fd9a849fef74e413dde86d74a\"\u003e\u003ccode\u003e372d4f0\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/assistant-ui/assistant-ui/commit/d4f1db428b1a1fe5c122150e1e366a377e9adb5f\"\u003e\u003ccode\u003ed4f1db4\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/assistant-ui/assistant-ui/commit/32ae846a91b61eccd01330693868a48f2f3bb0c4\"\u003e\u003ccode\u003e32ae846\u003c/code\u003e\u003c/a\u003e]:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e@​assistant-ui/core\u003c/code\u003e\u003ca href=\"https://github.com/0\"\u003e\u003ccode\u003e@​0\u003c/code\u003e\u003c/a\u003e.2.6\u003c/li\u003e\n\u003cli\u003eassistant-stream@0.3.17\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e0.14.8\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/assistant-ui/assistant-ui/pull/4093\"\u003e#4093\u003c/a\u003e \u003ca href=\"https://github.com/assistant-ui/assistant-ui/commit/b02b7012cff158b4e73b82503b9ea90638b7398d\"\u003e\u003ccode\u003eb02b701\u003c/code\u003e\u003c/a\u003e - feat(react): \u003ccode\u003eunstable_insertNewlineOnTouchEnter\u003c/code\u003e on \u003ccode\u003eComposerPrimitive.Input\u003c/code\u003e (\u003ca href=\"https://github.com/okisdev\"\u003e\u003ccode\u003e@​okisdev\u003c/code\u003e\u003c/a\u003e)\u003c/p\u003e\n\u003cp\u003eWhen set, plain Enter on a touch-primary device — detected via the \u003ccode\u003e(pointer: coarse) and (not (any-pointer: fine))\u003c/code\u003e media query — inserts a newline instead of submitting. Messages then dispatch only via the explicit Send button, matching the chat-input convention used by WhatsApp, Slack, Discord, iMessage, ChatGPT, and Claude.ai, and avoiding the consumer-side caret-aware re-insertion dance the previous workaround required.\u003c/p\u003e\n\u003cp\u003eOrthogonal to \u003ccode\u003esubmitMode\u003c/code\u003e: only takes effect when \u003ccode\u003esubmitMode\u003c/code\u003e resolves to \u003ccode\u003e\u0026quot;enter\u0026quot;\u003c/code\u003e (the default). A tablet paired with a hardware keyboard can still submit via \u003ccode\u003esubmitMode=\u0026quot;ctrlEnter\u0026quot;\u003c/code\u003e (Cmd/Ctrl+Enter), and \u003ccode\u003esubmitMode=\u0026quot;none\u0026quot;\u003c/code\u003e is unchanged.\u003c/p\u003e\n\u003cpre lang=\"tsx\"\u003e\u003ccode\u003e\u0026lt;ComposerPrimitive.Input\n  placeholder=\u0026quot;Ask anything...\u0026quot;\n  unstable_insertNewlineOnTouchEnter\n/\u0026gt;\n\u003c/code\u003e\u003c/pre\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/assistant-ui/assistant-ui/commits/@assistant-ui/react@0.14.11/packages/react\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@assistant-ui/react-markdown` from 0.14.0 to 0.14.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/assistant-ui/assistant-ui/releases\"\u003e@​assistant-ui/react-markdown's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e\u003ccode\u003e@​assistant-ui/react-markdown\u003c/code\u003e\u003ca href=\"https://github.com/0\"\u003e\u003ccode\u003e@​0\u003c/code\u003e\u003c/a\u003e.14.1\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/assistant-ui/assistant-ui/pull/4085\"\u003e#4085\u003c/a\u003e \u003ca href=\"https://github.com/assistant-ui/assistant-ui/commit/01244a56026ee92bd4e49cb985136f9eb6d45154\"\u003e\u003ccode\u003e01244a5\u003c/code\u003e\u003c/a\u003e - chore: update dependencies (\u003ca href=\"https://github.com/Yonom\"\u003e\u003ccode\u003e@​Yonom\u003c/code\u003e\u003c/a\u003e)\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eUpdated dependencies [\u003ca href=\"https://github.com/assistant-ui/assistant-ui/commit/b02b7012cff158b4e73b82503b9ea90638b7398d\"\u003e\u003ccode\u003eb02b701\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/assistant-ui/assistant-ui/commit/0a0c306286598ea885b046a1dfb85016f720051c\"\u003e\u003ccode\u003e0a0c306\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/assistant-ui/assistant-ui/commit/01244a56026ee92bd4e49cb985136f9eb6d45154\"\u003e\u003ccode\u003e01244a5\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/assistant-ui/assistant-ui/commit/f2ec01ce0f01317a8444b779d88f9b6a26d691c5\"\u003e\u003ccode\u003ef2ec01c\u003c/code\u003e\u003c/a\u003e]:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e@​assistant-ui/react\u003c/code\u003e\u003ca href=\"https://github.com/0\"\u003e\u003ccode\u003e@​0\u003c/code\u003e\u003c/a\u003e.14.8\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/assistant-ui/assistant-ui/blob/main/packages/react-markdown/CHANGELOG.md\"\u003e@​assistant-ui/react-markdown's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e0.14.1\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/assistant-ui/assistant-ui/pull/4085\"\u003e#4085\u003c/a\u003e \u003ca href=\"https://github.com/assistant-ui/assistant-ui/commit/01244a56026ee92bd4e49cb985136f9eb6d45154\"\u003e\u003ccode\u003e01244a5\u003c/code\u003e\u003c/a\u003e - chore: update dependencies (\u003ca href=\"https://github.com/Yonom\"\u003e\u003ccode\u003e@​Yonom\u003c/code\u003e\u003c/a\u003e)\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eUpdated dependencies [\u003ca href=\"https://github.com/assistant-ui/assistant-ui/commit/b02b7012cff158b4e73b82503b9ea90638b7398d\"\u003e\u003ccode\u003eb02b701\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/assistant-ui/assistant-ui/commit/0a0c306286598ea885b046a1dfb85016f720051c\"\u003e\u003ccode\u003e0a0c306\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/assistant-ui/assistant-ui/commit/01244a56026ee92bd4e49cb985136f9eb6d45154\"\u003e\u003ccode\u003e01244a5\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/assistant-ui/assistant-ui/commit/f2ec01ce0f01317a8444b779d88f9b6a26d691c5\"\u003e\u003ccode\u003ef2ec01c\u003c/code\u003e\u003c/a\u003e]:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e@​assistant-ui/react\u003c/code\u003e\u003ca href=\"https://github.com/0\"\u003e\u003ccode\u003e@​0\u003c/code\u003e\u003c/a\u003e.14.8\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/assistant-ui/assistant-ui/commit/190d8d67262961cb6abaf83b85719b7980278913\"\u003e\u003ccode\u003e190d8d6\u003c/code\u003e\u003c/a\u003e chore: update versions (\u003ca href=\"https://github.com/assistant-ui/assistant-ui/tree/HEAD/packages/react-markdown/issues/4080\"\u003e#4080\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/assistant-ui/assistant-ui/commit/01244a56026ee92bd4e49cb985136f9eb6d45154\"\u003e\u003ccode\u003e01244a5\u003c/code\u003e\u003c/a\u003e chore: update dependencies and migrate to pnpm 11 (\u003ca href=\"https://github.com/assistant-ui/assistant-ui/tree/HEAD/packages/react-markdown/issues/4085\"\u003e#4085\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/assistant-ui/assistant-ui/commit/a5c3b5433d002c6bd9db46d9416549a7c3728706\"\u003e\u003ccode\u003ea5c3b54\u003c/code\u003e\u003c/a\u003e chore: update versions (\u003ca href=\"https://github.com/assistant-ui/assistant-ui/tree/HEAD/packages/react-markdown/issues/4074\"\u003e#4074\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/assistant-ui/assistant-ui/commit/e926633f806954e07fc289c9fb12e5032ed8ff9d\"\u003e\u003ccode\u003ee926633\u003c/code\u003e\u003c/a\u003e chore: update versions (\u003ca href=\"https://github.com/assistant-ui/assistant-ui/tree/HEAD/packages/react-markdown/issues/4034\"\u003e#4034\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/assistant-ui/assistant-ui/commit/b77beaf2d047e30859ab18cec5a33c5be1018b86\"\u003e\u003ccode\u003eb77beaf\u003c/code\u003e\u003c/a\u003e fix(react|safe-content-frame): handle MCP-UI 2026-01-26 method names + guard ...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/assistant-ui/assistant-ui/commit/0b0e68759c0c8a4b322525e6d82c92c65f4cf687\"\u003e\u003ccode\u003e0b0e687\u003c/code\u003e\u003c/a\u003e chore: update versions (\u003ca href=\"https://github.com/assistant-ui/assistant-ui/tree/HEAD/packages/react-markdown/issues/4032\"\u003e#4032\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/assistant-ui/assistant-ui/commit/3ad90479d0fb3261a927f054f4efc6ee87862888\"\u003e\u003ccode\u003e3ad9047\u003c/code\u003e\u003c/a\u003e chore: update versions (\u003ca href=\"https://github.com/assistant-ui/assistant-ui/tree/HEAD/packages/react-markdown/issues/4021\"\u003e#4021\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/assistant-ui/assistant-ui/commit/d7d452199fa258a6602cae6d39820905e808a1f7\"\u003e\u003ccode\u003ed7d4521\u003c/code\u003e\u003c/a\u003e chore: update versions (\u003ca href=\"https://github.com/assistant-ui/assistant-ui/tree/HEAD/packages/react-markdown/issues/3973\"\u003e#3973\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/assistant-ui/assistant-ui/commit/697f428169af988bb03bd18372db457ea1c01c76\"\u003e\u003ccode\u003e697f428\u003c/code\u003e\u003c/a\u003e docs: standardize package READMEs to a tier convention (\u003ca href=\"https://github.com/assistant-ui/assistant-ui/tree/HEAD/packages/react-markdown/issues/4007\"\u003e#4007\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/assistant-ui/assistant-ui/commits/@assistant-ui/react-markdown@0.14.1/packages/react-markdown\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `lucide-react` from 1.16.0 to 1.17.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/lucide-icons/lucide/releases\"\u003elucide-react's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eVersion 1.17.0\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003echore(lucide-vue-next|lucide-svelte|lucide-angular): Remove deprecated packages by \u003ca href=\"https://github.com/ericfennis\"\u003e\u003ccode\u003e@​ericfennis\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/lucide-icons/lucide/pull/4376\"\u003elucide-icons/lucide#4376\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(repo): Update issue templates and documentation for package ren… by \u003ca href=\"https://github.com/ericfennis\"\u003e\u003ccode\u003e@​ericfennis\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/lucide-icons/lucide/pull/4379\"\u003elucide-icons/lucide#4379\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efeat(site): Adds survey overlay to website by \u003ca href=\"https://github.com/ericfennis\"\u003e\u003ccode\u003e@​ericfennis\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/lucide-icons/lucide/pull/4380\"\u003elucide-icons/lucide#4380\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efeat(site): Certificate dev links by \u003ca href=\"https://github.com/ericfennis\"\u003e\u003ccode\u003e@​ericfennis\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/lucide-icons/lucide/pull/4390\"\u003elucide-icons/lucide#4390\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix(icons): changed \u003ccode\u003emartini\u003c/code\u003e icon by \u003ca href=\"https://github.com/jamiemlaw\"\u003e\u003ccode\u003e@​jamiemlaw\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/lucide-icons/lucide/pull/4335\"\u003elucide-icons/lucide#4335\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(deps): bump brace-expansion from 1.1.11 to 5.0.6 by \u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/lucide-icons/lucide/pull/4386\"\u003elucide-icons/lucide#4386\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(deps): bump \u003ccode\u003e@​tootallnate/once\u003c/code\u003e from 2.0.0 to 2.0.1 by \u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/lucide-icons/lucide/pull/4404\"\u003elucide-icons/lucide#4404\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(deps): bump devalue from 5.8.0 to 5.8.1 by \u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/lucide-icons/lucide/pull/4391\"\u003elucide-icons/lucide#4391\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(deps): bump ws from 8.18.0 to 8.20.1 by \u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/lucide-icons/lucide/pull/4392\"\u003elucide-icons/lucide#4392\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix(gh-icon): limit icon size to a maximum of 256 pixels by \u003ca href=\"https://github.com/jguddas\"\u003e\u003ccode\u003e@​jguddas\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/lucide-icons/lucide/pull/4398\"\u003elucide-icons/lucide#4398\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(dependencies): Update dependencies by \u003ca href=\"https://github.com/ericfennis\"\u003e\u003ccode\u003e@​ericfennis\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/lucide-icons/lucide/pull/4377\"\u003elucide-icons/lucide#4377\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efeat(copilot): Adding copilot instructions by \u003ca href=\"https://github.com/ericfennis\"\u003e\u003ccode\u003e@​ericfennis\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/lucide-icons/lucide/pull/4407\"\u003elucide-icons/lucide#4407\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efeat(icons): add \u003ccode\u003eglobe-check\u003c/code\u003e by \u003ca href=\"https://github.com/Barakudum\"\u003e\u003ccode\u003e@​Barakudum\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/lucide-icons/lucide/pull/4342\"\u003elucide-icons/lucide#4342\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efeat(metadata): Require use-cases in meta json by \u003ca href=\"https://github.com/ericfennis\"\u003e\u003ccode\u003e@​ericfennis\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/lucide-icons/lucide/pull/4321\"\u003elucide-icons/lucide#4321\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efeat(icons): added \u003ccode\u003eparasol\u003c/code\u003e icon by \u003ca href=\"https://github.com/karsa-mistmere\"\u003e\u003ccode\u003e@​karsa-mistmere\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/lucide-icons/lucide/pull/4347\"\u003elucide-icons/lucide#4347\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/lucide-icons/lucide/compare/1.16.0...1.17.0\"\u003ehttps://github.com/lucide-icons/lucide/compare/1.16.0...1.17.0\u003c/a\u003e\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/lucide-icons/lucide/commits/1.17.0/packages/lucide-react\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `react-resizable-panels` from 4.11.1 to 4.11.2\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/bvaughn/react-resizable-panels/blob/main/CHANGELOG.md\"\u003ereact-resizable-panels's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e4.11.2\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/bvaughn/react-resizable-panels/pull/719\"\u003e719)\u003c/a\u003e: Bug fix: Calculate rem-based sizes relative to owner document (not body)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/bvaughn/react-resizable-panels/commits\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `shiki` from 4.0.2 to 4.1.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/shikijs/shiki/releases\"\u003eshiki's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev4.1.0\u003c/h2\u003e\n\u003ch3\u003e   🐞 Bug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003etwoslash\u003c/strong\u003e: Forward \u003ccode\u003etsModule\u003c/code\u003e to \u003ccode\u003ecreateTwoslasher\u003c/code\u003e  -  by \u003ca href=\"https://github.com/arthurfiorette\"\u003e\u003ccode\u003e@​arthurfiorette\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/shikijs/shiki/issues/1271\"\u003eshikijs/shiki#1271\u003c/a\u003e \u003ca href=\"https://github.com/shikijs/shiki/commit/be89afcf\"\u003e\u003c!-- raw HTML omitted --\u003e(be89a)\u003c!-- raw HTML omitted --\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch5\u003e    \u003ca href=\"https://github.com/shikijs/shiki/compare/v4.0.2...v4.1.0\"\u003eView changes on GitHub\u003c/a\u003e\u003c/h5\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/shikijs/shiki/commit/c809af96f1907877c5cebfeee98ac5d55193140b\"\u003e\u003ccode\u003ec809af9\u003c/code\u003e\u003c/a\u003e chore: release v4.1.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/shikijs/shiki/commit/95371cb1b3c00ced5b437a11f603939002f9ecae\"\u003e\u003ccode\u003e95371cb\u003c/code\u003e\u003c/a\u003e chore: lint\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/shikijs/shiki/commits/v4.1.0/packages/shiki\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `zustand` from 5.0.13 to 5.0.14\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pmndrs/zustand/releases\"\u003ezustand's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev5.0.14\u003c/h2\u003e\n\u003cp\u003eThis release fixes a type issue in devtools.\u003c/p\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003efix(devtools): improve type inference for Devtools initializer by \u003ca href=\"https://github.com/dbritto-dev\"\u003e\u003ccode\u003e@​dbritto-dev\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pmndrs/zustand/pull/3511\"\u003epmndrs/zustand#3511\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eNew Contributors\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/TheSeydiCharyyev\"\u003e\u003ccode\u003e@​TheSeydiCharyyev\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/pmndrs/zustand/pull/3487\"\u003epmndrs/zustand#3487\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/brofrong\"\u003e\u003ccode\u003e@​brofrong\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/pmndrs/zustand/pull/3496\"\u003epmndrs/zustand#3496\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/hyun907\"\u003e\u003ccode\u003e@​hyun907\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/pmndrs/zustand/pull/3506\"\u003epmndrs/zustand#3506\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/pmndrs/zustand/compare/v5.0.13...v5.0.14\"\u003ehttps://github.com/pmndrs/zustand/compare/v5.0.13...v5.0.14\u003c/a\u003e\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmndrs/zustand/commit/bfb2a9e7ce52608d54d8a077fb87ac9d12e73c58\"\u003e\u003ccode\u003ebfb2a9e\u003c/code\u003e\u003c/a\u003e 5.0.14\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmndrs/zustand/commit/62b2aff30c3860a1ad735d61801c6cc379771d24\"\u003e\u003ccode\u003e62b2aff\u003c/code\u003e\u003c/a\u003e chore(deps): update dev dependencies (\u003ca href=\"https://redirect.github.com/pmndrs/zustand/issues/3513\"\u003e#3513\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmndrs/zustand/commit/ad77bd3bb6f7bbd12fea8b458ed5c0673df0793a\"\u003e\u003ccode\u003ead77bd3\u003c/code\u003e\u003c/a\u003e fix(devtools): improve type inference for Devtools initializer (\u003ca href=\"https://redirect.github.com/pmndrs/zustand/issues/3511\"\u003e#3511\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmndrs/zustand/commit/8476d2ca288d787c1ffdd53615f44c85e98f87be\"\u003e\u003ccode\u003e8476d2c\u003c/code\u003e\u003c/a\u003e update pnpm etc (\u003ca href=\"https://redirect.github.com/pmndrs/zustand/issues/3512\"\u003e#3512\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmndrs/zustand/commit/d690ec29a923977d7a9091554445d1026dfe4611\"\u003e\u003ccode\u003ed690ec2\u003c/code\u003e\u003c/a\u003e docs(combine): add object constraints to T and U in signature (\u003ca href=\"https://redirect.github.com/pmndrs/zustand/issues/3506\"\u003e#3506\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmndrs/zustand/commit/fd8c60190191c66270ced434196a210f481e9d35\"\u003e\u003ccode\u003efd8c601\u003c/code\u003e\u003c/a\u003e docs(react): add Action constraint to redux middleware signature (\u003ca href=\"https://redirect.github.com/pmndrs/zustand/issues/3492\"\u003e#3492\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmndrs/zustand/commit/2ce8226ba4481bec4ab7e1573606d336f4003fba\"\u003e\u003ccode\u003e2ce8226\u003c/code\u003e\u003c/a\u003e docs(immer): fix setPerson updater type in usage examples (\u003ca href=\"https://redirect.github.com/pmndrs/zustand/issues/3502\"\u003e#3502\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmndrs/zustand/commit/038b93861b232e3b7e15a40d561c0d69fec2f2f1\"\u003e\u003ccode\u003e038b938\u003c/code\u003e\u003c/a\u003e docs(updating-state): use curried create form with explicit state type (\u003ca href=\"https://redirect.github.com/pmndrs/zustand/issues/3503\"\u003e#3503\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmndrs/zustand/commit/60a91b480b0d1742584c651cc0ddd58ac9a230ea\"\u003e\u003ccode\u003e60a91b4\u003c/code\u003e\u003c/a\u003e docs(devtools): add missing devtools import to troubleshooting example (\u003ca href=\"https://redirect.github.com/pmndrs/zustand/issues/3501\"\u003e#3501\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmndrs/zustand/commit/efad16936dd6f648075dc1e86abe9a072746530e\"\u003e\u003ccode\u003eefad169\u003c/code\u003e\u003c/a\u003e Update FUNDING.json\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pmndrs/zustand/compare/v5.0.13...v5.0.14\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@types/react` from 19.2.14 to 19.2.15\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/react\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `electron` from 41.6.1 to 42.3.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/electron/electron/releases\"\u003eelectron's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eelectron v42.3.0\u003c/h2\u003e\n\u003ch1\u003eRelease Notes for v42.3.0\u003c/h1\u003e\n\u003ch2\u003eFeatures\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAdded Linux support for \u003ccode\u003eapp.getApplicationInfoForProtocol()\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/electron/electron/pull/51680\"\u003e#51680\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdded Notification.remove(), removeAll(), and removeGroup() static methods for macOS. \u003ca href=\"https://redirect.github.com/electron/electron/pull/51691\"\u003e#51691\u003c/a\u003e \u003c!-- raw HTML omitted --\u003e(Also in \u003ca href=\"https://redirect.github.com/electron/electron/pull/51690\"\u003e43\u003c/a\u003e)\u003c!-- raw HTML omitted --\u003e\u003c/li\u003e\n\u003cli\u003eAdded session support to net module requests from utility process. \u003ca href=\"https://redirect.github.com/electron/electron/pull/51698\"\u003e#51698\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eFixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eFixed an issue where \u003ccode\u003eprocess\u003c/code\u003e and other Node globals were undefined in ESM preload scripts when \u003ccode\u003econtextIsolation\u003c/code\u003e was disabled. \u003ca href=\"https://redirect.github.com/electron/electron/pull/51726\"\u003e#51726\u003c/a\u003e \u003c!-- raw HTML omitted --\u003e(Also in \u003ca href=\"https://redirect.github.com/electron/electron/pull/51723\"\u003e43\u003c/a\u003e)\u003c!-- raw HTML omitted --\u003e\u003c/li\u003e\n\u003cli\u003eFixed native addon compilation failure with undefined msvc intrinsic from v8 headers. \u003ca href=\"https://redirect.github.com/electron/electron/pull/51706\"\u003e#51706\u003c/a\u003e \u003c!-- raw HTML omitted --\u003e(Also in \u003ca href=\"https://redirect.github.com/electron/electron/pull/51705\"\u003e43\u003c/a\u003e)\u003c!-- raw HTML omitted --\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eOther Changes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eUpdated Chromium to 148.0.7778.180. \u003ca href=\"https://redirect.github.com/electron/electron/pull/51600\"\u003e#51600\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eelectron v42.2.0\u003c/h2\u003e\n\u003ch1\u003eRelease Notes for v42.2.0\u003c/h1\u003e\n\u003ch2\u003eFeatures\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAllowed the \u003ccode\u003e--experimental-inspector-network-resource\u003c/code\u003e Node.js flag to be passed through Electron. \u003ca href=\"https://redirect.github.com/electron/electron/pull/51378\"\u003e#51378\u003c/a\u003e \u003c!-- raw HTML omitted --\u003e(Also in \u003ca href=\"https://redirect.github.com/electron/electron/pull/51377\"\u003e41\u003c/a\u003e)\u003c!-- raw HTML omitted --\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eFixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eFixed crash for Notification close. \u003ca href=\"https://redirect.github.com/electron/electron/pull/51657\"\u003e#51657\u003c/a\u003e \u003c!-- raw HTML omitted --\u003e(Also in \u003ca href=\"https://redirect.github.com/electron/electron/pull/51656\"\u003e41\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/electron/electron/pull/51655\"\u003e43\u003c/a\u003e)\u003c!-- raw HTML omitted --\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eOther Changes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eBackported fixes for a use-after-free in touch-event queue teardown, a runtime-effect validation gap in Skia image filters, and an integer overflow in the GLSL translator. \u003ca href=\"https://redirect.github.com/electron/electron/pull/51646\"\u003e#51646\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBackported fixes for an out-of-bounds write in WebAudio worklet setup, a heap overflow in the ANGLE GL backend, a use-after-free in the GTK Wayland platform, an accessibility tree-state validation issue, and an integer overflow in text bidi handling. \u003ca href=\"https://redirect.github.com/electron/electron/pull/51666\"\u003e#51666\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eImproved performance of \u003ccode\u003eapp.getApplicationNameForProtocol()\u003c/code\u003e on Linux. \u003ca href=\"https://redirect.github.com/electron/electron/pull/51628\"\u003e#51628\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eDocumentation\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eDocumentation changes: \u003ca href=\"https://redirect.github.com/electron/electron/pull/51688\"\u003e#51688\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eelectron v42.1.0\u003c/h2\u003e\n\u003ch1\u003eRelease Notes for v42.1.0\u003c/h1\u003e\n\u003ch2\u003eFixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eFixed a crash in the macOS Touch ID WebAuthn prompt caused by a missing string resource, and added \u003ccode\u003etouchID.promptReason\u003c/code\u003e to \u003ccode\u003eapp.configureWebAuthn()\u003c/code\u003e to customize the prompt text. \u003ca href=\"https://redirect.github.com/electron/electron/pull/51594\"\u003e#51594\u003c/a\u003e \u003c!-- raw HTML omitted --\u003e(Also in \u003ca href=\"https://redirect.github.com/electron/electron/pull/51604\"\u003e41\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/electron/electron/pull/51595\"\u003e43\u003c/a\u003e)\u003c!-- raw HTML omitted --\u003e\u003c/li\u003e\n\u003cli\u003eFixed a crash on MacOS when a user clicked into a title bar or top view. \u003ca href=\"https://redirect.github.com/electron/electron/pull/51605\"\u003e#51605\u003c/a\u003e \u003c!-- raw HTML omitted --\u003e(Also in \u003ca href=\"https://redirect.github.com/electron/electron/pull/51606\"\u003e43\u003c/a\u003e)\u003c!-- raw HTML omitted --\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eOther Changes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eImproved performance of \u003ccode\u003ewebRequest\u003c/code\u003e header conversions and several other gin converter hot paths. \u003ca href=\"https://redirect.github.com/electron/electron/pull/51607\"\u003e#51607\u003c/a\u003e \u003c!-- raw HTML omitted --\u003e(Also in \u003ca href=\"https://redirect.github.com/electron/electron/pull/51608\"\u003e43\u003c/a\u003e)\u003c!-- raw HTML omitted --\u003e\u003c/li\u003e\n\u003cli\u003eImproved performance of native event emission, IPC dispatch, and option-dictionary parsing. \u003ca href=\"https://redirect.github.com/electron/electron/pull/51614\"\u003e#51614\u003c/a\u003e \u003c!-- raw HTML omitted --\u003e(Also in \u003ca href=\"https://redirect.github.com/electron/electron/pull/51613\"\u003e41\u003c/a\u003e)\u003c!-- raw HTML omitted --\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eelectron v42.0.1\u003c/h2\u003e\n\u003ch1\u003eRelease Notes for v42.0.1\u003c/h1\u003e\n\u003ch2\u003eFixes\u003c/h2\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/electron/electron/commit/e0127e99aeaa66bb580538fc7409831b5248cccb\"\u003e\u003ccode\u003ee0127e9\u003c/code\u003e\u003c/a\u003e chore: bump chromium to 148.0.7778.180 (42-x-y) (\u003ca href=\"https://redirect.github.com/electron/electron/issues/51600\"\u003e#51600\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/electron/electron/commit/b07916bfa5b7cb5056c36c0cf4769849941d7ce1\"\u003e\u003ccode\u003eb07916b\u003c/code\u003e\u003c/a\u003e ci: unpin homebrew version (\u003ca href=\"https://redirect.github.com/electron/electron/issues/51762\"\u003e#51762\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/electron/electron/commit/6aac40e76ca1eace7b13f5c5451b586e010fe558\"\u003e\u003ccode\u003e6aac40e\u003c/code\u003e\u003c/a\u003e refactor: api::utilityProcessWrapper managed by cppgc (\u003ca href=\"https://redirect.github.com/electron/electron/issues/50955\"\u003e#50955\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/electron/electron/issues/51752\"\u003e#51752\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/electron/electron/commit/bb52cd543ded7b33e1232c3d8d743c8fa8387d8e\"\u003e\u003ccode\u003ebb52cd5\u003c/code\u003e\u003c/a\u003e chore: do not require infr singoff for github workflows/actions (\u003ca href=\"https://redirect.github.com/electron/electron/issues/51738\"\u003e#51738\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/electron/electron/issues/51\"\u003e#51\u003c/a\u003e...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/electron/electron/commit/fd02b05625e0e4a950e45a67642d8fba95510689\"\u003e\u003ccode\u003efd02b05\u003c/code\u003e\u003c/a\u003e refactor: rm chore_add_electron_objects_to_wrappablepointertag.patch (\u003ca href=\"https://redirect.github.com/electron/electron/issues/51734\"\u003e#51734\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/electron/electron/commit/34102a58a53d64c992d37bd745db49ecee1b5a30\"\u003e\u003ccode\u003e34102a5\u003c/code\u003e\u003c/a\u003e fix: \u003ccode\u003eprocess\u003c/code\u003e undefined in ESM preload when contextIsolation is disabled (\u003ca href=\"https://redirect.github.com/electron/electron/issues/5\"\u003e#5\u003c/a\u003e...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/electron/electron/commit/09d7d7af4d9e87dfe86f445790f0f699d3aedc96\"\u003e\u003ccode\u003e09d7d7a\u003c/code\u003e\u003c/a\u003e feat: add Linux support for \u003ccode\u003eapp.getApplicationInfoForProtocol()\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/electron/electron/issues/5\"\u003e#5\u003c/a\u003e… (\u003ca href=\"https://redirect.github.com/electron/electron/issues/51680\"\u003e#51680\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/electron/electron/commit/bbf87a7d991ca4bafb03717adc157413fb729d18\"\u003e\u003ccode\u003ebbf87a7\u003c/code\u003e\u003c/a\u003e feat: add remove, removeAll, and removeGroup for notifications API (\u003ca href=\"https://redirect.github.com/electron/electron/issues/51691\"\u003e#51691\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/electron/electron/commit/c9598c82e42f52b772e96b4b6d2bff04465fedde\"\u003e\u003ccode\u003ec9598c8\u003c/code\u003e\u003c/a\u003e feat: add http cache support to requests from utility process (\u003ca href=\"https://redirect.github.com/electron/electron/issues/51698\"\u003e#51698\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/electron/electron/commit/102aebe84143dceb32e7de7ffed64755ca47c20d\"\u003e\u003ccode\u003e102aebe\u003c/code\u003e\u003c/a\u003e ci: set no color output during build (\u003ca href=\"https://redirect.github.com/electron/electron/issues/51709\"\u003e#51709\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/electron/electron/compare/v41.6.1...v42.3.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `vite` from 8.0.13 to 8.0.14\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/vitejs/vite/releases\"\u003evite's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev8.0.14\u003c/h2\u003e\n\u003cp\u003ePlease refer to \u003ca href=\"https://github.com/vitejs/vite/blob/v8.0.14/packages/vite/CHANGELOG.md\"\u003eCHANGELOG.md\u003c/a\u003e for details.\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/vitejs/vite/blob/main/packages/vite/CHANGELOG.md\"\u003evite's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e\u003c!-- raw HTML omitted --\u003e\u003ca href=\"https://github.com/vitejs/vite/compare/v8.0.13...v8.0.14\"\u003e8.0.14\u003c/a\u003e (2026-05-21)\u003c!-- raw HTML omitted --\u003e\u003c/h2\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eupdate rolldown to 1.0.2 (\u003ca href=\"https://redirect.github.com/vitejs/vite/issues/22484\"\u003e#22484\u003c/a\u003e) (\u003ca href=\"https://github.com/vitejs/vite/commit/96efc88570b6a6ddf1a910f106920cbac07b3cf0\"\u003e96efc88\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003edeps:\u003c/strong\u003e update all non-major dependencies (\u003ca href=\"https://redirect.github.com/vitejs/vite/issues/22471\"\u003e#22471\u003c/a\u003e) (\u003ca href=\"https://github.com/vitejs/vite/commit/98b81632139d51820f82036e58d6fbbf122b77b3\"\u003e98b8163\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003edev:\u003c/strong\u003e handle errors when sending messages to vite server (\u003ca href=\"https://redirect.github.com/vitejs/vite/issues/22450\"\u003e#22450\u003c/a\u003e) (\u003ca href=\"https://github.com/vitejs/vite/commit/e8e9a34dcf2540139de558a10187630884d10217\"\u003ee8e9a34\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003ehtml:\u003c/strong\u003e handle trailing slash paths in transformIndexHtml (\u003ca href=\"https://redirect.github.com/vitejs/vite/issues/22480\"\u003e#22480\u003c/a\u003e) (\u003ca href=\"https://github.com/vitejs/vite/commit/5d94d1bffdb2a15de9341194d89baec86ce1f693\"\u003e5d94d1b\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eoptimizer:\u003c/strong\u003e pass oxc jsx options to transformSync in dependency scan                                                            (\u003ca href=\"https://redirect.github.com/vitejs/vite/issues/22342\"\u003e#22342\u003c/a\u003e) (\u003ca href=\"https://github.com/vitejs/vite/commit/b3132dacea9c6e0cf526cd9f0f09d850f577c262\"\u003eb3132da\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eMiscellaneous Chores\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003edeps:\u003c/strong\u003e update rolldown-related dependencies (\u003ca href=\"https://redirect.github.com/vitejs/vite/issues/22470\"\u003e#22470\u003c/a\u003e) (\u003ca href=\"https://github.com/vitejs/vite/commit/7cb728eb629cc677661f1bc52a044ffc0b87fc7f\"\u003e7cb728e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eremove irrelevant commits from changelog (\u003ca href=\"https://github.com/vitejs/vite/commit/2c69495f250edf01132d4a20128de19dbe836086\"\u003e2c69495\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eCode Refactoring\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eglob:\u003c/strong\u003e do not rewrite import path for absolute base (\u003ca href=\"https://redirect.github.com/vitejs/vite/issues/22310\"\u003e#22310\u003c/a\u003e) (\u003ca href=\"https://github.com/vitejs/vite/commit/0ae2844ab6d6d1ccf78a2975...\n\n_Description has been truncated_","html_url":"https://github.com/qlan-ro/mainframe/pull/358","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/qlan-ro%2Fmainframe/issues/358","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/358/packages"},{"uuid":"4514549823","node_id":"PR_kwDOSgivzc7e6zdO","number":2,"state":"open","title":"deps(deps): bump the all-dependencies group across 1 directory with 68 updates","user":"dependabot[bot]","labels":[],"assignees":[],"locked":false,"comments_count":1,"pull_request":true,"closed_at":null,"author_association":null,"state_reason":null,"created_at":"2026-05-25T05:38:58.000Z","updated_at":"2026-05-25T05:38:59.000Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"deps(deps): bump","group_name":"all-dependencies","update_count":68,"packages":[{"name":"@eslint-react/eslint-plugin","old_version":"2.13.0","new_version":"5.8.5","repository_url":"https://github.com/Rel1cx/eslint-react"},{"name":"@eslint/js","old_version":"9.39.2","new_version":"10.0.1","repository_url":"https://github.com/eslint/eslint"},{"name":"@typescript-eslint/eslint-plugin","old_version":"8.56.0","new_version":"8.59.4","repository_url":"https://github.com/typescript-eslint/typescript-eslint"},{"name":"@typescript-eslint/parser","old_version":"8.56.0","new_version":"8.59.4","repository_url":"https://github.com/typescript-eslint/typescript-eslint"},{"name":"eslint","old_version":"9.39.2","new_version":"10.4.0","repository_url":"https://github.com/eslint/eslint"},{"name":"eslint-plugin-react-hooks","old_version":"7.0.1","new_version":"7.1.1","repository_url":"https://github.com/facebook/react"},{"name":"globals","old_version":"17.3.0","new_version":"17.6.0","repository_url":"https://github.com/sindresorhus/globals"},{"name":"graphql","old_version":"16.12.0","new_version":"16.14.0","repository_url":"https://github.com/graphql/graphql-js"},{"name":"happy-dom","old_version":"20.6.2","new_version":"20.9.0","repository_url":"https://github.com/capricorn86/happy-dom"},{"name":"jiti","old_version":"2.6.1","new_version":"2.7.0","repository_url":"https://github.com/unjs/jiti"},{"name":"lint-staged","old_version":"16.2.7","new_version":"17.0.5","repository_url":"https://github.com/lint-staged/lint-staged"},{"name":"mermaid","old_version":"11.12.3","new_version":"11.15.0","repository_url":"https://github.com/mermaid-js/mermaid"},{"name":"prettier","old_version":"3.8.1","new_version":"3.8.3","repository_url":"https://github.com/prettier/prettier"},{"name":"react","old_version":"19.2.4","new_version":"19.2.6","repository_url":"https://github.com/facebook/react"},{"name":"@types/react","old_version":"19.2.14","new_version":"19.2.15","repository_url":"https://github.com/DefinitelyTyped/DefinitelyTyped"},{"name":"typescript","old_version":"5.9.3","new_version":"6.0.3","repository_url":"https://github.com/microsoft/TypeScript"},{"name":"typescript-eslint","old_version":"8.56.0","new_version":"8.59.4","repository_url":"https://github.com/typescript-eslint/typescript-eslint"},{"name":"typescript-language-server","old_version":"5.1.3","new_version":"5.3.0","repository_url":"https://github.com/typescript-language-server/typescript-language-server"},{"name":"vite","old_version":"7.3.1","new_version":"8.0.14","repository_url":"https://github.com/vitejs/vite"},{"name":"vitepress","old_version":"2.0.0-alpha.16","new_version":"2.0.0-alpha.17","repository_url":"https://github.com/vuejs/vitepress"},{"name":"vitepress-plugin-llms","old_version":"1.11.0","new_version":"1.13.0","repository_url":"https://github.com/okineadev/vitepress-plugin-llms"},{"name":"vitest","old_version":"4.0.18","new_version":"4.1.7","repository_url":"https://github.com/vitest-dev/vitest"},{"name":"wrangler","old_version":"4.66.0","new_version":"4.94.0","repository_url":"https://github.com/cloudflare/workers-sdk"},{"name":"@ai-sdk/openai","old_version":"3.0.29","new_version":"3.0.65","repository_url":"https://github.com/vercel/ai"},{"name":"@better-auth/passkey","old_version":"1.4.18","new_version":"1.6.11","repository_url":"https://github.com/better-auth/better-auth"},{"name":"@better-auth/stripe","old_version":"1.4.18","new_version":"1.6.11","repository_url":"https://github.com/better-auth/better-auth"},{"name":"@trpc/server","old_version":"11.10.0","new_version":"11.17.0","repository_url":"https://github.com/trpc/trpc"},{"name":"ai","old_version":"6.0.91","new_version":"6.0.191","repository_url":"https://github.com/vercel/ai"},{"name":"better-auth","old_version":"1.4.18","new_version":"1.6.11","repository_url":"https://github.com/better-auth/better-auth"},{"name":"drizzle-orm","old_version":"0.45.1","new_version":"0.45.2","repository_url":"https://github.com/drizzle-team/drizzle-orm"},{"name":"postgres","old_version":"3.4.8","new_version":"3.4.9","repository_url":"https://github.com/porsager/postgres"},{"name":"resend","old_version":"6.9.2","new_version":"6.12.3","repository_url":"https://github.com/resend/resend-node"},{"name":"stripe","old_version":"20.3.1","new_version":"22.1.1","repository_url":"https://github.com/stripe/stripe-node"},{"name":"@cloudflare/workers-types","old_version":"4.20260218.0","new_version":"4.20260525.1","repository_url":"https://github.com/cloudflare/workerd"},{"name":"@types/bun","old_version":"1.3.9","new_version":"1.3.14","repository_url":"https://github.com/DefinitelyTyped/DefinitelyTyped"},{"name":"hono","old_version":"4.11.10","new_version":"4.12.23","repository_url":"https://github.com/honojs/hono"},{"name":"@tanstack/react-query","old_version":"5.90.21","new_version":"5.100.14","repository_url":"https://github.com/TanStack/query"},{"name":"@tanstack/react-router","old_version":"1.161.1","new_version":"1.170.8","repository_url":"https://github.com/TanStack/router"},{"name":"@trpc/client","old_version":"11.10.0","new_version":"11.17.0","repository_url":"https://github.com/trpc/trpc"},{"name":"@trpc/tanstack-react-query","old_version":"11.10.0","new_version":"11.17.0","repository_url":"https://github.com/trpc/trpc"},{"name":"jotai","old_version":"2.17.1","new_version":"2.20.0","repository_url":"https://github.com/pmndrs/jotai"},{"name":"jotai-effect","old_version":"2.2.3","new_version":"2.3.1","repository_url":"https://github.com/jotaijs/jotai-effect"},{"name":"lucide-react","old_version":"0.574.0","new_version":"1.16.0","repository_url":"https://github.com/lucide-icons/lucide"},{"name":"react-dom","old_version":"19.2.4","new_version":"19.2.6","repository_url":"https://github.com/facebook/react"},{"name":"react-error-boundary","old_version":"6.1.1","new_version":"6.1.2","repository_url":"https://github.com/bvaughn/react-error-boundary"},{"name":"tailwind-merge","old_version":"3.4.1","new_version":"3.6.0","repository_url":"https://github.com/dcastil/tailwind-merge"},{"name":"@tailwindcss/postcss","old_version":"4.2.0","new_version":"4.3.0","repository_url":"https://github.com/tailwindlabs/tailwindcss"},{"name":"@tanstack/react-query-devtools","old_version":"5.91.3","new_version":"5.100.14","repository_url":"https://github.com/TanStack/query"},{"name":"@tanstack/react-router-devtools","old_version":"1.161.1","new_version":"1.167.0","repository_url":"https://github.com/TanStack/router"},{"name":"@tanstack/router-plugin","old_version":"1.161.1","new_version":"1.168.11","repository_url":"https://github.com/TanStack/router"},{"name":"@types/node","old_version":"25.2.3","new_version":"25.9.1","repository_url":"https://github.com/DefinitelyTyped/DefinitelyTyped"},{"name":"@vitejs/plugin-react","old_version":"5.1.4","new_version":"6.0.2","repository_url":"https://github.com/vitejs/vite-plugin-react"},{"name":"@vitejs/plugin-react-swc","old_version":"4.2.3","new_version":"4.3.1","repository_url":"https://github.com/vitejs/vite-plugin-react"},{"name":"autoprefixer","old_version":"10.4.24","new_version":"10.5.0","repository_url":"https://github.com/postcss/autoprefixer"},{"name":"globby","old_version":"16.1.1","new_version":"16.2.0","repository_url":"https://github.com/sindresorhus/globby"},{"name":"@react-email/components","old_version":"1.0.8","new_version":"1.0.12","repository_url":"https://github.com/resend/react-email"},{"name":"@react-email/render","old_version":"2.0.4","new_version":"2.0.8","repository_url":"https://github.com/resend/react-email"},{"name":"@react-email/preview-server","old_version":"5.2.8","new_version":"5.2.10","repository_url":"https://github.com/resend/react-email"},{"name":"react-email","old_version":"5.2.8","new_version":"6.3.2","repository_url":"https://github.com/resend/react-email"},{"name":"@astrojs/react","old_version":"4.4.2","new_version":"5.0.5","repository_url":"https://github.com/withastro/astro"},{"name":"astro","old_version":"5.17.2","new_version":"6.3.7","repository_url":"https://github.com/withastro/astro"},{"name":"dotenv","old_version":"17.3.1","new_version":"17.4.2","repository_url":"https://github.com/motdotla/dotenv"},{"name":"drizzle-kit","old_version":"0.31.9","new_version":"0.31.10","repository_url":"https://github.com/drizzle-team/drizzle-orm"},{"name":"@modelcontextprotocol/sdk","old_version":"1.26.0","new_version":"1.29.0","repository_url":"https://github.com/modelcontextprotocol/typescript-sdk"},{"name":"got","old_version":"14.6.6","new_version":"15.0.5","repository_url":"https://github.com/sindresorhus/got"}],"path":null,"ecosystem":"npm"},"body":"Bumps the all-dependencies group with 65 updates in the / directory:\n\n| Package | From | To |\n| --- | --- | --- |\n| [@eslint-react/eslint-plugin](https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin) | `2.13.0` | `5.8.5` |\n| [@eslint/js](https://github.com/eslint/eslint/tree/HEAD/packages/js) | `9.39.2` | `10.0.1` |\n| [@typescript-eslint/eslint-plugin](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin) | `8.56.0` | `8.59.4` |\n| [@typescript-eslint/parser](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/parser) | `8.56.0` | `8.59.4` |\n| [eslint](https://github.com/eslint/eslint) | `9.39.2` | `10.4.0` |\n| [eslint-plugin-react-hooks](https://github.com/facebook/react/tree/HEAD/packages/eslint-plugin-react-hooks) | `7.0.1` | `7.1.1` |\n| [globals](https://github.com/sindresorhus/globals) | `17.3.0` | `17.6.0` |\n| [graphql](https://github.com/graphql/graphql-js) | `16.12.0` | `16.14.0` |\n| [happy-dom](https://github.com/capricorn86/happy-dom) | `20.6.2` | `20.9.0` |\n| [jiti](https://github.com/unjs/jiti) | `2.6.1` | `2.7.0` |\n| [lint-staged](https://github.com/lint-staged/lint-staged) | `16.2.7` | `17.0.5` |\n| [mermaid](https://github.com/mermaid-js/mermaid) | `11.12.3` | `11.15.0` |\n| [prettier](https://github.com/prettier/prettier) | `3.8.1` | `3.8.3` |\n| [react](https://github.com/facebook/react/tree/HEAD/packages/react) | `19.2.4` | `19.2.6` |\n| [@types/react](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/react) | `19.2.14` | `19.2.15` |\n| [typescript](https://github.com/microsoft/TypeScript) | `5.9.3` | `6.0.3` |\n| [typescript-eslint](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/typescript-eslint) | `8.56.0` | `8.59.4` |\n| [typescript-language-server](https://github.com/typescript-language-server/typescript-language-server) | `5.1.3` | `5.3.0` |\n| [vite](https://github.com/vitejs/vite/tree/HEAD/packages/vite) | `7.3.1` | `8.0.14` |\n| [vitepress](https://github.com/vuejs/vitepress) | `2.0.0-alpha.16` | `2.0.0-alpha.17` |\n| [vitepress-plugin-llms](https://github.com/okineadev/vitepress-plugin-llms) | `1.11.0` | `1.13.0` |\n| [vitest](https://github.com/vitest-dev/vitest/tree/HEAD/packages/vitest) | `4.0.18` | `4.1.7` |\n| [wrangler](https://github.com/cloudflare/workers-sdk/tree/HEAD/packages/wrangler) | `4.66.0` | `4.94.0` |\n| [@ai-sdk/openai](https://github.com/vercel/ai/tree/HEAD/packages/openai) | `3.0.29` | `3.0.65` |\n| [@better-auth/passkey](https://github.com/better-auth/better-auth/tree/HEAD/packages/passkey) | `1.4.18` | `1.6.11` |\n| [@better-auth/stripe](https://github.com/better-auth/better-auth/tree/HEAD/packages/stripe) | `1.4.18` | `1.6.11` |\n| [@trpc/server](https://github.com/trpc/trpc/tree/HEAD/packages/server) | `11.10.0` | `11.17.0` |\n| [ai](https://github.com/vercel/ai/tree/HEAD/packages/ai) | `6.0.91` | `6.0.191` |\n| [better-auth](https://github.com/better-auth/better-auth/tree/HEAD/packages/better-auth) | `1.4.18` | `1.6.11` |\n| [drizzle-orm](https://github.com/drizzle-team/drizzle-orm) | `0.45.1` | `0.45.2` |\n| [postgres](https://github.com/porsager/postgres) | `3.4.8` | `3.4.9` |\n| [resend](https://github.com/resend/resend-node) | `6.9.2` | `6.12.3` |\n| [stripe](https://github.com/stripe/stripe-node) | `20.3.1` | `22.1.1` |\n| [@cloudflare/workers-types](https://github.com/cloudflare/workerd) | `4.20260218.0` | `4.20260525.1` |\n| [@types/bun](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/bun) | `1.3.9` | `1.3.14` |\n| [hono](https://github.com/honojs/hono) | `4.11.10` | `4.12.23` |\n| [@tanstack/react-query](https://github.com/TanStack/query/tree/HEAD/packages/react-query) | `5.90.21` | `5.100.14` |\n| [@tanstack/react-router](https://github.com/TanStack/router/tree/HEAD/packages/react-router) | `1.161.1` | `1.170.8` |\n| [@trpc/client](https://github.com/trpc/trpc/tree/HEAD/packages/client) | `11.10.0` | `11.17.0` |\n| [@trpc/tanstack-react-query](https://github.com/trpc/trpc/tree/HEAD/packages/tanstack-react-query) | `11.10.0` | `11.17.0` |\n| [jotai](https://github.com/pmndrs/jotai) | `2.17.1` | `2.20.0` |\n| [jotai-effect](https://github.com/jotaijs/jotai-effect) | `2.2.3` | `2.3.1` |\n| [lucide-react](https://github.com/lucide-icons/lucide/tree/HEAD/packages/lucide-react) | `0.574.0` | `1.16.0` |\n| [react-dom](https://github.com/facebook/react/tree/HEAD/packages/react-dom) | `19.2.4` | `19.2.6` |\n| [react-error-boundary](https://github.com/bvaughn/react-error-boundary) | `6.1.1` | `6.1.2` |\n| [tailwind-merge](https://github.com/dcastil/tailwind-merge) | `3.4.1` | `3.6.0` |\n| [@tailwindcss/postcss](https://github.com/tailwindlabs/tailwindcss/tree/HEAD/packages/@tailwindcss-postcss) | `4.2.0` | `4.3.0` |\n| [@tanstack/react-query-devtools](https://github.com/TanStack/query/tree/HEAD/packages/react-query-devtools) | `5.91.3` | `5.100.14` |\n| [@tanstack/react-router-devtools](https://github.com/TanStack/router/tree/HEAD/packages/react-router-devtools) | `1.161.1` | `1.167.0` |\n| [@tanstack/router-plugin](https://github.com/TanStack/router/tree/HEAD/packages/router-plugin) | `1.161.1` | `1.168.11` |\n| [@types/node](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/node) | `25.2.3` | `25.9.1` |\n| [@vitejs/plugin-react](https://github.com/vitejs/vite-plugin-react/tree/HEAD/packages/plugin-react) | `5.1.4` | `6.0.2` |\n| [@vitejs/plugin-react-swc](https://github.com/vitejs/vite-plugin-react/tree/HEAD/packages/plugin-react-swc) | `4.2.3` | `4.3.1` |\n| [autoprefixer](https://github.com/postcss/autoprefixer) | `10.4.24` | `10.5.0` |\n| [globby](https://github.com/sindresorhus/globby) | `16.1.1` | `16.2.0` |\n| [@react-email/components](https://github.com/resend/react-email/tree/HEAD/packages/components) | `1.0.8` | `1.0.12` |\n| [@react-email/render](https://github.com/resend/react-email/tree/HEAD/packages/render) | `2.0.4` | `2.0.8` |\n| [@react-email/preview-server](https://github.com/resend/react-email/tree/HEAD/packages/preview-server) | `5.2.8` | `5.2.10` |\n| [react-email](https://github.com/resend/react-email/tree/HEAD/packages/react-email) | `5.2.8` | `6.3.2` |\n| [@astrojs/react](https://github.com/withastro/astro/tree/HEAD/packages/integrations/react) | `4.4.2` | `5.0.5` |\n| [astro](https://github.com/withastro/astro/tree/HEAD/packages/astro) | `5.17.2` | `6.3.7` |\n| [dotenv](https://github.com/motdotla/dotenv) | `17.3.1` | `17.4.2` |\n| [drizzle-kit](https://github.com/drizzle-team/drizzle-orm) | `0.31.9` | `0.31.10` |\n| [@modelcontextprotocol/sdk](https://github.com/modelcontextprotocol/typescript-sdk) | `1.26.0` | `1.29.0` |\n| [got](https://github.com/sindresorhus/got) | `14.6.6` | `15.0.5` |\n\n\nUpdates `@eslint-react/eslint-plugin` from 2.13.0 to 5.8.5\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/Rel1cx/eslint-react/releases\"\u003e@​eslint-react/eslint-plugin's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev5.8.5 (2026-05-24)\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003ch3\u003e📝 Documentation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdded rule implementation patterns guide (\u003ccode\u003edocs/rule-implementation-patterns.md\u003c/code\u003e) and term-based rule patterns guide (\u003ccode\u003edocs/term-based-rule-patterns.md\u003c/code\u003e).\u003c/li\u003e\n\u003cli\u003eLowered minimum TypeScript version requirement from \u003ccode\u003e5.1.0\u003c/code\u003e to \u003ccode\u003e5.0.0\u003c/code\u003e across README and documentation.\u003c/li\u003e\n\u003cli\u003eFixed textlint war-metaphor warnings and refined \u003ccode\u003e.textlintrc.json\u003c/code\u003e patterns.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🏗️ Internal\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdjusted formatting across configuration and script files (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1795\"\u003e#1795\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFixed a typo in the CI test workflow step.\u003c/li\u003e\n\u003cli\u003eAdded regression tests for oxc issues compatibility verification (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1796\"\u003e#1796\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eBumped dependencies across workspace packages:\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e@effect/language-service\u003c/code\u003e to \u003ccode\u003e^0.86.2\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@takumi-rs/image-response\u003c/code\u003e to \u003ccode\u003e^1.3.0\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@tsconfig/vite-react\u003c/code\u003e to \u003ccode\u003e^8.0.6\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@types/node\u003c/code\u003e to \u003ccode\u003e^25.9.1\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@types/react\u003c/code\u003e to \u003ccode\u003e^19.2.15\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eeslint-plugin-package-json\u003c/code\u003e to \u003ccode\u003e^1.1.0\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003efumadocs-core\u003c/code\u003e to \u003ccode\u003e^16.9.0\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003efumadocs-mdx\u003c/code\u003e to \u003ccode\u003e^15.0.7\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003efumadocs-ui\u003c/code\u003e to \u003ccode\u003e^16.9.0\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003elru-cache\u003c/code\u003e to \u003ccode\u003e11.5.0\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003enx\u003c/code\u003e to \u003ccode\u003e^22.7.3\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003epostcss\u003c/code\u003e to \u003ccode\u003e^8.5.15\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003evite\u003c/code\u003e to \u003ccode\u003e^8.0.14\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003evitest\u003c/code\u003e to \u003ccode\u003e^4.1.7\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003epnpm\u003c/code\u003e to \u003ccode\u003e11.2.1\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eAttestation\u003c/h2\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/attestations/28553042\"\u003ehttps://github.com/Rel1cx/eslint-react/attestations/28553042\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev5.8.4 (2026-05-22)\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003ch3\u003e📝 Documentation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eWebsite\u003c/strong\u003e: Restructured the FAQ page from an accordion layout to standard headings for better SEO, accessibility, and direct anchor linking.\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eWebsite\u003c/strong\u003e: Replaced the homepage \u003ccode\u003eHint\u003c/code\u003e popover with a direct link to the FAQ anchor explaining the project's human/LLM collaboration policy.\u003c/li\u003e\n\u003cli\u003eAdded a new \u003cstrong\u003e\u0026quot;What does 90% human-written mean?\u0026quot;\u003c/strong\u003e section to the FAQ.\u003c/li\u003e\n\u003cli\u003eUpdated documentation for \u003ccode\u003eisClassComponent\u003c/code\u003e and \u003ccode\u003eJsxConfig\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003eRemoved outdated documentation files.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🏗️ Internal\u003c/h3\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/Rel1cx/eslint-react/blob/main/CHANGELOG.md\"\u003e@​eslint-react/eslint-plugin's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev5.8.5 (2026-05-24)\u003c/h2\u003e\n\u003ch3\u003e📝 Documentation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdded rule implementation patterns guide (\u003ccode\u003edocs/rule-implementation-patterns.md\u003c/code\u003e) and term-based rule patterns guide (\u003ccode\u003edocs/term-based-rule-patterns.md\u003c/code\u003e).\u003c/li\u003e\n\u003cli\u003eLowered minimum TypeScript version requirement from \u003ccode\u003e5.1.0\u003c/code\u003e to \u003ccode\u003e5.0.0\u003c/code\u003e across README and documentation.\u003c/li\u003e\n\u003cli\u003eFixed textlint war-metaphor warnings and refined \u003ccode\u003e.textlintrc.json\u003c/code\u003e patterns.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🏗️ Internal\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdjusted formatting across configuration and script files (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1795\"\u003e#1795\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFixed a typo in the CI test workflow step.\u003c/li\u003e\n\u003cli\u003eAdded regression tests for oxc issues compatibility verification (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1796\"\u003e#1796\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eBumped dependencies across workspace packages:\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e@effect/language-service\u003c/code\u003e to \u003ccode\u003e^0.86.2\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@takumi-rs/image-response\u003c/code\u003e to \u003ccode\u003e^1.3.0\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@tsconfig/vite-react\u003c/code\u003e to \u003ccode\u003e^8.0.6\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@types/node\u003c/code\u003e to \u003ccode\u003e^25.9.1\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@types/react\u003c/code\u003e to \u003ccode\u003e^19.2.15\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eeslint-plugin-package-json\u003c/code\u003e to \u003ccode\u003e^1.1.0\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003efumadocs-core\u003c/code\u003e to \u003ccode\u003e^16.9.0\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003efumadocs-mdx\u003c/code\u003e to \u003ccode\u003e^15.0.7\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003efumadocs-ui\u003c/code\u003e to \u003ccode\u003e^16.9.0\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003elru-cache\u003c/code\u003e to \u003ccode\u003e11.5.0\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003enx\u003c/code\u003e to \u003ccode\u003e^22.7.3\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003epostcss\u003c/code\u003e to \u003ccode\u003e^8.5.15\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003evite\u003c/code\u003e to \u003ccode\u003e^8.0.14\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003evitest\u003c/code\u003e to \u003ccode\u003e^4.1.7\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003epnpm\u003c/code\u003e to \u003ccode\u003e11.2.1\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev5.8.4 (2026-05-22)\u003c/h2\u003e\n\u003ch3\u003e📝 Documentation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eWebsite\u003c/strong\u003e: Restructured the FAQ page from an accordion layout to standard headings for better SEO, accessibility, and direct anchor linking.\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eWebsite\u003c/strong\u003e: Replaced the homepage \u003ccode\u003eHint\u003c/code\u003e popover with a direct link to the FAQ anchor explaining the project's human/LLM collaboration policy.\u003c/li\u003e\n\u003cli\u003eAdded a new \u003cstrong\u003e\u0026quot;What does 90% human-written mean?\u0026quot;\u003c/strong\u003e section to the FAQ.\u003c/li\u003e\n\u003cli\u003eUpdated documentation for \u003ccode\u003eisClassComponent\u003c/code\u003e and \u003ccode\u003eJsxConfig\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003eRemoved outdated documentation files.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🏗️ Internal\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003e\u003ccode\u003ecore\u003c/code\u003e\u003c/strong\u003e: Simplified \u003ccode\u003eisClassComponent\u003c/code\u003e by removing the \u003ccode\u003econtext\u003c/code\u003e parameter and replacing \u003ccode\u003eisClassComponentLoose\u003c/code\u003e with the simplified function.\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003e\u003ccode\u003eeslint-plugin-react-x\u003c/code\u003e\u003c/strong\u003e: Removed unnecessary optional chaining across multiple rules (\u003ccode\u003eimmutability\u003c/code\u003e, \u003ccode\u003eno-unused-state\u003c/code\u003e, \u003ccode\u003epurity\u003c/code\u003e, \u003ccode\u003erefs\u003c/code\u003e, \u003ccode\u003eset-state-in-effect\u003c/code\u003e, \u003ccode\u003estatic-components\u003c/code\u003e, \u003ccode\u003euse-memo\u003c/code\u003e, etc.) and expanded test coverage for edge cases (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1792\"\u003e#1792\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdded automated GitHub Release workflow and fixed \u003ccode\u003eactions/setup-node\u003c/code\u003e cache parameter error.\u003c/li\u003e\n\u003cli\u003eAdded null-safety boundary tests for rules affected by PR \u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1792\"\u003e#1792\u003c/a\u003e (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1794\"\u003e#1794\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eBumped dependencies across workspace packages: \u003ccode\u003e@takumi-rs/image-response\u003c/code\u003e to 1.2.1, \u003ccode\u003efumadocs-mdx\u003c/code\u003e to 15.0.6, \u003ccode\u003eimport-integrity-lint\u003c/code\u003e to 1.1.1, \u003ccode\u003epreact\u003c/code\u003e to 10.29.2, \u003ccode\u003etsx\u003c/code\u003e to 4.22.1, \u003ccode\u003e@typescript-eslint\u003c/code\u003e to \u003ccode\u003e^8.59.4\u003c/code\u003e, \u003ccode\u003e@types/node\u003c/code\u003e to \u003ccode\u003e^25.9.0\u003c/code\u003e, \u003ccode\u003edompurify\u003c/code\u003e to \u003ccode\u003e^3.4.5\u003c/code\u003e, \u003ccode\u003epnpm\u003c/code\u003e to \u003ccode\u003e11.1.3\u003c/code\u003e, \u003ccode\u003etextlint\u003c/code\u003e to 15.7.1, and dprint TypeScript plugin to 0.96.1.\u003c/li\u003e\n\u003cli\u003eCleaned up stray empty string in \u003ccode\u003etsl.config.ts\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003eCleaned up type and lint errors across the workspace (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1793\"\u003e#1793\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eDowngraded TypeScript override in \u003ccode\u003epnpm-workspace.yaml\u003c/code\u003e from \u003ccode\u003e^6.0.3\u003c/code\u003e to \u003ccode\u003e5.9.3\u003c/code\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/8410851f436a8e1553484c95faecc64b3f8adbb1\"\u003e\u003ccode\u003e8410851\u003c/code\u003e\u003c/a\u003e release: 5.8.5\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/dccf9baf4c4f35919892dd61cee348ea1046d8fc\"\u003e\u003ccode\u003edccf9ba\u003c/code\u003e\u003c/a\u003e release: 5.8.5-beta.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/65edd43b61302e39af37fe00940f3903c52d5d0b\"\u003e\u003ccode\u003e65edd43\u003c/code\u003e\u003c/a\u003e release: 5.8.5-next.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/0393cd198aabafffeb4cf316856726b60834acd6\"\u003e\u003ccode\u003e0393cd1\u003c/code\u003e\u003c/a\u003e docs: lower minimum TypeScript version to 5.0.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/ceeeb663e4041cdabf41c75d8b68802006e86341\"\u003e\u003ccode\u003eceeeb66\u003c/code\u003e\u003c/a\u003e chore(deps): bump \u003ccode\u003e@​types/react\u003c/code\u003e, \u003ccode\u003e@​types/node\u003c/code\u003e, postcss, and fumadocs\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/39f2a0fe43a792ee4e1cf3ebf36e2b178e39324a\"\u003e\u003ccode\u003e39f2a0f\u003c/code\u003e\u003c/a\u003e release: 5.8.4\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/f7fa04ec446ffafcc5b04ac48b9a0a8c7421f5d7\"\u003e\u003ccode\u003ef7fa04e\u003c/code\u003e\u003c/a\u003e release: 5.8.4-beta.5\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/dbbd3298b136a649b4242b36d70929f0e8d6ecc7\"\u003e\u003ccode\u003edbbd329\u003c/code\u003e\u003c/a\u003e release: 5.8.4-beta.4\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/e3d9585a91caf57f3d0c69652a2a89664e70b5fd\"\u003e\u003ccode\u003ee3d9585\u003c/code\u003e\u003c/a\u003e release: 5.8.4-beta.3\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/1bae3a59500bde45ed7769521f1b1dc145ea92c1\"\u003e\u003ccode\u003e1bae3a5\u003c/code\u003e\u003c/a\u003e Link 90% human-written claim to FAQ\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/Rel1cx/eslint-react/commits/v5.8.5/plugins/eslint-plugin\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@eslint/js` from 9.39.2 to 10.0.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/eslint/eslint/releases\"\u003e@​eslint/js's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev10.0.1\u003c/h2\u003e\n\u003ch2\u003eBug Fixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/c87d5bded54c5cf491eb04c24c9d09bbbd42c23e\"\u003e\u003ccode\u003ec87d5bd\u003c/code\u003e\u003c/a\u003e fix: update eslint (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20531\"\u003e#20531\u003c/a\u003e) (renovate[bot])\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/d84100115c14691691058f00779c94e74fca946a\"\u003e\u003ccode\u003ed841001\u003c/code\u003e\u003c/a\u003e fix: update \u003ccode\u003eminimatch\u003c/code\u003e to \u003ccode\u003e10.2.1\u003c/code\u003e to address security vulnerabilities (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20519\"\u003e#20519\u003c/a\u003e) (루밀LuMir)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/04c21475b3004904948f02049f2888b401d82c78\"\u003e\u003ccode\u003e04c2147\u003c/code\u003e\u003c/a\u003e fix: update error message for unused suppressions (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20496\"\u003e#20496\u003c/a\u003e) (fnx)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/38b089c1726feac0e31a31d47941bd99e29ce003\"\u003e\u003ccode\u003e38b089c\u003c/code\u003e\u003c/a\u003e fix: update dependency \u003ccode\u003e@​eslint/config-array\u003c/code\u003e to ^0.23.1 (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20484\"\u003e#20484\u003c/a\u003e) (renovate[bot])\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eDocumentation\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/5b3dbce50a1404a9f118afe810cefeee79388a2a\"\u003e\u003ccode\u003e5b3dbce\u003c/code\u003e\u003c/a\u003e docs: add AI acknowledgement section to templates (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20431\"\u003e#20431\u003c/a\u003e) (루밀LuMir)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/6f23076037d5879f20fb3be2ef094293b1e8d38c\"\u003e\u003ccode\u003e6f23076\u003c/code\u003e\u003c/a\u003e docs: toggle nav in no-JS mode (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20476\"\u003e#20476\u003c/a\u003e) (Tanuj Kanti)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/b69cfb32a16c5d5e9986390d484fae1d21e406f9\"\u003e\u003ccode\u003eb69cfb3\u003c/code\u003e\u003c/a\u003e docs: Update README (GitHub Actions Bot)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eChores\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/e5c281ffd038a3a7a3e5364db0b9378e0ad83020\"\u003e\u003ccode\u003ee5c281f\u003c/code\u003e\u003c/a\u003e chore: updates for v9.39.3 release (Jenkins)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/8c3832adb77cd993b4a24891900d5eeaaf093cdc\"\u003e\u003ccode\u003e8c3832a\u003c/code\u003e\u003c/a\u003e chore: update \u003ccode\u003e@​typescript-eslint/parser\u003c/code\u003e to ^8.56.0 (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20514\"\u003e#20514\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/8330d238ae6adb68bb6a1c9381e38cfedd990d94\"\u003e\u003ccode\u003e8330d23\u003c/code\u003e\u003c/a\u003e test: add tests for config-api (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20493\"\u003e#20493\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/37d6e91e88fa6a2ca6d8726679096acff21ba6cc\"\u003e\u003ccode\u003e37d6e91\u003c/code\u003e\u003c/a\u003e chore: remove eslint v10 prereleases from eslint-config-eslint deps (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20494\"\u003e#20494\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/da7cd0e79197ad16e17052eef99df141de6dbfb1\"\u003e\u003ccode\u003eda7cd0e\u003c/code\u003e\u003c/a\u003e refactor: cleanup error message templates (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20479\"\u003e#20479\u003c/a\u003e) (Francesco Trotta)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/84fb885d49ac810e79a9491276b4828b53d913e5\"\u003e\u003ccode\u003e84fb885\u003c/code\u003e\u003c/a\u003e chore: package.json update for \u003ccode\u003e@​eslint/js\u003c/code\u003e release (Jenkins)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/1f667344b57c4c09b548d94bcfac1f91b6e5c63d\"\u003e\u003ccode\u003e1f66734\u003c/code\u003e\u003c/a\u003e chore: add \u003ccode\u003eeslint\u003c/code\u003e to \u003ccode\u003epeerDependencies\u003c/code\u003e of \u003ccode\u003e@eslint/js\u003c/code\u003e (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20467\"\u003e#20467\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev10.0.0\u003c/h2\u003e\n\u003ch2\u003eBreaking Changes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/f9e54f43a5e497cdfa179338b431093245cb787b\"\u003e\u003ccode\u003ef9e54f4\u003c/code\u003e\u003c/a\u003e feat!: estimate rule-tester failure location (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20420\"\u003e#20420\u003c/a\u003e) (ST-DDT)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/a176319d8ade1a7d9b2d7fb8f038f55a2662325f\"\u003e\u003ccode\u003ea176319\u003c/code\u003e\u003c/a\u003e feat!: replace \u003ccode\u003echalk\u003c/code\u003e with \u003ccode\u003estyleText\u003c/code\u003e and add \u003ccode\u003ecolor\u003c/code\u003e to \u003ccode\u003eResultsMeta\u003c/code\u003e (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20227\"\u003e#20227\u003c/a\u003e) (루밀LuMir)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/c7046e6c1e03c4ca0eee4888a1f2eba4c6454f84\"\u003e\u003ccode\u003ec7046e6\u003c/code\u003e\u003c/a\u003e feat!: enable JSX reference tracking (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20152\"\u003e#20152\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/fa31a608901684fbcd9906d1907e66561d16e5aa\"\u003e\u003ccode\u003efa31a60\u003c/code\u003e\u003c/a\u003e feat!: add \u003ccode\u003ename\u003c/code\u003e to configs (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20015\"\u003e#20015\u003c/a\u003e) (Kirk Waiblinger)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/3383e7ec9028166cafc8ea7986c2f7498d0049f0\"\u003e\u003ccode\u003e3383e7e\u003c/code\u003e\u003c/a\u003e fix!: remove deprecated \u003ccode\u003eSourceCode\u003c/code\u003e methods (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20137\"\u003e#20137\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/501abd0e916a35554c58b7c0365537f1fa3880ce\"\u003e\u003ccode\u003e501abd0\u003c/code\u003e\u003c/a\u003e feat!: update dependency minimatch to v10 (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20246\"\u003e#20246\u003c/a\u003e) (renovate[bot])\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/ca4d3b40085de47561f89656a2207d09946ed45e\"\u003e\u003ccode\u003eca4d3b4\u003c/code\u003e\u003c/a\u003e fix!: stricter rule tester assertions for valid test cases (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20125\"\u003e#20125\u003c/a\u003e) (唯然)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/96512a66c86402fb0538cdcb6cd30b9073f6bf3b\"\u003e\u003ccode\u003e96512a6\u003c/code\u003e\u003c/a\u003e fix!: Remove deprecated rule context methods (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20086\"\u003e#20086\u003c/a\u003e) (Nicholas C. Zakas)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/c69fdacdb2e886b9d965568a397aa8220db3fe90\"\u003e\u003ccode\u003ec69fdac\u003c/code\u003e\u003c/a\u003e feat!: remove eslintrc support (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20037\"\u003e#20037\u003c/a\u003e) (Francesco Trotta)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/208b5cc34a8374ff81412b5bec2e0800eebfbd04\"\u003e\u003ccode\u003e208b5cc\u003c/code\u003e\u003c/a\u003e feat!: Use \u003ccode\u003eScopeManager#addGlobals()\u003c/code\u003e (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20132\"\u003e#20132\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/a2ee188ea7a38a0c6155f3d39e2b00e1d0f36e14\"\u003e\u003ccode\u003ea2ee188\u003c/code\u003e\u003c/a\u003e fix!: add \u003ccode\u003euniqueItems: true\u003c/code\u003e in \u003ccode\u003eno-invalid-regexp\u003c/code\u003e option (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20155\"\u003e#20155\u003c/a\u003e) (Tanuj Kanti)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/a89059dbf2832d417dd493ee81483227ec44e4ab\"\u003e\u003ccode\u003ea89059d\u003c/code\u003e\u003c/a\u003e feat!: Program range span entire source text (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20133\"\u003e#20133\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/39a6424373d915fa9de0d7b0caba9a4dc3da9b53\"\u003e\u003ccode\u003e39a6424\u003c/code\u003e\u003c/a\u003e fix!: assert 'text' is a string across all RuleFixer methods (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20082\"\u003e#20082\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/f28fbf846244e043c92b355b224d121b06140b44\"\u003e\u003ccode\u003ef28fbf8\u003c/code\u003e\u003c/a\u003e fix!: Deprecate \u003ccode\u003e\u0026quot;always\u0026quot;\u003c/code\u003e and \u003ccode\u003e\u0026quot;as-needed\u0026quot;\u003c/code\u003e options of the \u003ccode\u003eradix\u003c/code\u003e rule (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20223\"\u003e#20223\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/aa3fb2b233e929b37220be940575f42c280e0b98\"\u003e\u003ccode\u003eaa3fb2b\u003c/code\u003e\u003c/a\u003e fix!: tighten \u003ccode\u003efunc-names\u003c/code\u003e schema (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20119\"\u003e#20119\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/f6c0ed0311dcfee853367d5068c765d066e6b756\"\u003e\u003ccode\u003ef6c0ed0\u003c/code\u003e\u003c/a\u003e feat!: report \u003ccode\u003eeslint-env\u003c/code\u003e comments as errors (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20128\"\u003e#20128\u003c/a\u003e) (Francesco Trotta)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/4bf739fb533e59f7f0a66b65f7bc80be0f37d8db\"\u003e\u003ccode\u003e4bf739f\u003c/code\u003e\u003c/a\u003e fix!: remove deprecated \u003ccode\u003eLintMessage#nodeType\u003c/code\u003e and \u003ccode\u003eTestCaseError#type\u003c/code\u003e (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20096\"\u003e#20096\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/523c076866400670fb2192a3f55dbf7ad3469247\"\u003e\u003ccode\u003e523c076\u003c/code\u003e\u003c/a\u003e feat!: drop support for jiti \u0026lt; 2.2.0 (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20016\"\u003e#20016\u003c/a\u003e) (michael faith)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/454a292c95f34dad232411ddac06408e6383bb64\"\u003e\u003ccode\u003e454a292\u003c/code\u003e\u003c/a\u003e feat!: update \u003ccode\u003eeslint:recommended\u003c/code\u003e configuration (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20210\"\u003e#20210\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/4f880ee02992e1bf0e96ebaba679985e2d1295f1\"\u003e\u003ccode\u003e4f880ee\u003c/code\u003e\u003c/a\u003e feat!: remove \u003ccode\u003ev10_*\u003c/code\u003e and inactive \u003ccode\u003eunstable_*\u003c/code\u003e flags (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20225\"\u003e#20225\u003c/a\u003e) (sethamus)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/f18115c363a4ac7671a4c7f30ee13d57ebba330f\"\u003e\u003ccode\u003ef18115c\u003c/code\u003e\u003c/a\u003e feat!: \u003ccode\u003eno-shadow-restricted-names\u003c/code\u003e report \u003ccode\u003eglobalThis\u003c/code\u003e by default (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20027\"\u003e#20027\u003c/a\u003e) (sethamus)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/c6358c31fbd3937b92d89be2618ffdf5a774604e\"\u003e\u003ccode\u003ec6358c3\u003c/code\u003e\u003c/a\u003e feat!: Require Node.js \u003ccode\u003e^20.19.0 || ^22.13.0 || \u0026gt;=24\u003c/code\u003e (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20160\"\u003e#20160\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eFeatures\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/bff9091927811497dbf066b0e3b85ecb37d43822\"\u003e\u003ccode\u003ebff9091\u003c/code\u003e\u003c/a\u003e feat: handle \u003ccode\u003eArray.fromAsync\u003c/code\u003e in \u003ccode\u003earray-callback-return\u003c/code\u003e (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20457\"\u003e#20457\u003c/a\u003e) (Francesco Trotta)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/290c594bb50c439fb71bc75521ee5360daa8c222\"\u003e\u003ccode\u003e290c594\u003c/code\u003e\u003c/a\u003e feat: add \u003ccode\u003eself\u003c/code\u003e to \u003ccode\u003eno-implied-eval\u003c/code\u003e rule (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20468\"\u003e#20468\u003c/a\u003e) (sethamus)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/43677de07ebd6e14bfac40a46ad749ba783c45f2\"\u003e\u003ccode\u003e43677de\u003c/code\u003e\u003c/a\u003e feat: fix handling of function and class expression names in \u003ccode\u003eno-shadow\u003c/code\u003e (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20432\"\u003e#20432\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/84fb885d49ac810e79a9491276b4828b53d913e5\"\u003e\u003ccode\u003e84fb885\u003c/code\u003e\u003c/a\u003e chore: package.json update for \u003ccode\u003e@​eslint/js\u003c/code\u003e release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/1f667344b57c4c09b548d94bcfac1f91b6e5c63d\"\u003e\u003ccode\u003e1f66734\u003c/code\u003e\u003c/a\u003e chore: add \u003ccode\u003eeslint\u003c/code\u003e to \u003ccode\u003epeerDependencies\u003c/code\u003e of \u003ccode\u003e@eslint/js\u003c/code\u003e (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20467\"\u003e#20467\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/f3fbc2f60cbe2c718364feb8c3fc0452c0df3c56\"\u003e\u003ccode\u003ef3fbc2f\u003c/code\u003e\u003c/a\u003e chore: set \u003ccode\u003e@eslint/js\u003c/code\u003e version to 10.0.0 to skip releasing it (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20466\"\u003e#20466\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/b4b3127f8542c599ce2dea804b6582ebc40c993d\"\u003e\u003ccode\u003eb4b3127\u003c/code\u003e\u003c/a\u003e chore: package.json update for \u003ccode\u003e@​eslint/js\u003c/code\u003e release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/0b14059491d830a49b3577931f4f68fbcfce6be5\"\u003e\u003ccode\u003e0b14059\u003c/code\u003e\u003c/a\u003e chore: package.json update for \u003ccode\u003e@​eslint/js\u003c/code\u003e release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/fa31a608901684fbcd9906d1907e66561d16e5aa\"\u003e\u003ccode\u003efa31a60\u003c/code\u003e\u003c/a\u003e feat!: add \u003ccode\u003ename\u003c/code\u003e to configs (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20015\"\u003e#20015\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/1e2cad5f6fa47ed6ed89d2a29798dda926d50990\"\u003e\u003ccode\u003e1e2cad5\u003c/code\u003e\u003c/a\u003e chore: package.json update for \u003ccode\u003e@​eslint/js\u003c/code\u003e release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/454a292c95f34dad232411ddac06408e6383bb64\"\u003e\u003ccode\u003e454a292\u003c/code\u003e\u003c/a\u003e feat!: update \u003ccode\u003eeslint:recommended\u003c/code\u003e configuration (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20210\"\u003e#20210\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/c6358c31fbd3937b92d89be2618ffdf5a774604e\"\u003e\u003ccode\u003ec6358c3\u003c/code\u003e\u003c/a\u003e feat!: Require Node.js \u003ccode\u003e^20.19.0 || ^22.13.0 || \u0026gt;=24\u003c/code\u003e (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20160\"\u003e#20160\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/eslint/eslint/commits/v10.0.1/packages/js\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@typescript-eslint/eslint-plugin` from 8.56.0 to 8.59.4\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases\"\u003e@​typescript-eslint/eslint-plugin's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev8.59.4\u003c/h2\u003e\n\u003ch2\u003e8.59.4 (2026-05-18)\u003c/h2\u003e\n\u003ch3\u003e🩹 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-floating-promises] stack overflow when using recursive types (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12294\"\u003e#12294\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eproject-service:\u003c/strong\u003e throw error cause in \u003ccode\u003egetParsedConfigFileFromTSServer\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12321\"\u003e#12321\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003etypescript-eslint:\u003c/strong\u003e export Compatible* types from typescript-eslint to resolve pnpm TS error (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12340\"\u003e#12340\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e❤️ Thank You\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eEvyatar Daud \u003ca href=\"https://github.com/StyleShit\"\u003e\u003ccode\u003e@​StyleShit\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eKirk Waiblinger \u003ca href=\"https://github.com/kirkwaiblinger\"\u003e\u003ccode\u003e@​kirkwaiblinger\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003elumir\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.4\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003ev8.59.3\u003c/h2\u003e\n\u003ch2\u003e8.59.3 (2026-05-11)\u003c/h2\u003e\n\u003cp\u003eThis was a version bump only, there were no code changes.\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.3\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003ev8.59.2\u003c/h2\u003e\n\u003ch2\u003e8.59.2 (2026-05-04)\u003c/h2\u003e\n\u003ch3\u003e🩹 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unsafe-type-assertion] handle crash on recursive template literal types (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12150\"\u003e#12150\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-deprecated] object destructuring values should be treated as declarations (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12292\"\u003e#12292\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003erule-tester:\u003c/strong\u003e add TypeScript as a peer dependency (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12288\"\u003e#12288\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e❤️ Thank You\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eDariusz Czajkowski\u003c/li\u003e\n\u003cli\u003eDima Barabash\u003c/li\u003e\n\u003cli\u003eKirk Waiblinger \u003ca href=\"https://github.com/kirkwaiblinger\"\u003e\u003ccode\u003e@​kirkwaiblinger\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.2\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003ev8.59.1\u003c/h2\u003e\n\u003ch2\u003e8.59.1 (2026-04-27)\u003c/h2\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/CHANGELOG.md\"\u003e@​typescript-eslint/eslint-plugin's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e8.59.4 (2026-05-18)\u003c/h2\u003e\n\u003ch3\u003e🩹 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-floating-promises] stack overflow when using recursive types (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12294\"\u003e#12294\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e❤️ Thank You\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eEvyatar Daud \u003ca href=\"https://github.com/StyleShit\"\u003e\u003ccode\u003e@​StyleShit\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.4\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003e8.59.3 (2026-05-11)\u003c/h2\u003e\n\u003cp\u003eThis was a version bump only for eslint-plugin to align it with other projects, there were no code changes.\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.3\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003e8.59.2 (2026-05-04)\u003c/h2\u003e\n\u003ch3\u003e🩹 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-deprecated] object destructuring values should be treated as declarations (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12292\"\u003e#12292\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unsafe-type-assertion] handle crash on recursive template literal types (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12150\"\u003e#12150\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e❤️ Thank You\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eDima Barabash\u003c/li\u003e\n\u003cli\u003eKirk Waiblinger \u003ca href=\"https://github.com/kirkwaiblinger\"\u003e\u003ccode\u003e@​kirkwaiblinger\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.2\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003e8.59.1 (2026-04-27)\u003c/h2\u003e\n\u003ch3\u003e🩹 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-condition] treat void as nullish in no-unnecessary-condition (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12241\"\u003e#12241\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-type-arguments] handle instantiation expressions (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12220\"\u003e#12220\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-type-assertion] avoid false positive in logical assignment assertions (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12278\"\u003e#12278\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-type-assertion] preserve phantom type arguments in generic inference (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12269\"\u003e#12269\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-type-assertion] preserve index signatures in undefined unions (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12257\"\u003e#12257\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-type-assertion] fix crash \u0026quot;TypeError: checker.getTypeArguments is not a function\u0026quot; (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12246\"\u003e#12246\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e❤️ Thank You\u003c/h3\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/ca6ca1431b6d18235297a7e29feb5d98f012dff2\"\u003e\u003ccode\u003eca6ca14\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.59.4\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/4302433ae6bf93d4ddc35264ad1b951254758566\"\u003e\u003ccode\u003e4302433\u003c/code\u003e\u003c/a\u003e fix(eslint-plugin): [no-floating-promises] stack overflow when using recursiv...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/10b79f1ba8e98610a3af85152a1b3b406f91e633\"\u003e\u003ccode\u003e10b79f1\u003c/code\u003e\u003c/a\u003e chore(deps): update dependency eslint to v10.4.0 (\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin/issues/12339\"\u003e#12339\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/2a6765d9628dc776f8127c96f088bb807c0bcab2\"\u003e\u003ccode\u003e2a6765d\u003c/code\u003e\u003c/a\u003e chore: clenaup \u003ccode\u003egetAwaitedType\u003c/code\u003e from \u003ccode\u003etypescript.d.ts\u003c/code\u003e (\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin/issues/12302\"\u003e#12302\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/48e13c0261e3cb1bf4f4dfaa462cdb3a56ef7383\"\u003e\u003ccode\u003e48e13c0\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.59.3\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/e26dc8003ababf078aad4df17765ee4cea30644c\"\u003e\u003ccode\u003ee26dc80\u003c/code\u003e\u003c/a\u003e docs: update stale links to latest (\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin/issues/12313\"\u003e#12313\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/44f9625336841a8ee3eb01a9e02e49b1d7b12648\"\u003e\u003ccode\u003e44f9625\u003c/code\u003e\u003c/a\u003e chore(deps): update vitest monorepo to v4.1.5 (\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin/issues/12307\"\u003e#12307\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/2ec35f1760aade4df4c631d76d78c7ed5e136333\"\u003e\u003ccode\u003e2ec35f1\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.59.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/ec3ef25390f7daf5a9ff33a60282bdbbb49ab0f3\"\u003e\u003ccode\u003eec3ef25\u003c/code\u003e\u003c/a\u003e test: make no-useless-empty-export tests fully static (\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin/issues/12260\"\u003e#12260\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/60d0a513870d833617374ff8ea256d86ca3cbbbb\"\u003e\u003ccode\u003e60d0a51\u003c/code\u003e\u003c/a\u003e chore(eslint-plugin): switch auto-generated test cases to hand-written in no-...\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commits/v8.59.4/packages/eslint-plugin\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@typescript-eslint/parser` from 8.56.0 to 8.59.4\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases\"\u003e@​typescript-eslint/parser's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev8.59.4\u003c/h2\u003e\n\u003ch2\u003e8.59.4 (2026-05-18)\u003c/h2\u003e\n\u003ch3\u003e🩹 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-floating-promises] stack overflow when using recursive types (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12294\"\u003e#12294\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eproject-service:\u003c/strong\u003e throw error cause in \u003ccode\u003egetParsedConfigFileFromTSServer\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12321\"\u003e#12321\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003etypescript-eslint:\u003c/strong\u003e export Compatible* types from typescript-eslint to resolve pnpm TS error (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12340\"\u003e#12340\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e❤️ Thank You\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eEvyatar Daud \u003ca href=\"https://github.com/StyleShit\"\u003e\u003ccode\u003e@​StyleShit\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eKirk Waiblinger \u003ca href=\"https://github.com/kirkwaiblinger\"\u003e\u003ccode\u003e@​kirkwaiblinger\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003elumir\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.4\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003ev8.59.3\u003c/h2\u003e\n\u003ch2\u003e8.59.3 (2026-05-11)\u003c/h2\u003e\n\u003cp\u003eThis was a version bump only, there were no code changes.\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.3\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003ev8.59.2\u003c/h2\u003e\n\u003ch2\u003e8.59.2 (2026-05-04)\u003c/h2\u003e\n\u003ch3\u003e🩹 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unsafe-type-assertion] handle crash on recursive template literal types (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12150\"\u003e#12150\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-deprecated] object destructuring values should be treated as declarations (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12292\"\u003e#12292\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003erule-tester:\u003c/strong\u003e add TypeScript as a peer dependency (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12288\"\u003e#12288\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e❤️ Thank You\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eDariusz Czajkowski\u003c/li\u003e\n\u003cli\u003eDima Barabash\u003c/li\u003e\n\u003cli\u003eKirk Waiblinger \u003ca href=\"https://github.com/kirkwaiblinger\"\u003e\u003ccode\u003e@​kirkwaiblinger\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.2\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003ev8.59.1\u003c/h2\u003e\n\u003ch2\u003e8.59.1 (2026-04-27)\u003c/h2\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/parser/CHANGELOG.md\"\u003e@​typescript-eslint/parser's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e8.59.4 (2026-05-18)\u003c/h2\u003e\n\u003cp\u003eThis was a version bump only for parser to align it with other projects, there were no code changes.\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.4\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003e8.59.3 (2026-05-11)\u003c/h2\u003e\n\u003cp\u003eThis was a version bump only for parser to align it with other projects, there were no code changes.\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.3\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003e8.59.2 (2026-05-04)\u003c/h2\u003e\n\u003cp\u003eThis was a version bump only for parser to align it with other projects, there were no code changes.\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.2\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003e8.59.1 (2026-04-27)\u003c/h2\u003e\n\u003cp\u003eThis was a version bump only for parser to align it with other projects, there were no code changes.\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.1\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003e8.59.0 (2026-04-20)\u003c/h2\u003e\n\u003cp\u003eThis was a version bump only for parser to align it with other projects, there were no code changes.\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.0\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003e8.58.2 (2026-04-13)\u003c/h2\u003e\n\u003ch3\u003e🩹 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eremove tsbuildinfo cache file from published packages (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12187\"\u003e#12187\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e❤️ Thank You\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAbhijeet Singh \u003ca href=\"https://github.com/cseas\"\u003e\u003ccode\u003e@​cseas\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/ca6ca1431b6d18235297a7e29feb5d98f012dff2\"\u003e\u003ccode\u003eca6ca14\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.59.4\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/48e13c0261e3cb1bf4f4dfaa462cdb3a56ef7383\"\u003e\u003ccode\u003e48e13c0\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.59.3\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/44f9625336841a8ee3eb01a9e02e49b1d7b12648\"\u003e\u003ccode\u003e44f9625\u003c/code\u003e\u003c/a\u003e chore(deps): update vitest monorepo to v4.1.5 (\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/parser/issues/12307\"\u003e#12307\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/2ec35f1760aade4df4c631d76d78c7ed5e136333\"\u003e\u003ccode\u003e2ec35f1\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.59.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/52457932e5507b5ca01e720a541f3f8d01e09b9d\"\u003e\u003ccode\u003e5245793\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.59.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/ea9ae4f8817873480e3501145059f63e39e8d8a1\"\u003e\u003ccode\u003eea9ae4f\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.59.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/90c2803a4c250e0343598d41e973f95e743bf4ce\"\u003e\u003ccode\u003e90c2803\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.58.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/be6b49a02d68db9bdc8985e7e9e1598700fda2fa\"\u003e\u003ccode\u003ebe6b49a\u003c/code\u003e\u003c/a\u003e fix: remove tsbuildinfo cache file from published packages (\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/parser/issues/12187\"\u003e#12187\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/5311ed312eadf4e238324f2726ae0b1f3f2206e6\"\u003e\u003ccode\u003e5311ed3\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.58.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/493341709fe7d1d6433332b7bd2724e3332c7cdf\"\u003e\u003ccode\u003e4933417\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.58.0\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commits/v8.59.4/packages/parser\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `eslint` from 9.39.2 to 10.4.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/eslint/eslint/releases\"\u003eeslint's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev10.4.0\u003c/h2\u003e\n\u003ch2\u003eFeatures\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/1a45ec596af1dd5f880e6874cb8f24dafb6a7ecf\"\u003e\u003ccode\u003e1a45ec5\u003c/code\u003e\u003c/a\u003e feat: check sequence expressions in \u003ccode\u003efor-direction\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20701\"\u003e#20701\u003c/a\u003e) (kuldeep kumar)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/450040bd89b989b3531824c6be45feb5fe3d936b\"\u003e\u003ccode\u003e450040b\u003c/code\u003e\u003c/a\u003e feat: add \u003ccode\u003eincludeIgnoreFile()\u003c/code\u003e to \u003ccode\u003eeslint/config\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20735\"\u003e#20735\u003c/a\u003e) (Kirk Waiblinger)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eBug Fixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/544c0c3da589166ad8e5d634f35d3d06701c57be\"\u003e\u003ccode\u003e544c0c3\u003c/code\u003e\u003c/a\u003e fix: escape code path DOT labels in debug output (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20866\"\u003e#20866\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/6799431203f2579632d0870f98ba132067f4040c\"\u003e\u003ccode\u003e6799431\u003c/code\u003e\u003c/a\u003e fix: update dependency \u003ccode\u003e@​eslint/config-helpers\u003c/code\u003e to ^0.6.0 (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20850\"\u003e#20850\u003c/a\u003e) (renovate[bot])\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/f078fef5005dceb14fc162aab7c7200e027688dd\"\u003e\u003ccode\u003ef078fef\u003c/code\u003e\u003c/a\u003e fix: handle non-array deprecated rule replacements (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20825\"\u003e#20825\u003c/a\u003e) (xbinaryx)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eDocumentation\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/7e52a7151fb92eec0e0f67fe4e5ddbd1ccce796f\"\u003e\u003ccode\u003e7e52a71\u003c/code\u003e\u003c/a\u003e docs: add mention of \u003ccode\u003e@eslint-react/eslint-plugin\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20869\"\u003e#20869\u003c/a\u003e) (Pavel)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/db3468ba746407d7f286f18f7ea9db6df0e3bc08\"\u003e\u003ccode\u003edb3468b\u003c/code\u003e\u003c/a\u003e docs: tweak wording around ambiguous CJS-vs-ESM config (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20865\"\u003e#20865\u003c/a\u003e) (Kirk Waiblinger)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/90846643ec6e97d447ae0d831fabe6d17b0a998a\"\u003e\u003ccode\u003e9084664\u003c/code\u003e\u003c/a\u003e docs: Update README (GitHub Actions Bot)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/9cc73875046e3c4b8313644cbb1e99e26b36bd3f\"\u003e\u003ccode\u003e9cc7387\u003c/code\u003e\u003c/a\u003e docs: Update README (GitHub Actions Bot)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/3d7b5484407403817aa9071a394d336d8ea96eb5\"\u003e\u003ccode\u003e3d7b548\u003c/code\u003e\u003c/a\u003e docs: Update README (GitHub Actions Bot)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/191ec3c0a3f94ce0f110df761f0b2b8949011ccb\"\u003e\u003ccode\u003e191ec3c\u003c/code\u003e\u003c/a\u003e docs: Update README (GitHub Actions Bot)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eChores\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/6616856f28fa514a30f87b5539fc100d739a94bf\"\u003e\u003ccode\u003e6616856\u003c/code\u003e\u003c/a\u003e chore: upgrade knip to v6 (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20875\"\u003e#20875\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/d13b084a3ad02f926e9addaa35fc383759ea5554\"\u003e\u003ccode\u003ed13b084\u003c/code\u003e\u003c/a\u003e ci: ensure auto-created PRs run CI (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20860\"\u003e#20860\u003c/a\u003e) (lumir)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/e71c7af86dce9acc1d18cb12d2184309f6841594\"\u003e\u003ccode\u003ee71c7af\u003c/code\u003e\u003c/a\u003e ci: bump pnpm/action-setup from 6.0.5 to 6.0.7 (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20862\"\u003e#20862\u003c/a\u003e) (dependabot[bot])\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/d84393dea170f54191fd20c8268b52c81c0ccd99\"\u003e\u003ccode\u003ed84393d\u003c/code\u003e\u003c/a\u003e test: add unit tests for SuppressionsService.applySuppressions() (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20863\"\u003e#20863\u003c/a\u003e) (kuldeep kumar)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/24db8cb8e6f07fba667121777a15b1785486be94\"\u003e\u003ccode\u003e24db8cb\u003c/code\u003e\u003c/a\u003e test: add tests for SuppressionsService.save() (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20802\"\u003e#20802\u003c/a\u003e) (kuldeep kumar)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/2ef0549cac4a9537e4c3a26b9f3edd4c99476bf6\"\u003e\u003ccode\u003e2ef0549\u003c/code\u003e\u003c/a\u003e chore: update ecosystem plugins (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20857\"\u003e#20857\u003c/a\u003e) (github-actions[bot])\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/a4297918d264d229a06cd96051ef9b91c7b86732\"\u003e\u003ccode\u003ea429791\u003c/code\u003e\u003c/a\u003e ci: remove \u003ccode\u003eeslint-webpack-plugin\u003c/code\u003e types integration test (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20668\"\u003e#20668\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/9e37386aa7f2ce220b2ef74a6afbac5f6b3527c5\"\u003e\u003ccode\u003e9e37386\u003c/code\u003e\u003c/a\u003e chore: replace \u003ccode\u003erecast\u003c/code\u003e with range approach in code-sample-minimizer (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20682\"\u003e#20682\u003c/a\u003e) (Copilot)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/0dd1f9ffc9a07704d46e2a4c8d4ccc0d0908b0c0\"\u003e\u003ccode\u003e0dd1f9f\u003c/code\u003e\u003c/a\u003e test: disable warning for \u003ccode\u003evm.constants.USE_MAIN_CONTEXT_DEFAULT_LOADER\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20845\"\u003e#20845\u003c/a\u003e) (Francesco Trotta)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/9da3c7bc92d9579f8db19ecb56e718538d09db2b\"\u003e\u003ccode\u003e9da3c7b\u003c/code\u003e\u003c/a\u003e refactor: remove deprecated \u003ccode\u003emeta.language\u003c/code\u003e and migrate \u003ccode\u003emeta.dialects\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20716\"\u003e#20716\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/2099ed12a0a74c3d7f0808514362af2499b4fe2b\"\u003e\u003ccode\u003e2099ed1\u003c/code\u003e\u003c/a\u003e refactor: add \u003ccode\u003emeta.defaultOptions\u003c/code\u003e to more rules, enable linting (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20800\"\u003e#20800\u003c/a\u003e) (xbinaryx)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/f1dfbc9ca57196de7092e1888cc99427bd6fe06e\"\u003e\u003ccode\u003ef1dfbc9\u003c/code\u003e\u003c/a\u003e chore: update ecosystem plugins (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20836\"\u003e#20836\u003c/a\u003e) (github-actions[bot])\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/c75941390c14728806cd4baef4f6072f6de78318\"\u003e\u003ccode\u003ec759413\u003c/code\u003e\u003c/a\u003e ci: bump pnpm/action-setup from 6.0.3 to 6.0.5 (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20843\"\u003e#20843\u003c/a\u003e) (dependabot[bot])\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/5b817d6fdc9ae2c35b528dc662b2eca8f40f64aa\"\u003e\u003ccode\u003e5b817d6\u003c/code\u003e\u003c/a\u003e test: add unit tests for lib/shared/ast-utils (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20838\"\u003e#20838\u003c/a\u003e) (kuldeep kumar)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/1c13ae3934c198c494e5958fa3a68b33244ff06a\"\u003e\u003ccode\u003e1c13ae3\u003c/code\u003e\u003c/a\u003e test: add unit tests for lib/shared/severity (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20835\"\u003e#20835\u003c/a\u003e) (kuldeep kumar)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev10.3.0\u003c/h2\u003e\n\u003ch2\u003eFeatures\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/379571a975f2b24d88037b9de2e72ec61d004130\"\u003e\u003ccode\u003e379571a\u003c/code\u003e\u003c/a\u003e feat: add suggestions for no-unused-private-class-members (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20773\"\u003e#20773\u003c/a\u003e) (sethamus)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eBug Fixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/b6ae5cf07b9b51802367539cb24b245b61eaa37c\"\u003e\u003ccode\u003eb6ae5cf\u003c/code\u003e\u003c/a\u003e fix: handle unavailable require cache (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20812\"\u003e#20812\u003c/a\u003e) (Simon Podlipsky)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/6fb3685bcbe9a6f72fd7dfb9129686b6fb96b0bd\"\u003e\u003ccode\u003e6fb3685\u003c/code\u003e\u003c/a\u003e fix: rule suggestions cause continuation in class body (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20787\"\u003e#20787\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eDocumentation\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/32cc7ab4ec653ce89da92deb5c40a9f4fc707fe5\"\u003e\u003ccode\u003e32cc7ab\u003c/code\u003e\u003c/a\u003e docs: fix typos in docs and comments (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20809\"\u003e#20809\u003c/a\u003e) (Tanuj Kanti)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/7f479376a2fa463d823ab762db6bb37ce8d2ee8f\"\u003e\u003ccode\u003e7f47937\u003c/code\u003e\u003c/a\u003e docs: Update README (GitHub Actions Bot)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eChores\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/d32235ec19ceea211fa86452afa383ca05f5c2f9\"\u003e\u003ccode\u003ed32235e\u003c/code\u003e\u003c/a\u003e ci: use pnpm in \u003ccode\u003eeslint-flat-config-utils\u003c/code\u003e type integration test (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20826\"\u003e#20826\u003c/a\u003e) (Francesco Trotta)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/3ffb14ea517de750ed1181579ef844af342e4096\"\u003e\u003ccode\u003e3ffb14e\u003c/code\u003e\u003c/a\u003e chore: clean up typos in comments and JSDoc (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20821\"\u003e#20821\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/452c4010c07dc2e36fe6ec6a8c48298878e86887\"\u003e\u003ccode\u003e452c401\u003c/code\u003e\u003c/a\u003e 10.4.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/b6417e8b55c9525070d6e168b485ce6ff21688ed\"\u003e\u003ccode\u003eb6417e8\u003c/code\u003e\u003c/a\u003e Build: changelog update for 10.4.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/6616856f28fa514a30f87b5539fc100d739a94bf\"\u003e\u003ccode\u003e6616856\u003c/code\u003e\u003c/a\u003e chore: upgrade knip to v6 (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20875\"\u003e#20875\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/d13b084a3ad02f926e9addaa35fc383759ea5554\"\u003e\u003ccode\u003ed13b084\u003c/code\u003e\u003c/a\u003e ci: ensure auto-created PRs run CI (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20860\"\u003e#20860\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/7e52a7151fb92eec0e0f67fe4e5ddbd1ccce796f\"\u003e\u003ccode\u003e7e52a71\u003c/code\u003e\u003c/a\u003e docs: add mention of \u003ccode\u003e@eslint-react/eslint-plugin\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20869\"\u003e#20869\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/e71c7af86dce9acc1d18cb12d2184309f6841594\"\u003e\u003ccode\u003ee71c7af\u003c/code\u003e\u003c/a\u003e ci: bump pnpm/action-setup from 6.0.5 to 6.0.7 (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20862\"\u003e#20862\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/544c0c3da589166ad8e5d634f35d3d06701c57be\"\u003e\u003ccode\u003e544c0c3\u003c/code\u003e\u003c/a\u003e fix: escape code path DOT labels in debug output (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20866\"\u003e#20866\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/db3468ba746407d7f286f18f7ea9db6df0e3bc08\"\u003e\u003ccode\u003edb3468b\u003c/code\u003e\u003c/a\u003e docs: tweak wording around ambiguous CJS-vs-ESM config (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20865\"\u003e#20865\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/d84393dea170f54191fd20c8268b52c81c0ccd99\"\u003e\u003ccode\u003ed84393d\u003c/code\u003e\u003c/a\u003e test: add unit tests for SuppressionsService.applySuppressions() (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20863\"\u003e#20863\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/90846643ec6e97d447ae0d831fabe6d17b0a998a\"\u003e\u003ccode\u003e9084664\u003c/code\u003e\u003c/a\u003e docs: Update README\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/eslint/eslint/compare/v9.39.2...v10.4.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `eslint-plugin-react-hooks` from 7.0.1 to 7.1.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/facebook/react/releases\"\u003eeslint-plugin-react-hooks's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eeslint-plugin-react-hooks@7.1.1 (April 17, 2026)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eNote:\u003c/strong\u003e 7.1.0 accidentally removed the \u003ccode\u003ecomponent-hook-factories\u003c/code\u003e rule, causing errors for users who referenced it in their ESLint config. This is now fixed.\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdd deprecated no-op \u003ccode\u003ecomponent-hook-factories\u003c/code\u003e rule for backwards compatibility. (\u003ca href=\"https://github.com/mofeiZ\"\u003e\u003ccode\u003e@​mofeiZ\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/36307\"\u003e#36307\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eeslint-plugin-react-hooks@7.1.0 (April 16, 2026)\u003c/h2\u003e\n\u003cp\u003eThis release adds ESLint v10 support, improves performance by skipping compilation for non-React files, and includes compiler lint improvements including better \u003ccode\u003eset-state-in-effect\u003c/code\u003e detection, improved ref validation, and more helpful error reporting.\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdd ESLint v10 support. (\u003ca href=\"https://github.com/azat-io\"\u003e\u003ccode\u003e@​azat-io\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/35720\"\u003e#35720\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSkip compilation for non-React files to improve performance. (\u003ca href=\"https://github.com/josephsavona\"\u003e\u003ccode\u003e@​josephsavona\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/35589\"\u003e#35589\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix exhaustive deps bug with Flow type casting. (\u003ca href=\"https://github.com/jorge-cab\"\u003e\u003ccode\u003e@​jorge-cab\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/35691\"\u003e#35691\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix \u003ccode\u003euseEffectEvent\u003c/code\u003e checks in component syntax. (\u003ca href=\"https://github.com/jbrown215\"\u003e\u003ccode\u003e@​jbrown215\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/35041\"\u003e#35041\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eImproved \u003ccode\u003eset-state-in-effect\u003c/code\u003e validation with fewer false negatives. (\u003ca href=\"https://github.com/jorge-cab\"\u003e\u003ccode\u003e@​jorge-cab\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/35134\"\u003e#35134\u003c/a\u003e, \u003ca href=\"https://github.com/josephsavona\"\u003e\u003ccode\u003e@​josephsavona\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/35147\"\u003e#35147\u003c/a\u003e, \u003ca href=\"https://github.com/jackpope\"\u003e\u003ccode\u003e@​jackpope\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/35214\"\u003e#35214\u003c/a\u003e, \u003ca href=\"https://github.com/chesnokov-tony\"\u003e\u003ccode\u003e@​chesnokov-tony\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/35419\"\u003e#35419\u003c/a\u003e, \u003ca href=\"https://github.com/jsleitor\"\u003e\u003ccode\u003e@​jsleitor\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/36107\"\u003e#36107\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eImproved ref validation for non-mutating functions and event handler props. (\u003ca href=\"https://github.com/josephsavona\"\u003e\u003ccode\u003e@​josephsavona\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/35893\"\u003e#35893\u003c/a\u003e, \u003ca href=\"https://github.com/kolvian\"\u003e\u003ccode\u003e@​kolvian\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/35062\"\u003e#35062\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCompiler now reports all errors instead of stopping at the first. (\u003ca href=\"https://github.com/josephsavona\"\u003e\u003ccode\u003e@​josephsavona\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/35873\"\u003e#35873\u003c/a\u003e–\u003ca href=\"https://redirect.github.com/facebook/react/pull/35884\"\u003e#35884\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eImproved source locations and error display in compiler diagnostics. (\u003ca href=\"https://github.com/nathanmarks\"\u003e\u003ccode\u003e@​nathanmarks\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/35348\"\u003e#35348\u003c/a\u003e, \u003ca href=\"https://github.com/josephsavona\"\u003e\u003ccode\u003e@​josephsavona\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/34963\"\u003e#34963\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/facebook/react/blob/main/packages/eslint-plugin-react-hooks/CHANGELOG.md\"\u003eeslint-plugin-react-hooks's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e7.1.1\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eNote:\u003c/strong\u003e 7.1.0 accidentally removed the \u003ccode\u003ecomponent-hook-factories\u003c/code\u003e rule, causing errors for users who referenced it in their ESLint config. This is now fixed.\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdd deprecated no-op \u003ccode\u003ecomponent-hook-factories\u003c/code\u003e rule for backwards compatibility. (\u003ca href=\"https://github.com/mofeiZ\"\u003e\u003ccode\u003e@​mofeiZ\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/36307\"\u003e#36307\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e7.1.0\u003c/h2\u003e\n\u003cp\u003eThis release adds ESLint v10 support, improves performance by skipping compilation for non-React files, and includes compiler lint improvements including better \u003ccode\u003eset-state-in-effect\u003c/code\u003e detection, improved ref validation, and more helpful error reporting.\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdd ESLint v10 support. (\u003ca href=\"https://github.com/azat-io\"\u003e\u003ccode\u003e@​azat-io\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/35720\"\u003e#35720\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSkip compilation for non-React files to improve performance. (\u003ca href=\"https://github.com/josephsavona\"\u003e\u003ccode\u003e@​josephsavona\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redire...\n\n_Description has been truncated_","html_url":"https://github.com/sowmyagsrohini2032-blip/Portfolio-/pull/2","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/sowmyagsrohini2032-blip%2FPortfolio-/issues/2","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/2/packages"},{"uuid":"4514530127","node_id":"PR_kwDOSVtFqM7e6vWk","number":4,"state":"closed","title":"deps(deps): bump the all-dependencies group across 1 directory with 68 updates","user":"dependabot[bot]","labels":[],"assignees":[],"locked":false,"comments_count":2,"pull_request":true,"closed_at":"2026-06-01T09:04:08.000Z","author_association":null,"state_reason":null,"created_at":"2026-05-25T05:34:57.000Z","updated_at":"2026-06-01T09:04:10.000Z","time_to_close":617351,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"deps(deps): bump","group_name":"all-dependencies","update_count":68,"packages":[{"name":"@eslint-react/eslint-plugin","old_version":"2.13.0","new_version":"5.8.5","repository_url":"https://github.com/Rel1cx/eslint-react"},{"name":"@eslint/js","old_version":"9.39.2","new_version":"10.0.1","repository_url":"https://github.com/eslint/eslint"},{"name":"@typescript-eslint/eslint-plugin","old_version":"8.56.0","new_version":"8.59.4","repository_url":"https://github.com/typescript-eslint/typescript-eslint"},{"name":"@typescript-eslint/parser","old_version":"8.56.0","new_version":"8.59.4","repository_url":"https://github.com/typescript-eslint/typescript-eslint"},{"name":"eslint","old_version":"9.39.2","new_version":"10.4.0","repository_url":"https://github.com/eslint/eslint"},{"name":"eslint-plugin-react-hooks","old_version":"7.0.1","new_version":"7.1.1","repository_url":"https://github.com/facebook/react"},{"name":"globals","old_version":"17.3.0","new_version":"17.6.0","repository_url":"https://github.com/sindresorhus/globals"},{"name":"graphql","old_version":"16.12.0","new_version":"16.14.0","repository_url":"https://github.com/graphql/graphql-js"},{"name":"happy-dom","old_version":"20.6.2","new_version":"20.9.0","repository_url":"https://github.com/capricorn86/happy-dom"},{"name":"jiti","old_version":"2.6.1","new_version":"2.7.0","repository_url":"https://github.com/unjs/jiti"},{"name":"lint-staged","old_version":"16.2.7","new_version":"17.0.5","repository_url":"https://github.com/lint-staged/lint-staged"},{"name":"mermaid","old_version":"11.12.3","new_version":"11.15.0","repository_url":"https://github.com/mermaid-js/mermaid"},{"name":"prettier","old_version":"3.8.1","new_version":"3.8.3","repository_url":"https://github.com/prettier/prettier"},{"name":"react","old_version":"19.2.4","new_version":"19.2.6","repository_url":"https://github.com/facebook/react"},{"name":"@types/react","old_version":"19.2.14","new_version":"19.2.15","repository_url":"https://github.com/DefinitelyTyped/DefinitelyTyped"},{"name":"typescript","old_version":"5.9.3","new_version":"6.0.3","repository_url":"https://github.com/microsoft/TypeScript"},{"name":"typescript-eslint","old_version":"8.56.0","new_version":"8.59.4","repository_url":"https://github.com/typescript-eslint/typescript-eslint"},{"name":"typescript-language-server","old_version":"5.1.3","new_version":"5.3.0","repository_url":"https://github.com/typescript-language-server/typescript-language-server"},{"name":"vite","old_version":"7.3.1","new_version":"8.0.14","repository_url":"https://github.com/vitejs/vite"},{"name":"vitepress","old_version":"2.0.0-alpha.16","new_version":"2.0.0-alpha.17","repository_url":"https://github.com/vuejs/vitepress"},{"name":"vitepress-plugin-llms","old_version":"1.11.0","new_version":"1.13.0","repository_url":"https://github.com/okineadev/vitepress-plugin-llms"},{"name":"vitest","old_version":"4.0.18","new_version":"4.1.7","repository_url":"https://github.com/vitest-dev/vitest"},{"name":"wrangler","old_version":"4.66.0","new_version":"4.94.0","repository_url":"https://github.com/cloudflare/workers-sdk"},{"name":"@ai-sdk/openai","old_version":"3.0.29","new_version":"3.0.65","repository_url":"https://github.com/vercel/ai"},{"name":"@better-auth/passkey","old_version":"1.4.18","new_version":"1.6.11","repository_url":"https://github.com/better-auth/better-auth"},{"name":"@better-auth/stripe","old_version":"1.4.18","new_version":"1.6.11","repository_url":"https://github.com/better-auth/better-auth"},{"name":"@trpc/server","old_version":"11.10.0","new_version":"11.17.0","repository_url":"https://github.com/trpc/trpc"},{"name":"ai","old_version":"6.0.91","new_version":"6.0.191","repository_url":"https://github.com/vercel/ai"},{"name":"better-auth","old_version":"1.4.18","new_version":"1.6.11","repository_url":"https://github.com/better-auth/better-auth"},{"name":"drizzle-orm","old_version":"0.45.1","new_version":"0.45.2","repository_url":"https://github.com/drizzle-team/drizzle-orm"},{"name":"postgres","old_version":"3.4.8","new_version":"3.4.9","repository_url":"https://github.com/porsager/postgres"},{"name":"resend","old_version":"6.9.2","new_version":"6.12.3","repository_url":"https://github.com/resend/resend-node"},{"name":"stripe","old_version":"20.3.1","new_version":"22.1.1","repository_url":"https://github.com/stripe/stripe-node"},{"name":"@cloudflare/workers-types","old_version":"4.20260218.0","new_version":"4.20260525.1","repository_url":"https://github.com/cloudflare/workerd"},{"name":"@types/bun","old_version":"1.3.9","new_version":"1.3.14","repository_url":"https://github.com/DefinitelyTyped/DefinitelyTyped"},{"name":"hono","old_version":"4.11.10","new_version":"4.12.23","repository_url":"https://github.com/honojs/hono"},{"name":"@tanstack/react-query","old_version":"5.90.21","new_version":"5.100.14","repository_url":"https://github.com/TanStack/query"},{"name":"@tanstack/react-router","old_version":"1.161.1","new_version":"1.170.8","repository_url":"https://github.com/TanStack/router"},{"name":"@trpc/client","old_version":"11.10.0","new_version":"11.17.0","repository_url":"https://github.com/trpc/trpc"},{"name":"@trpc/tanstack-react-query","old_version":"11.10.0","new_version":"11.17.0","repository_url":"https://github.com/trpc/trpc"},{"name":"jotai","old_version":"2.17.1","new_version":"2.20.0","repository_url":"https://github.com/pmndrs/jotai"},{"name":"jotai-effect","old_version":"2.2.3","new_version":"2.3.1","repository_url":"https://github.com/jotaijs/jotai-effect"},{"name":"lucide-react","old_version":"0.574.0","new_version":"1.16.0","repository_url":"https://github.com/lucide-icons/lucide"},{"name":"react-dom","old_version":"19.2.4","new_version":"19.2.6","repository_url":"https://github.com/facebook/react"},{"name":"react-error-boundary","old_version":"6.1.1","new_version":"6.1.2","repository_url":"https://github.com/bvaughn/react-error-boundary"},{"name":"tailwind-merge","old_version":"3.4.1","new_version":"3.6.0","repository_url":"https://github.com/dcastil/tailwind-merge"},{"name":"@tailwindcss/postcss","old_version":"4.2.0","new_version":"4.3.0","repository_url":"https://github.com/tailwindlabs/tailwindcss"},{"name":"@tanstack/react-query-devtools","old_version":"5.91.3","new_version":"5.100.14","repository_url":"https://github.com/TanStack/query"},{"name":"@tanstack/react-router-devtools","old_version":"1.161.1","new_version":"1.167.0","repository_url":"https://github.com/TanStack/router"},{"name":"@tanstack/router-plugin","old_version":"1.161.1","new_version":"1.168.11","repository_url":"https://github.com/TanStack/router"},{"name":"@types/node","old_version":"25.2.3","new_version":"25.9.1","repository_url":"https://github.com/DefinitelyTyped/DefinitelyTyped"},{"name":"@vitejs/plugin-react","old_version":"5.1.4","new_version":"6.0.2","repository_url":"https://github.com/vitejs/vite-plugin-react"},{"name":"@vitejs/plugin-react-swc","old_version":"4.2.3","new_version":"4.3.1","repository_url":"https://github.com/vitejs/vite-plugin-react"},{"name":"autoprefixer","old_version":"10.4.24","new_version":"10.5.0","repository_url":"https://github.com/postcss/autoprefixer"},{"name":"globby","old_version":"16.1.1","new_version":"16.2.0","repository_url":"https://github.com/sindresorhus/globby"},{"name":"@react-email/components","old_version":"1.0.8","new_version":"1.0.12","repository_url":"https://github.com/resend/react-email"},{"name":"@react-email/render","old_version":"2.0.4","new_version":"2.0.8","repository_url":"https://github.com/resend/react-email"},{"name":"@react-email/preview-server","old_version":"5.2.8","new_version":"5.2.10","repository_url":"https://github.com/resend/react-email"},{"name":"react-email","old_version":"5.2.8","new_version":"6.3.2","repository_url":"https://github.com/resend/react-email"},{"name":"@astrojs/react","old_version":"4.4.2","new_version":"5.0.5","repository_url":"https://github.com/withastro/astro"},{"name":"astro","old_version":"5.17.2","new_version":"6.3.7","repository_url":"https://github.com/withastro/astro"},{"name":"dotenv","old_version":"17.3.1","new_version":"17.4.2","repository_url":"https://github.com/motdotla/dotenv"},{"name":"drizzle-kit","old_version":"0.31.9","new_version":"0.31.10","repository_url":"https://github.com/drizzle-team/drizzle-orm"},{"name":"@modelcontextprotocol/sdk","old_version":"1.26.0","new_version":"1.29.0","repository_url":"https://github.com/modelcontextprotocol/typescript-sdk"},{"name":"got","old_version":"14.6.6","new_version":"15.0.5","repository_url":"https://github.com/sindresorhus/got"}],"path":null,"ecosystem":"npm"},"body":"Bumps the all-dependencies group with 65 updates in the / directory:\n\n| Package | From | To |\n| --- | --- | --- |\n| [@eslint-react/eslint-plugin](https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin) | `2.13.0` | `5.8.5` |\n| [@eslint/js](https://github.com/eslint/eslint/tree/HEAD/packages/js) | `9.39.2` | `10.0.1` |\n| [@typescript-eslint/eslint-plugin](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin) | `8.56.0` | `8.59.4` |\n| [@typescript-eslint/parser](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/parser) | `8.56.0` | `8.59.4` |\n| [eslint](https://github.com/eslint/eslint) | `9.39.2` | `10.4.0` |\n| [eslint-plugin-react-hooks](https://github.com/facebook/react/tree/HEAD/packages/eslint-plugin-react-hooks) | `7.0.1` | `7.1.1` |\n| [globals](https://github.com/sindresorhus/globals) | `17.3.0` | `17.6.0` |\n| [graphql](https://github.com/graphql/graphql-js) | `16.12.0` | `16.14.0` |\n| [happy-dom](https://github.com/capricorn86/happy-dom) | `20.6.2` | `20.9.0` |\n| [jiti](https://github.com/unjs/jiti) | `2.6.1` | `2.7.0` |\n| [lint-staged](https://github.com/lint-staged/lint-staged) | `16.2.7` | `17.0.5` |\n| [mermaid](https://github.com/mermaid-js/mermaid) | `11.12.3` | `11.15.0` |\n| [prettier](https://github.com/prettier/prettier) | `3.8.1` | `3.8.3` |\n| [react](https://github.com/facebook/react/tree/HEAD/packages/react) | `19.2.4` | `19.2.6` |\n| [@types/react](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/react) | `19.2.14` | `19.2.15` |\n| [typescript](https://github.com/microsoft/TypeScript) | `5.9.3` | `6.0.3` |\n| [typescript-eslint](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/typescript-eslint) | `8.56.0` | `8.59.4` |\n| [typescript-language-server](https://github.com/typescript-language-server/typescript-language-server) | `5.1.3` | `5.3.0` |\n| [vite](https://github.com/vitejs/vite/tree/HEAD/packages/vite) | `7.3.1` | `8.0.14` |\n| [vitepress](https://github.com/vuejs/vitepress) | `2.0.0-alpha.16` | `2.0.0-alpha.17` |\n| [vitepress-plugin-llms](https://github.com/okineadev/vitepress-plugin-llms) | `1.11.0` | `1.13.0` |\n| [vitest](https://github.com/vitest-dev/vitest/tree/HEAD/packages/vitest) | `4.0.18` | `4.1.7` |\n| [wrangler](https://github.com/cloudflare/workers-sdk/tree/HEAD/packages/wrangler) | `4.66.0` | `4.94.0` |\n| [@ai-sdk/openai](https://github.com/vercel/ai/tree/HEAD/packages/openai) | `3.0.29` | `3.0.65` |\n| [@better-auth/passkey](https://github.com/better-auth/better-auth/tree/HEAD/packages/passkey) | `1.4.18` | `1.6.11` |\n| [@better-auth/stripe](https://github.com/better-auth/better-auth/tree/HEAD/packages/stripe) | `1.4.18` | `1.6.11` |\n| [@trpc/server](https://github.com/trpc/trpc/tree/HEAD/packages/server) | `11.10.0` | `11.17.0` |\n| [ai](https://github.com/vercel/ai/tree/HEAD/packages/ai) | `6.0.91` | `6.0.191` |\n| [better-auth](https://github.com/better-auth/better-auth/tree/HEAD/packages/better-auth) | `1.4.18` | `1.6.11` |\n| [drizzle-orm](https://github.com/drizzle-team/drizzle-orm) | `0.45.1` | `0.45.2` |\n| [postgres](https://github.com/porsager/postgres) | `3.4.8` | `3.4.9` |\n| [resend](https://github.com/resend/resend-node) | `6.9.2` | `6.12.3` |\n| [stripe](https://github.com/stripe/stripe-node) | `20.3.1` | `22.1.1` |\n| [@cloudflare/workers-types](https://github.com/cloudflare/workerd) | `4.20260218.0` | `4.20260525.1` |\n| [@types/bun](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/bun) | `1.3.9` | `1.3.14` |\n| [hono](https://github.com/honojs/hono) | `4.11.10` | `4.12.23` |\n| [@tanstack/react-query](https://github.com/TanStack/query/tree/HEAD/packages/react-query) | `5.90.21` | `5.100.14` |\n| [@tanstack/react-router](https://github.com/TanStack/router/tree/HEAD/packages/react-router) | `1.161.1` | `1.170.8` |\n| [@trpc/client](https://github.com/trpc/trpc/tree/HEAD/packages/client) | `11.10.0` | `11.17.0` |\n| [@trpc/tanstack-react-query](https://github.com/trpc/trpc/tree/HEAD/packages/tanstack-react-query) | `11.10.0` | `11.17.0` |\n| [jotai](https://github.com/pmndrs/jotai) | `2.17.1` | `2.20.0` |\n| [jotai-effect](https://github.com/jotaijs/jotai-effect) | `2.2.3` | `2.3.1` |\n| [lucide-react](https://github.com/lucide-icons/lucide/tree/HEAD/packages/lucide-react) | `0.574.0` | `1.16.0` |\n| [react-dom](https://github.com/facebook/react/tree/HEAD/packages/react-dom) | `19.2.4` | `19.2.6` |\n| [react-error-boundary](https://github.com/bvaughn/react-error-boundary) | `6.1.1` | `6.1.2` |\n| [tailwind-merge](https://github.com/dcastil/tailwind-merge) | `3.4.1` | `3.6.0` |\n| [@tailwindcss/postcss](https://github.com/tailwindlabs/tailwindcss/tree/HEAD/packages/@tailwindcss-postcss) | `4.2.0` | `4.3.0` |\n| [@tanstack/react-query-devtools](https://github.com/TanStack/query/tree/HEAD/packages/react-query-devtools) | `5.91.3` | `5.100.14` |\n| [@tanstack/react-router-devtools](https://github.com/TanStack/router/tree/HEAD/packages/react-router-devtools) | `1.161.1` | `1.167.0` |\n| [@tanstack/router-plugin](https://github.com/TanStack/router/tree/HEAD/packages/router-plugin) | `1.161.1` | `1.168.11` |\n| [@types/node](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/node) | `25.2.3` | `25.9.1` |\n| [@vitejs/plugin-react](https://github.com/vitejs/vite-plugin-react/tree/HEAD/packages/plugin-react) | `5.1.4` | `6.0.2` |\n| [@vitejs/plugin-react-swc](https://github.com/vitejs/vite-plugin-react/tree/HEAD/packages/plugin-react-swc) | `4.2.3` | `4.3.1` |\n| [autoprefixer](https://github.com/postcss/autoprefixer) | `10.4.24` | `10.5.0` |\n| [globby](https://github.com/sindresorhus/globby) | `16.1.1` | `16.2.0` |\n| [@react-email/components](https://github.com/resend/react-email/tree/HEAD/packages/components) | `1.0.8` | `1.0.12` |\n| [@react-email/render](https://github.com/resend/react-email/tree/HEAD/packages/render) | `2.0.4` | `2.0.8` |\n| [@react-email/preview-server](https://github.com/resend/react-email/tree/HEAD/packages/preview-server) | `5.2.8` | `5.2.10` |\n| [react-email](https://github.com/resend/react-email/tree/HEAD/packages/react-email) | `5.2.8` | `6.3.2` |\n| [@astrojs/react](https://github.com/withastro/astro/tree/HEAD/packages/integrations/react) | `4.4.2` | `5.0.5` |\n| [astro](https://github.com/withastro/astro/tree/HEAD/packages/astro) | `5.17.2` | `6.3.7` |\n| [dotenv](https://github.com/motdotla/dotenv) | `17.3.1` | `17.4.2` |\n| [drizzle-kit](https://github.com/drizzle-team/drizzle-orm) | `0.31.9` | `0.31.10` |\n| [@modelcontextprotocol/sdk](https://github.com/modelcontextprotocol/typescript-sdk) | `1.26.0` | `1.29.0` |\n| [got](https://github.com/sindresorhus/got) | `14.6.6` | `15.0.5` |\n\n\nUpdates `@eslint-react/eslint-plugin` from 2.13.0 to 5.8.5\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/Rel1cx/eslint-react/releases\"\u003e@​eslint-react/eslint-plugin's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev5.8.5 (2026-05-24)\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003ch3\u003e📝 Documentation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdded rule implementation patterns guide (\u003ccode\u003edocs/rule-implementation-patterns.md\u003c/code\u003e) and term-based rule patterns guide (\u003ccode\u003edocs/term-based-rule-patterns.md\u003c/code\u003e).\u003c/li\u003e\n\u003cli\u003eLowered minimum TypeScript version requirement from \u003ccode\u003e5.1.0\u003c/code\u003e to \u003ccode\u003e5.0.0\u003c/code\u003e across README and documentation.\u003c/li\u003e\n\u003cli\u003eFixed textlint war-metaphor warnings and refined \u003ccode\u003e.textlintrc.json\u003c/code\u003e patterns.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🏗️ Internal\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdjusted formatting across configuration and script files (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1795\"\u003e#1795\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFixed a typo in the CI test workflow step.\u003c/li\u003e\n\u003cli\u003eAdded regression tests for oxc issues compatibility verification (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1796\"\u003e#1796\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eBumped dependencies across workspace packages:\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e@effect/language-service\u003c/code\u003e to \u003ccode\u003e^0.86.2\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@takumi-rs/image-response\u003c/code\u003e to \u003ccode\u003e^1.3.0\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@tsconfig/vite-react\u003c/code\u003e to \u003ccode\u003e^8.0.6\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@types/node\u003c/code\u003e to \u003ccode\u003e^25.9.1\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@types/react\u003c/code\u003e to \u003ccode\u003e^19.2.15\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eeslint-plugin-package-json\u003c/code\u003e to \u003ccode\u003e^1.1.0\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003efumadocs-core\u003c/code\u003e to \u003ccode\u003e^16.9.0\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003efumadocs-mdx\u003c/code\u003e to \u003ccode\u003e^15.0.7\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003efumadocs-ui\u003c/code\u003e to \u003ccode\u003e^16.9.0\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003elru-cache\u003c/code\u003e to \u003ccode\u003e11.5.0\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003enx\u003c/code\u003e to \u003ccode\u003e^22.7.3\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003epostcss\u003c/code\u003e to \u003ccode\u003e^8.5.15\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003evite\u003c/code\u003e to \u003ccode\u003e^8.0.14\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003evitest\u003c/code\u003e to \u003ccode\u003e^4.1.7\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003epnpm\u003c/code\u003e to \u003ccode\u003e11.2.1\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eAttestation\u003c/h2\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/attestations/28553042\"\u003ehttps://github.com/Rel1cx/eslint-react/attestations/28553042\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev5.8.4 (2026-05-22)\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003ch3\u003e📝 Documentation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eWebsite\u003c/strong\u003e: Restructured the FAQ page from an accordion layout to standard headings for better SEO, accessibility, and direct anchor linking.\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eWebsite\u003c/strong\u003e: Replaced the homepage \u003ccode\u003eHint\u003c/code\u003e popover with a direct link to the FAQ anchor explaining the project's human/LLM collaboration policy.\u003c/li\u003e\n\u003cli\u003eAdded a new \u003cstrong\u003e\u0026quot;What does 90% human-written mean?\u0026quot;\u003c/strong\u003e section to the FAQ.\u003c/li\u003e\n\u003cli\u003eUpdated documentation for \u003ccode\u003eisClassComponent\u003c/code\u003e and \u003ccode\u003eJsxConfig\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003eRemoved outdated documentation files.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🏗️ Internal\u003c/h3\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/Rel1cx/eslint-react/blob/main/CHANGELOG.md\"\u003e@​eslint-react/eslint-plugin's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev5.8.5 (2026-05-24)\u003c/h2\u003e\n\u003ch3\u003e📝 Documentation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdded rule implementation patterns guide (\u003ccode\u003edocs/rule-implementation-patterns.md\u003c/code\u003e) and term-based rule patterns guide (\u003ccode\u003edocs/term-based-rule-patterns.md\u003c/code\u003e).\u003c/li\u003e\n\u003cli\u003eLowered minimum TypeScript version requirement from \u003ccode\u003e5.1.0\u003c/code\u003e to \u003ccode\u003e5.0.0\u003c/code\u003e across README and documentation.\u003c/li\u003e\n\u003cli\u003eFixed textlint war-metaphor warnings and refined \u003ccode\u003e.textlintrc.json\u003c/code\u003e patterns.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🏗️ Internal\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdjusted formatting across configuration and script files (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1795\"\u003e#1795\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFixed a typo in the CI test workflow step.\u003c/li\u003e\n\u003cli\u003eAdded regression tests for oxc issues compatibility verification (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1796\"\u003e#1796\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eBumped dependencies across workspace packages:\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e@effect/language-service\u003c/code\u003e to \u003ccode\u003e^0.86.2\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@takumi-rs/image-response\u003c/code\u003e to \u003ccode\u003e^1.3.0\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@tsconfig/vite-react\u003c/code\u003e to \u003ccode\u003e^8.0.6\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@types/node\u003c/code\u003e to \u003ccode\u003e^25.9.1\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@types/react\u003c/code\u003e to \u003ccode\u003e^19.2.15\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eeslint-plugin-package-json\u003c/code\u003e to \u003ccode\u003e^1.1.0\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003efumadocs-core\u003c/code\u003e to \u003ccode\u003e^16.9.0\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003efumadocs-mdx\u003c/code\u003e to \u003ccode\u003e^15.0.7\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003efumadocs-ui\u003c/code\u003e to \u003ccode\u003e^16.9.0\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003elru-cache\u003c/code\u003e to \u003ccode\u003e11.5.0\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003enx\u003c/code\u003e to \u003ccode\u003e^22.7.3\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003epostcss\u003c/code\u003e to \u003ccode\u003e^8.5.15\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003evite\u003c/code\u003e to \u003ccode\u003e^8.0.14\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003evitest\u003c/code\u003e to \u003ccode\u003e^4.1.7\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003epnpm\u003c/code\u003e to \u003ccode\u003e11.2.1\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev5.8.4 (2026-05-22)\u003c/h2\u003e\n\u003ch3\u003e📝 Documentation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eWebsite\u003c/strong\u003e: Restructured the FAQ page from an accordion layout to standard headings for better SEO, accessibility, and direct anchor linking.\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eWebsite\u003c/strong\u003e: Replaced the homepage \u003ccode\u003eHint\u003c/code\u003e popover with a direct link to the FAQ anchor explaining the project's human/LLM collaboration policy.\u003c/li\u003e\n\u003cli\u003eAdded a new \u003cstrong\u003e\u0026quot;What does 90% human-written mean?\u0026quot;\u003c/strong\u003e section to the FAQ.\u003c/li\u003e\n\u003cli\u003eUpdated documentation for \u003ccode\u003eisClassComponent\u003c/code\u003e and \u003ccode\u003eJsxConfig\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003eRemoved outdated documentation files.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🏗️ Internal\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003e\u003ccode\u003ecore\u003c/code\u003e\u003c/strong\u003e: Simplified \u003ccode\u003eisClassComponent\u003c/code\u003e by removing the \u003ccode\u003econtext\u003c/code\u003e parameter and replacing \u003ccode\u003eisClassComponentLoose\u003c/code\u003e with the simplified function.\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003e\u003ccode\u003eeslint-plugin-react-x\u003c/code\u003e\u003c/strong\u003e: Removed unnecessary optional chaining across multiple rules (\u003ccode\u003eimmutability\u003c/code\u003e, \u003ccode\u003eno-unused-state\u003c/code\u003e, \u003ccode\u003epurity\u003c/code\u003e, \u003ccode\u003erefs\u003c/code\u003e, \u003ccode\u003eset-state-in-effect\u003c/code\u003e, \u003ccode\u003estatic-components\u003c/code\u003e, \u003ccode\u003euse-memo\u003c/code\u003e, etc.) and expanded test coverage for edge cases (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1792\"\u003e#1792\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdded automated GitHub Release workflow and fixed \u003ccode\u003eactions/setup-node\u003c/code\u003e cache parameter error.\u003c/li\u003e\n\u003cli\u003eAdded null-safety boundary tests for rules affected by PR \u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1792\"\u003e#1792\u003c/a\u003e (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1794\"\u003e#1794\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eBumped dependencies across workspace packages: \u003ccode\u003e@takumi-rs/image-response\u003c/code\u003e to 1.2.1, \u003ccode\u003efumadocs-mdx\u003c/code\u003e to 15.0.6, \u003ccode\u003eimport-integrity-lint\u003c/code\u003e to 1.1.1, \u003ccode\u003epreact\u003c/code\u003e to 10.29.2, \u003ccode\u003etsx\u003c/code\u003e to 4.22.1, \u003ccode\u003e@typescript-eslint\u003c/code\u003e to \u003ccode\u003e^8.59.4\u003c/code\u003e, \u003ccode\u003e@types/node\u003c/code\u003e to \u003ccode\u003e^25.9.0\u003c/code\u003e, \u003ccode\u003edompurify\u003c/code\u003e to \u003ccode\u003e^3.4.5\u003c/code\u003e, \u003ccode\u003epnpm\u003c/code\u003e to \u003ccode\u003e11.1.3\u003c/code\u003e, \u003ccode\u003etextlint\u003c/code\u003e to 15.7.1, and dprint TypeScript plugin to 0.96.1.\u003c/li\u003e\n\u003cli\u003eCleaned up stray empty string in \u003ccode\u003etsl.config.ts\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003eCleaned up type and lint errors across the workspace (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1793\"\u003e#1793\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eDowngraded TypeScript override in \u003ccode\u003epnpm-workspace.yaml\u003c/code\u003e from \u003ccode\u003e^6.0.3\u003c/code\u003e to \u003ccode\u003e5.9.3\u003c/code\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/8410851f436a8e1553484c95faecc64b3f8adbb1\"\u003e\u003ccode\u003e8410851\u003c/code\u003e\u003c/a\u003e release: 5.8.5\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/dccf9baf4c4f35919892dd61cee348ea1046d8fc\"\u003e\u003ccode\u003edccf9ba\u003c/code\u003e\u003c/a\u003e release: 5.8.5-beta.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/65edd43b61302e39af37fe00940f3903c52d5d0b\"\u003e\u003ccode\u003e65edd43\u003c/code\u003e\u003c/a\u003e release: 5.8.5-next.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/0393cd198aabafffeb4cf316856726b60834acd6\"\u003e\u003ccode\u003e0393cd1\u003c/code\u003e\u003c/a\u003e docs: lower minimum TypeScript version to 5.0.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/ceeeb663e4041cdabf41c75d8b68802006e86341\"\u003e\u003ccode\u003eceeeb66\u003c/code\u003e\u003c/a\u003e chore(deps): bump \u003ccode\u003e@​types/react\u003c/code\u003e, \u003ccode\u003e@​types/node\u003c/code\u003e, postcss, and fumadocs\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/39f2a0fe43a792ee4e1cf3ebf36e2b178e39324a\"\u003e\u003ccode\u003e39f2a0f\u003c/code\u003e\u003c/a\u003e release: 5.8.4\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/f7fa04ec446ffafcc5b04ac48b9a0a8c7421f5d7\"\u003e\u003ccode\u003ef7fa04e\u003c/code\u003e\u003c/a\u003e release: 5.8.4-beta.5\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/dbbd3298b136a649b4242b36d70929f0e8d6ecc7\"\u003e\u003ccode\u003edbbd329\u003c/code\u003e\u003c/a\u003e release: 5.8.4-beta.4\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/e3d9585a91caf57f3d0c69652a2a89664e70b5fd\"\u003e\u003ccode\u003ee3d9585\u003c/code\u003e\u003c/a\u003e release: 5.8.4-beta.3\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/1bae3a59500bde45ed7769521f1b1dc145ea92c1\"\u003e\u003ccode\u003e1bae3a5\u003c/code\u003e\u003c/a\u003e Link 90% human-written claim to FAQ\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/Rel1cx/eslint-react/commits/v5.8.5/plugins/eslint-plugin\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@eslint/js` from 9.39.2 to 10.0.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/eslint/eslint/releases\"\u003e@​eslint/js's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev10.0.1\u003c/h2\u003e\n\u003ch2\u003eBug Fixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/c87d5bded54c5cf491eb04c24c9d09bbbd42c23e\"\u003e\u003ccode\u003ec87d5bd\u003c/code\u003e\u003c/a\u003e fix: update eslint (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20531\"\u003e#20531\u003c/a\u003e) (renovate[bot])\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/d84100115c14691691058f00779c94e74fca946a\"\u003e\u003ccode\u003ed841001\u003c/code\u003e\u003c/a\u003e fix: update \u003ccode\u003eminimatch\u003c/code\u003e to \u003ccode\u003e10.2.1\u003c/code\u003e to address security vulnerabilities (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20519\"\u003e#20519\u003c/a\u003e) (루밀LuMir)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/04c21475b3004904948f02049f2888b401d82c78\"\u003e\u003ccode\u003e04c2147\u003c/code\u003e\u003c/a\u003e fix: update error message for unused suppressions (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20496\"\u003e#20496\u003c/a\u003e) (fnx)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/38b089c1726feac0e31a31d47941bd99e29ce003\"\u003e\u003ccode\u003e38b089c\u003c/code\u003e\u003c/a\u003e fix: update dependency \u003ccode\u003e@​eslint/config-array\u003c/code\u003e to ^0.23.1 (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20484\"\u003e#20484\u003c/a\u003e) (renovate[bot])\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eDocumentation\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/5b3dbce50a1404a9f118afe810cefeee79388a2a\"\u003e\u003ccode\u003e5b3dbce\u003c/code\u003e\u003c/a\u003e docs: add AI acknowledgement section to templates (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20431\"\u003e#20431\u003c/a\u003e) (루밀LuMir)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/6f23076037d5879f20fb3be2ef094293b1e8d38c\"\u003e\u003ccode\u003e6f23076\u003c/code\u003e\u003c/a\u003e docs: toggle nav in no-JS mode (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20476\"\u003e#20476\u003c/a\u003e) (Tanuj Kanti)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/b69cfb32a16c5d5e9986390d484fae1d21e406f9\"\u003e\u003ccode\u003eb69cfb3\u003c/code\u003e\u003c/a\u003e docs: Update README (GitHub Actions Bot)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eChores\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/e5c281ffd038a3a7a3e5364db0b9378e0ad83020\"\u003e\u003ccode\u003ee5c281f\u003c/code\u003e\u003c/a\u003e chore: updates for v9.39.3 release (Jenkins)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/8c3832adb77cd993b4a24891900d5eeaaf093cdc\"\u003e\u003ccode\u003e8c3832a\u003c/code\u003e\u003c/a\u003e chore: update \u003ccode\u003e@​typescript-eslint/parser\u003c/code\u003e to ^8.56.0 (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20514\"\u003e#20514\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/8330d238ae6adb68bb6a1c9381e38cfedd990d94\"\u003e\u003ccode\u003e8330d23\u003c/code\u003e\u003c/a\u003e test: add tests for config-api (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20493\"\u003e#20493\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/37d6e91e88fa6a2ca6d8726679096acff21ba6cc\"\u003e\u003ccode\u003e37d6e91\u003c/code\u003e\u003c/a\u003e chore: remove eslint v10 prereleases from eslint-config-eslint deps (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20494\"\u003e#20494\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/da7cd0e79197ad16e17052eef99df141de6dbfb1\"\u003e\u003ccode\u003eda7cd0e\u003c/code\u003e\u003c/a\u003e refactor: cleanup error message templates (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20479\"\u003e#20479\u003c/a\u003e) (Francesco Trotta)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/84fb885d49ac810e79a9491276b4828b53d913e5\"\u003e\u003ccode\u003e84fb885\u003c/code\u003e\u003c/a\u003e chore: package.json update for \u003ccode\u003e@​eslint/js\u003c/code\u003e release (Jenkins)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/1f667344b57c4c09b548d94bcfac1f91b6e5c63d\"\u003e\u003ccode\u003e1f66734\u003c/code\u003e\u003c/a\u003e chore: add \u003ccode\u003eeslint\u003c/code\u003e to \u003ccode\u003epeerDependencies\u003c/code\u003e of \u003ccode\u003e@eslint/js\u003c/code\u003e (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20467\"\u003e#20467\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev10.0.0\u003c/h2\u003e\n\u003ch2\u003eBreaking Changes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/f9e54f43a5e497cdfa179338b431093245cb787b\"\u003e\u003ccode\u003ef9e54f4\u003c/code\u003e\u003c/a\u003e feat!: estimate rule-tester failure location (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20420\"\u003e#20420\u003c/a\u003e) (ST-DDT)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/a176319d8ade1a7d9b2d7fb8f038f55a2662325f\"\u003e\u003ccode\u003ea176319\u003c/code\u003e\u003c/a\u003e feat!: replace \u003ccode\u003echalk\u003c/code\u003e with \u003ccode\u003estyleText\u003c/code\u003e and add \u003ccode\u003ecolor\u003c/code\u003e to \u003ccode\u003eResultsMeta\u003c/code\u003e (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20227\"\u003e#20227\u003c/a\u003e) (루밀LuMir)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/c7046e6c1e03c4ca0eee4888a1f2eba4c6454f84\"\u003e\u003ccode\u003ec7046e6\u003c/code\u003e\u003c/a\u003e feat!: enable JSX reference tracking (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20152\"\u003e#20152\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/fa31a608901684fbcd9906d1907e66561d16e5aa\"\u003e\u003ccode\u003efa31a60\u003c/code\u003e\u003c/a\u003e feat!: add \u003ccode\u003ename\u003c/code\u003e to configs (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20015\"\u003e#20015\u003c/a\u003e) (Kirk Waiblinger)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/3383e7ec9028166cafc8ea7986c2f7498d0049f0\"\u003e\u003ccode\u003e3383e7e\u003c/code\u003e\u003c/a\u003e fix!: remove deprecated \u003ccode\u003eSourceCode\u003c/code\u003e methods (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20137\"\u003e#20137\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/501abd0e916a35554c58b7c0365537f1fa3880ce\"\u003e\u003ccode\u003e501abd0\u003c/code\u003e\u003c/a\u003e feat!: update dependency minimatch to v10 (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20246\"\u003e#20246\u003c/a\u003e) (renovate[bot])\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/ca4d3b40085de47561f89656a2207d09946ed45e\"\u003e\u003ccode\u003eca4d3b4\u003c/code\u003e\u003c/a\u003e fix!: stricter rule tester assertions for valid test cases (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20125\"\u003e#20125\u003c/a\u003e) (唯然)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/96512a66c86402fb0538cdcb6cd30b9073f6bf3b\"\u003e\u003ccode\u003e96512a6\u003c/code\u003e\u003c/a\u003e fix!: Remove deprecated rule context methods (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20086\"\u003e#20086\u003c/a\u003e) (Nicholas C. Zakas)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/c69fdacdb2e886b9d965568a397aa8220db3fe90\"\u003e\u003ccode\u003ec69fdac\u003c/code\u003e\u003c/a\u003e feat!: remove eslintrc support (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20037\"\u003e#20037\u003c/a\u003e) (Francesco Trotta)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/208b5cc34a8374ff81412b5bec2e0800eebfbd04\"\u003e\u003ccode\u003e208b5cc\u003c/code\u003e\u003c/a\u003e feat!: Use \u003ccode\u003eScopeManager#addGlobals()\u003c/code\u003e (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20132\"\u003e#20132\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/a2ee188ea7a38a0c6155f3d39e2b00e1d0f36e14\"\u003e\u003ccode\u003ea2ee188\u003c/code\u003e\u003c/a\u003e fix!: add \u003ccode\u003euniqueItems: true\u003c/code\u003e in \u003ccode\u003eno-invalid-regexp\u003c/code\u003e option (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20155\"\u003e#20155\u003c/a\u003e) (Tanuj Kanti)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/a89059dbf2832d417dd493ee81483227ec44e4ab\"\u003e\u003ccode\u003ea89059d\u003c/code\u003e\u003c/a\u003e feat!: Program range span entire source text (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20133\"\u003e#20133\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/39a6424373d915fa9de0d7b0caba9a4dc3da9b53\"\u003e\u003ccode\u003e39a6424\u003c/code\u003e\u003c/a\u003e fix!: assert 'text' is a string across all RuleFixer methods (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20082\"\u003e#20082\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/f28fbf846244e043c92b355b224d121b06140b44\"\u003e\u003ccode\u003ef28fbf8\u003c/code\u003e\u003c/a\u003e fix!: Deprecate \u003ccode\u003e\u0026quot;always\u0026quot;\u003c/code\u003e and \u003ccode\u003e\u0026quot;as-needed\u0026quot;\u003c/code\u003e options of the \u003ccode\u003eradix\u003c/code\u003e rule (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20223\"\u003e#20223\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/aa3fb2b233e929b37220be940575f42c280e0b98\"\u003e\u003ccode\u003eaa3fb2b\u003c/code\u003e\u003c/a\u003e fix!: tighten \u003ccode\u003efunc-names\u003c/code\u003e schema (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20119\"\u003e#20119\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/f6c0ed0311dcfee853367d5068c765d066e6b756\"\u003e\u003ccode\u003ef6c0ed0\u003c/code\u003e\u003c/a\u003e feat!: report \u003ccode\u003eeslint-env\u003c/code\u003e comments as errors (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20128\"\u003e#20128\u003c/a\u003e) (Francesco Trotta)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/4bf739fb533e59f7f0a66b65f7bc80be0f37d8db\"\u003e\u003ccode\u003e4bf739f\u003c/code\u003e\u003c/a\u003e fix!: remove deprecated \u003ccode\u003eLintMessage#nodeType\u003c/code\u003e and \u003ccode\u003eTestCaseError#type\u003c/code\u003e (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20096\"\u003e#20096\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/523c076866400670fb2192a3f55dbf7ad3469247\"\u003e\u003ccode\u003e523c076\u003c/code\u003e\u003c/a\u003e feat!: drop support for jiti \u0026lt; 2.2.0 (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20016\"\u003e#20016\u003c/a\u003e) (michael faith)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/454a292c95f34dad232411ddac06408e6383bb64\"\u003e\u003ccode\u003e454a292\u003c/code\u003e\u003c/a\u003e feat!: update \u003ccode\u003eeslint:recommended\u003c/code\u003e configuration (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20210\"\u003e#20210\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/4f880ee02992e1bf0e96ebaba679985e2d1295f1\"\u003e\u003ccode\u003e4f880ee\u003c/code\u003e\u003c/a\u003e feat!: remove \u003ccode\u003ev10_*\u003c/code\u003e and inactive \u003ccode\u003eunstable_*\u003c/code\u003e flags (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20225\"\u003e#20225\u003c/a\u003e) (sethamus)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/f18115c363a4ac7671a4c7f30ee13d57ebba330f\"\u003e\u003ccode\u003ef18115c\u003c/code\u003e\u003c/a\u003e feat!: \u003ccode\u003eno-shadow-restricted-names\u003c/code\u003e report \u003ccode\u003eglobalThis\u003c/code\u003e by default (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20027\"\u003e#20027\u003c/a\u003e) (sethamus)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/c6358c31fbd3937b92d89be2618ffdf5a774604e\"\u003e\u003ccode\u003ec6358c3\u003c/code\u003e\u003c/a\u003e feat!: Require Node.js \u003ccode\u003e^20.19.0 || ^22.13.0 || \u0026gt;=24\u003c/code\u003e (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20160\"\u003e#20160\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eFeatures\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/bff9091927811497dbf066b0e3b85ecb37d43822\"\u003e\u003ccode\u003ebff9091\u003c/code\u003e\u003c/a\u003e feat: handle \u003ccode\u003eArray.fromAsync\u003c/code\u003e in \u003ccode\u003earray-callback-return\u003c/code\u003e (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20457\"\u003e#20457\u003c/a\u003e) (Francesco Trotta)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/290c594bb50c439fb71bc75521ee5360daa8c222\"\u003e\u003ccode\u003e290c594\u003c/code\u003e\u003c/a\u003e feat: add \u003ccode\u003eself\u003c/code\u003e to \u003ccode\u003eno-implied-eval\u003c/code\u003e rule (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20468\"\u003e#20468\u003c/a\u003e) (sethamus)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/43677de07ebd6e14bfac40a46ad749ba783c45f2\"\u003e\u003ccode\u003e43677de\u003c/code\u003e\u003c/a\u003e feat: fix handling of function and class expression names in \u003ccode\u003eno-shadow\u003c/code\u003e (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20432\"\u003e#20432\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/84fb885d49ac810e79a9491276b4828b53d913e5\"\u003e\u003ccode\u003e84fb885\u003c/code\u003e\u003c/a\u003e chore: package.json update for \u003ccode\u003e@​eslint/js\u003c/code\u003e release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/1f667344b57c4c09b548d94bcfac1f91b6e5c63d\"\u003e\u003ccode\u003e1f66734\u003c/code\u003e\u003c/a\u003e chore: add \u003ccode\u003eeslint\u003c/code\u003e to \u003ccode\u003epeerDependencies\u003c/code\u003e of \u003ccode\u003e@eslint/js\u003c/code\u003e (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20467\"\u003e#20467\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/f3fbc2f60cbe2c718364feb8c3fc0452c0df3c56\"\u003e\u003ccode\u003ef3fbc2f\u003c/code\u003e\u003c/a\u003e chore: set \u003ccode\u003e@eslint/js\u003c/code\u003e version to 10.0.0 to skip releasing it (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20466\"\u003e#20466\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/b4b3127f8542c599ce2dea804b6582ebc40c993d\"\u003e\u003ccode\u003eb4b3127\u003c/code\u003e\u003c/a\u003e chore: package.json update for \u003ccode\u003e@​eslint/js\u003c/code\u003e release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/0b14059491d830a49b3577931f4f68fbcfce6be5\"\u003e\u003ccode\u003e0b14059\u003c/code\u003e\u003c/a\u003e chore: package.json update for \u003ccode\u003e@​eslint/js\u003c/code\u003e release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/fa31a608901684fbcd9906d1907e66561d16e5aa\"\u003e\u003ccode\u003efa31a60\u003c/code\u003e\u003c/a\u003e feat!: add \u003ccode\u003ename\u003c/code\u003e to configs (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20015\"\u003e#20015\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/1e2cad5f6fa47ed6ed89d2a29798dda926d50990\"\u003e\u003ccode\u003e1e2cad5\u003c/code\u003e\u003c/a\u003e chore: package.json update for \u003ccode\u003e@​eslint/js\u003c/code\u003e release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/454a292c95f34dad232411ddac06408e6383bb64\"\u003e\u003ccode\u003e454a292\u003c/code\u003e\u003c/a\u003e feat!: update \u003ccode\u003eeslint:recommended\u003c/code\u003e configuration (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20210\"\u003e#20210\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/c6358c31fbd3937b92d89be2618ffdf5a774604e\"\u003e\u003ccode\u003ec6358c3\u003c/code\u003e\u003c/a\u003e feat!: Require Node.js \u003ccode\u003e^20.19.0 || ^22.13.0 || \u0026gt;=24\u003c/code\u003e (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20160\"\u003e#20160\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/eslint/eslint/commits/v10.0.1/packages/js\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@typescript-eslint/eslint-plugin` from 8.56.0 to 8.59.4\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases\"\u003e@​typescript-eslint/eslint-plugin's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev8.59.4\u003c/h2\u003e\n\u003ch2\u003e8.59.4 (2026-05-18)\u003c/h2\u003e\n\u003ch3\u003e🩹 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-floating-promises] stack overflow when using recursive types (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12294\"\u003e#12294\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eproject-service:\u003c/strong\u003e throw error cause in \u003ccode\u003egetParsedConfigFileFromTSServer\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12321\"\u003e#12321\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003etypescript-eslint:\u003c/strong\u003e export Compatible* types from typescript-eslint to resolve pnpm TS error (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12340\"\u003e#12340\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e❤️ Thank You\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eEvyatar Daud \u003ca href=\"https://github.com/StyleShit\"\u003e\u003ccode\u003e@​StyleShit\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eKirk Waiblinger \u003ca href=\"https://github.com/kirkwaiblinger\"\u003e\u003ccode\u003e@​kirkwaiblinger\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003elumir\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.4\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003ev8.59.3\u003c/h2\u003e\n\u003ch2\u003e8.59.3 (2026-05-11)\u003c/h2\u003e\n\u003cp\u003eThis was a version bump only, there were no code changes.\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.3\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003ev8.59.2\u003c/h2\u003e\n\u003ch2\u003e8.59.2 (2026-05-04)\u003c/h2\u003e\n\u003ch3\u003e🩹 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unsafe-type-assertion] handle crash on recursive template literal types (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12150\"\u003e#12150\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-deprecated] object destructuring values should be treated as declarations (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12292\"\u003e#12292\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003erule-tester:\u003c/strong\u003e add TypeScript as a peer dependency (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12288\"\u003e#12288\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e❤️ Thank You\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eDariusz Czajkowski\u003c/li\u003e\n\u003cli\u003eDima Barabash\u003c/li\u003e\n\u003cli\u003eKirk Waiblinger \u003ca href=\"https://github.com/kirkwaiblinger\"\u003e\u003ccode\u003e@​kirkwaiblinger\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.2\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003ev8.59.1\u003c/h2\u003e\n\u003ch2\u003e8.59.1 (2026-04-27)\u003c/h2\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/CHANGELOG.md\"\u003e@​typescript-eslint/eslint-plugin's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e8.59.4 (2026-05-18)\u003c/h2\u003e\n\u003ch3\u003e🩹 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-floating-promises] stack overflow when using recursive types (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12294\"\u003e#12294\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e❤️ Thank You\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eEvyatar Daud \u003ca href=\"https://github.com/StyleShit\"\u003e\u003ccode\u003e@​StyleShit\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.4\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003e8.59.3 (2026-05-11)\u003c/h2\u003e\n\u003cp\u003eThis was a version bump only for eslint-plugin to align it with other projects, there were no code changes.\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.3\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003e8.59.2 (2026-05-04)\u003c/h2\u003e\n\u003ch3\u003e🩹 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-deprecated] object destructuring values should be treated as declarations (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12292\"\u003e#12292\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unsafe-type-assertion] handle crash on recursive template literal types (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12150\"\u003e#12150\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e❤️ Thank You\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eDima Barabash\u003c/li\u003e\n\u003cli\u003eKirk Waiblinger \u003ca href=\"https://github.com/kirkwaiblinger\"\u003e\u003ccode\u003e@​kirkwaiblinger\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.2\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003e8.59.1 (2026-04-27)\u003c/h2\u003e\n\u003ch3\u003e🩹 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-condition] treat void as nullish in no-unnecessary-condition (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12241\"\u003e#12241\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-type-arguments] handle instantiation expressions (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12220\"\u003e#12220\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-type-assertion] avoid false positive in logical assignment assertions (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12278\"\u003e#12278\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-type-assertion] preserve phantom type arguments in generic inference (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12269\"\u003e#12269\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-type-assertion] preserve index signatures in undefined unions (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12257\"\u003e#12257\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-type-assertion] fix crash \u0026quot;TypeError: checker.getTypeArguments is not a function\u0026quot; (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12246\"\u003e#12246\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e❤️ Thank You\u003c/h3\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/ca6ca1431b6d18235297a7e29feb5d98f012dff2\"\u003e\u003ccode\u003eca6ca14\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.59.4\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/4302433ae6bf93d4ddc35264ad1b951254758566\"\u003e\u003ccode\u003e4302433\u003c/code\u003e\u003c/a\u003e fix(eslint-plugin): [no-floating-promises] stack overflow when using recursiv...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/10b79f1ba8e98610a3af85152a1b3b406f91e633\"\u003e\u003ccode\u003e10b79f1\u003c/code\u003e\u003c/a\u003e chore(deps): update dependency eslint to v10.4.0 (\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin/issues/12339\"\u003e#12339\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/2a6765d9628dc776f8127c96f088bb807c0bcab2\"\u003e\u003ccode\u003e2a6765d\u003c/code\u003e\u003c/a\u003e chore: clenaup \u003ccode\u003egetAwaitedType\u003c/code\u003e from \u003ccode\u003etypescript.d.ts\u003c/code\u003e (\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin/issues/12302\"\u003e#12302\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/48e13c0261e3cb1bf4f4dfaa462cdb3a56ef7383\"\u003e\u003ccode\u003e48e13c0\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.59.3\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/e26dc8003ababf078aad4df17765ee4cea30644c\"\u003e\u003ccode\u003ee26dc80\u003c/code\u003e\u003c/a\u003e docs: update stale links to latest (\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin/issues/12313\"\u003e#12313\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/44f9625336841a8ee3eb01a9e02e49b1d7b12648\"\u003e\u003ccode\u003e44f9625\u003c/code\u003e\u003c/a\u003e chore(deps): update vitest monorepo to v4.1.5 (\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin/issues/12307\"\u003e#12307\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/2ec35f1760aade4df4c631d76d78c7ed5e136333\"\u003e\u003ccode\u003e2ec35f1\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.59.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/ec3ef25390f7daf5a9ff33a60282bdbbb49ab0f3\"\u003e\u003ccode\u003eec3ef25\u003c/code\u003e\u003c/a\u003e test: make no-useless-empty-export tests fully static (\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin/issues/12260\"\u003e#12260\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/60d0a513870d833617374ff8ea256d86ca3cbbbb\"\u003e\u003ccode\u003e60d0a51\u003c/code\u003e\u003c/a\u003e chore(eslint-plugin): switch auto-generated test cases to hand-written in no-...\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commits/v8.59.4/packages/eslint-plugin\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@typescript-eslint/parser` from 8.56.0 to 8.59.4\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases\"\u003e@​typescript-eslint/parser's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev8.59.4\u003c/h2\u003e\n\u003ch2\u003e8.59.4 (2026-05-18)\u003c/h2\u003e\n\u003ch3\u003e🩹 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-floating-promises] stack overflow when using recursive types (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12294\"\u003e#12294\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eproject-service:\u003c/strong\u003e throw error cause in \u003ccode\u003egetParsedConfigFileFromTSServer\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12321\"\u003e#12321\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003etypescript-eslint:\u003c/strong\u003e export Compatible* types from typescript-eslint to resolve pnpm TS error (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12340\"\u003e#12340\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e❤️ Thank You\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eEvyatar Daud \u003ca href=\"https://github.com/StyleShit\"\u003e\u003ccode\u003e@​StyleShit\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eKirk Waiblinger \u003ca href=\"https://github.com/kirkwaiblinger\"\u003e\u003ccode\u003e@​kirkwaiblinger\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003elumir\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.4\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003ev8.59.3\u003c/h2\u003e\n\u003ch2\u003e8.59.3 (2026-05-11)\u003c/h2\u003e\n\u003cp\u003eThis was a version bump only, there were no code changes.\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.3\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003ev8.59.2\u003c/h2\u003e\n\u003ch2\u003e8.59.2 (2026-05-04)\u003c/h2\u003e\n\u003ch3\u003e🩹 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unsafe-type-assertion] handle crash on recursive template literal types (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12150\"\u003e#12150\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-deprecated] object destructuring values should be treated as declarations (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12292\"\u003e#12292\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003erule-tester:\u003c/strong\u003e add TypeScript as a peer dependency (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12288\"\u003e#12288\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e❤️ Thank You\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eDariusz Czajkowski\u003c/li\u003e\n\u003cli\u003eDima Barabash\u003c/li\u003e\n\u003cli\u003eKirk Waiblinger \u003ca href=\"https://github.com/kirkwaiblinger\"\u003e\u003ccode\u003e@​kirkwaiblinger\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.2\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003ev8.59.1\u003c/h2\u003e\n\u003ch2\u003e8.59.1 (2026-04-27)\u003c/h2\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/parser/CHANGELOG.md\"\u003e@​typescript-eslint/parser's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e8.59.4 (2026-05-18)\u003c/h2\u003e\n\u003cp\u003eThis was a version bump only for parser to align it with other projects, there were no code changes.\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.4\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003e8.59.3 (2026-05-11)\u003c/h2\u003e\n\u003cp\u003eThis was a version bump only for parser to align it with other projects, there were no code changes.\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.3\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003e8.59.2 (2026-05-04)\u003c/h2\u003e\n\u003cp\u003eThis was a version bump only for parser to align it with other projects, there were no code changes.\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.2\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003e8.59.1 (2026-04-27)\u003c/h2\u003e\n\u003cp\u003eThis was a version bump only for parser to align it with other projects, there were no code changes.\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.1\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003e8.59.0 (2026-04-20)\u003c/h2\u003e\n\u003cp\u003eThis was a version bump only for parser to align it with other projects, there were no code changes.\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.0\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003e8.58.2 (2026-04-13)\u003c/h2\u003e\n\u003ch3\u003e🩹 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eremove tsbuildinfo cache file from published packages (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12187\"\u003e#12187\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e❤️ Thank You\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAbhijeet Singh \u003ca href=\"https://github.com/cseas\"\u003e\u003ccode\u003e@​cseas\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/ca6ca1431b6d18235297a7e29feb5d98f012dff2\"\u003e\u003ccode\u003eca6ca14\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.59.4\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/48e13c0261e3cb1bf4f4dfaa462cdb3a56ef7383\"\u003e\u003ccode\u003e48e13c0\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.59.3\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/44f9625336841a8ee3eb01a9e02e49b1d7b12648\"\u003e\u003ccode\u003e44f9625\u003c/code\u003e\u003c/a\u003e chore(deps): update vitest monorepo to v4.1.5 (\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/parser/issues/12307\"\u003e#12307\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/2ec35f1760aade4df4c631d76d78c7ed5e136333\"\u003e\u003ccode\u003e2ec35f1\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.59.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/52457932e5507b5ca01e720a541f3f8d01e09b9d\"\u003e\u003ccode\u003e5245793\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.59.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/ea9ae4f8817873480e3501145059f63e39e8d8a1\"\u003e\u003ccode\u003eea9ae4f\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.59.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/90c2803a4c250e0343598d41e973f95e743bf4ce\"\u003e\u003ccode\u003e90c2803\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.58.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/be6b49a02d68db9bdc8985e7e9e1598700fda2fa\"\u003e\u003ccode\u003ebe6b49a\u003c/code\u003e\u003c/a\u003e fix: remove tsbuildinfo cache file from published packages (\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/parser/issues/12187\"\u003e#12187\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/5311ed312eadf4e238324f2726ae0b1f3f2206e6\"\u003e\u003ccode\u003e5311ed3\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.58.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/493341709fe7d1d6433332b7bd2724e3332c7cdf\"\u003e\u003ccode\u003e4933417\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.58.0\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commits/v8.59.4/packages/parser\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `eslint` from 9.39.2 to 10.4.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/eslint/eslint/releases\"\u003eeslint's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev10.4.0\u003c/h2\u003e\n\u003ch2\u003eFeatures\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/1a45ec596af1dd5f880e6874cb8f24dafb6a7ecf\"\u003e\u003ccode\u003e1a45ec5\u003c/code\u003e\u003c/a\u003e feat: check sequence expressions in \u003ccode\u003efor-direction\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20701\"\u003e#20701\u003c/a\u003e) (kuldeep kumar)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/450040bd89b989b3531824c6be45feb5fe3d936b\"\u003e\u003ccode\u003e450040b\u003c/code\u003e\u003c/a\u003e feat: add \u003ccode\u003eincludeIgnoreFile()\u003c/code\u003e to \u003ccode\u003eeslint/config\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20735\"\u003e#20735\u003c/a\u003e) (Kirk Waiblinger)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eBug Fixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/544c0c3da589166ad8e5d634f35d3d06701c57be\"\u003e\u003ccode\u003e544c0c3\u003c/code\u003e\u003c/a\u003e fix: escape code path DOT labels in debug output (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20866\"\u003e#20866\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/6799431203f2579632d0870f98ba132067f4040c\"\u003e\u003ccode\u003e6799431\u003c/code\u003e\u003c/a\u003e fix: update dependency \u003ccode\u003e@​eslint/config-helpers\u003c/code\u003e to ^0.6.0 (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20850\"\u003e#20850\u003c/a\u003e) (renovate[bot])\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/f078fef5005dceb14fc162aab7c7200e027688dd\"\u003e\u003ccode\u003ef078fef\u003c/code\u003e\u003c/a\u003e fix: handle non-array deprecated rule replacements (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20825\"\u003e#20825\u003c/a\u003e) (xbinaryx)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eDocumentation\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/7e52a7151fb92eec0e0f67fe4e5ddbd1ccce796f\"\u003e\u003ccode\u003e7e52a71\u003c/code\u003e\u003c/a\u003e docs: add mention of \u003ccode\u003e@eslint-react/eslint-plugin\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20869\"\u003e#20869\u003c/a\u003e) (Pavel)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/db3468ba746407d7f286f18f7ea9db6df0e3bc08\"\u003e\u003ccode\u003edb3468b\u003c/code\u003e\u003c/a\u003e docs: tweak wording around ambiguous CJS-vs-ESM config (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20865\"\u003e#20865\u003c/a\u003e) (Kirk Waiblinger)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/90846643ec6e97d447ae0d831fabe6d17b0a998a\"\u003e\u003ccode\u003e9084664\u003c/code\u003e\u003c/a\u003e docs: Update README (GitHub Actions Bot)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/9cc73875046e3c4b8313644cbb1e99e26b36bd3f\"\u003e\u003ccode\u003e9cc7387\u003c/code\u003e\u003c/a\u003e docs: Update README (GitHub Actions Bot)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/3d7b5484407403817aa9071a394d336d8ea96eb5\"\u003e\u003ccode\u003e3d7b548\u003c/code\u003e\u003c/a\u003e docs: Update README (GitHub Actions Bot)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/191ec3c0a3f94ce0f110df761f0b2b8949011ccb\"\u003e\u003ccode\u003e191ec3c\u003c/code\u003e\u003c/a\u003e docs: Update README (GitHub Actions Bot)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eChores\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/6616856f28fa514a30f87b5539fc100d739a94bf\"\u003e\u003ccode\u003e6616856\u003c/code\u003e\u003c/a\u003e chore: upgrade knip to v6 (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20875\"\u003e#20875\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/d13b084a3ad02f926e9addaa35fc383759ea5554\"\u003e\u003ccode\u003ed13b084\u003c/code\u003e\u003c/a\u003e ci: ensure auto-created PRs run CI (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20860\"\u003e#20860\u003c/a\u003e) (lumir)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/e71c7af86dce9acc1d18cb12d2184309f6841594\"\u003e\u003ccode\u003ee71c7af\u003c/code\u003e\u003c/a\u003e ci: bump pnpm/action-setup from 6.0.5 to 6.0.7 (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20862\"\u003e#20862\u003c/a\u003e) (dependabot[bot])\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/d84393dea170f54191fd20c8268b52c81c0ccd99\"\u003e\u003ccode\u003ed84393d\u003c/code\u003e\u003c/a\u003e test: add unit tests for SuppressionsService.applySuppressions() (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20863\"\u003e#20863\u003c/a\u003e) (kuldeep kumar)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/24db8cb8e6f07fba667121777a15b1785486be94\"\u003e\u003ccode\u003e24db8cb\u003c/code\u003e\u003c/a\u003e test: add tests for SuppressionsService.save() (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20802\"\u003e#20802\u003c/a\u003e) (kuldeep kumar)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/2ef0549cac4a9537e4c3a26b9f3edd4c99476bf6\"\u003e\u003ccode\u003e2ef0549\u003c/code\u003e\u003c/a\u003e chore: update ecosystem plugins (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20857\"\u003e#20857\u003c/a\u003e) (github-actions[bot])\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/a4297918d264d229a06cd96051ef9b91c7b86732\"\u003e\u003ccode\u003ea429791\u003c/code\u003e\u003c/a\u003e ci: remove \u003ccode\u003eeslint-webpack-plugin\u003c/code\u003e types integration test (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20668\"\u003e#20668\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/9e37386aa7f2ce220b2ef74a6afbac5f6b3527c5\"\u003e\u003ccode\u003e9e37386\u003c/code\u003e\u003c/a\u003e chore: replace \u003ccode\u003erecast\u003c/code\u003e with range approach in code-sample-minimizer (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20682\"\u003e#20682\u003c/a\u003e) (Copilot)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/0dd1f9ffc9a07704d46e2a4c8d4ccc0d0908b0c0\"\u003e\u003ccode\u003e0dd1f9f\u003c/code\u003e\u003c/a\u003e test: disable warning for \u003ccode\u003evm.constants.USE_MAIN_CONTEXT_DEFAULT_LOADER\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20845\"\u003e#20845\u003c/a\u003e) (Francesco Trotta)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/9da3c7bc92d9579f8db19ecb56e718538d09db2b\"\u003e\u003ccode\u003e9da3c7b\u003c/code\u003e\u003c/a\u003e refactor: remove deprecated \u003ccode\u003emeta.language\u003c/code\u003e and migrate \u003ccode\u003emeta.dialects\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20716\"\u003e#20716\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/2099ed12a0a74c3d7f0808514362af2499b4fe2b\"\u003e\u003ccode\u003e2099ed1\u003c/code\u003e\u003c/a\u003e refactor: add \u003ccode\u003emeta.defaultOptions\u003c/code\u003e to more rules, enable linting (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20800\"\u003e#20800\u003c/a\u003e) (xbinaryx)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/f1dfbc9ca57196de7092e1888cc99427bd6fe06e\"\u003e\u003ccode\u003ef1dfbc9\u003c/code\u003e\u003c/a\u003e chore: update ecosystem plugins (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20836\"\u003e#20836\u003c/a\u003e) (github-actions[bot])\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/c75941390c14728806cd4baef4f6072f6de78318\"\u003e\u003ccode\u003ec759413\u003c/code\u003e\u003c/a\u003e ci: bump pnpm/action-setup from 6.0.3 to 6.0.5 (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20843\"\u003e#20843\u003c/a\u003e) (dependabot[bot])\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/5b817d6fdc9ae2c35b528dc662b2eca8f40f64aa\"\u003e\u003ccode\u003e5b817d6\u003c/code\u003e\u003c/a\u003e test: add unit tests for lib/shared/ast-utils (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20838\"\u003e#20838\u003c/a\u003e) (kuldeep kumar)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/1c13ae3934c198c494e5958fa3a68b33244ff06a\"\u003e\u003ccode\u003e1c13ae3\u003c/code\u003e\u003c/a\u003e test: add unit tests for lib/shared/severity (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20835\"\u003e#20835\u003c/a\u003e) (kuldeep kumar)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev10.3.0\u003c/h2\u003e\n\u003ch2\u003eFeatures\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/379571a975f2b24d88037b9de2e72ec61d004130\"\u003e\u003ccode\u003e379571a\u003c/code\u003e\u003c/a\u003e feat: add suggestions for no-unused-private-class-members (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20773\"\u003e#20773\u003c/a\u003e) (sethamus)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eBug Fixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/b6ae5cf07b9b51802367539cb24b245b61eaa37c\"\u003e\u003ccode\u003eb6ae5cf\u003c/code\u003e\u003c/a\u003e fix: handle unavailable require cache (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20812\"\u003e#20812\u003c/a\u003e) (Simon Podlipsky)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/6fb3685bcbe9a6f72fd7dfb9129686b6fb96b0bd\"\u003e\u003ccode\u003e6fb3685\u003c/code\u003e\u003c/a\u003e fix: rule suggestions cause continuation in class body (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20787\"\u003e#20787\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eDocumentation\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/32cc7ab4ec653ce89da92deb5c40a9f4fc707fe5\"\u003e\u003ccode\u003e32cc7ab\u003c/code\u003e\u003c/a\u003e docs: fix typos in docs and comments (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20809\"\u003e#20809\u003c/a\u003e) (Tanuj Kanti)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/7f479376a2fa463d823ab762db6bb37ce8d2ee8f\"\u003e\u003ccode\u003e7f47937\u003c/code\u003e\u003c/a\u003e docs: Update README (GitHub Actions Bot)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eChores\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/d32235ec19ceea211fa86452afa383ca05f5c2f9\"\u003e\u003ccode\u003ed32235e\u003c/code\u003e\u003c/a\u003e ci: use pnpm in \u003ccode\u003eeslint-flat-config-utils\u003c/code\u003e type integration test (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20826\"\u003e#20826\u003c/a\u003e) (Francesco Trotta)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/3ffb14ea517de750ed1181579ef844af342e4096\"\u003e\u003ccode\u003e3ffb14e\u003c/code\u003e\u003c/a\u003e chore: clean up typos in comments and JSDoc (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20821\"\u003e#20821\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/452c4010c07dc2e36fe6ec6a8c48298878e86887\"\u003e\u003ccode\u003e452c401\u003c/code\u003e\u003c/a\u003e 10.4.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/b6417e8b55c9525070d6e168b485ce6ff21688ed\"\u003e\u003ccode\u003eb6417e8\u003c/code\u003e\u003c/a\u003e Build: changelog update for 10.4.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/6616856f28fa514a30f87b5539fc100d739a94bf\"\u003e\u003ccode\u003e6616856\u003c/code\u003e\u003c/a\u003e chore: upgrade knip to v6 (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20875\"\u003e#20875\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/d13b084a3ad02f926e9addaa35fc383759ea5554\"\u003e\u003ccode\u003ed13b084\u003c/code\u003e\u003c/a\u003e ci: ensure auto-created PRs run CI (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20860\"\u003e#20860\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/7e52a7151fb92eec0e0f67fe4e5ddbd1ccce796f\"\u003e\u003ccode\u003e7e52a71\u003c/code\u003e\u003c/a\u003e docs: add mention of \u003ccode\u003e@eslint-react/eslint-plugin\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20869\"\u003e#20869\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/e71c7af86dce9acc1d18cb12d2184309f6841594\"\u003e\u003ccode\u003ee71c7af\u003c/code\u003e\u003c/a\u003e ci: bump pnpm/action-setup from 6.0.5 to 6.0.7 (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20862\"\u003e#20862\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/544c0c3da589166ad8e5d634f35d3d06701c57be\"\u003e\u003ccode\u003e544c0c3\u003c/code\u003e\u003c/a\u003e fix: escape code path DOT labels in debug output (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20866\"\u003e#20866\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/db3468ba746407d7f286f18f7ea9db6df0e3bc08\"\u003e\u003ccode\u003edb3468b\u003c/code\u003e\u003c/a\u003e docs: tweak wording around ambiguous CJS-vs-ESM config (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20865\"\u003e#20865\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/d84393dea170f54191fd20c8268b52c81c0ccd99\"\u003e\u003ccode\u003ed84393d\u003c/code\u003e\u003c/a\u003e test: add unit tests for SuppressionsService.applySuppressions() (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20863\"\u003e#20863\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/90846643ec6e97d447ae0d831fabe6d17b0a998a\"\u003e\u003ccode\u003e9084664\u003c/code\u003e\u003c/a\u003e docs: Update README\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/eslint/eslint/compare/v9.39.2...v10.4.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `eslint-plugin-react-hooks` from 7.0.1 to 7.1.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/facebook/react/releases\"\u003eeslint-plugin-react-hooks's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eeslint-plugin-react-hooks@7.1.1 (April 17, 2026)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eNote:\u003c/strong\u003e 7.1.0 accidentally removed the \u003ccode\u003ecomponent-hook-factories\u003c/code\u003e rule, causing errors for users who referenced it in their ESLint config. This is now fixed.\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdd deprecated no-op \u003ccode\u003ecomponent-hook-factories\u003c/code\u003e rule for backwards compatibility. (\u003ca href=\"https://github.com/mofeiZ\"\u003e\u003ccode\u003e@​mofeiZ\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/36307\"\u003e#36307\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eeslint-plugin-react-hooks@7.1.0 (April 16, 2026)\u003c/h2\u003e\n\u003cp\u003eThis release adds ESLint v10 support, improves performance by skipping compilation for non-React files, and includes compiler lint improvements including better \u003ccode\u003eset-state-in-effect\u003c/code\u003e detection, improved ref validation, and more helpful error reporting.\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdd ESLint v10 support. (\u003ca href=\"https://github.com/azat-io\"\u003e\u003ccode\u003e@​azat-io\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/35720\"\u003e#35720\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSkip compilation for non-React files to improve performance. (\u003ca href=\"https://github.com/josephsavona\"\u003e\u003ccode\u003e@​josephsavona\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/35589\"\u003e#35589\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix exhaustive deps bug with Flow type casting. (\u003ca href=\"https://github.com/jorge-cab\"\u003e\u003ccode\u003e@​jorge-cab\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/35691\"\u003e#35691\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix \u003ccode\u003euseEffectEvent\u003c/code\u003e checks in component syntax. (\u003ca href=\"https://github.com/jbrown215\"\u003e\u003ccode\u003e@​jbrown215\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/35041\"\u003e#35041\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eImproved \u003ccode\u003eset-state-in-effect\u003c/code\u003e validation with fewer false negatives. (\u003ca href=\"https://github.com/jorge-cab\"\u003e\u003ccode\u003e@​jorge-cab\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/35134\"\u003e#35134\u003c/a\u003e, \u003ca href=\"https://github.com/josephsavona\"\u003e\u003ccode\u003e@​josephsavona\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/35147\"\u003e#35147\u003c/a\u003e, \u003ca href=\"https://github.com/jackpope\"\u003e\u003ccode\u003e@​jackpope\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/35214\"\u003e#35214\u003c/a\u003e, \u003ca href=\"https://github.com/chesnokov-tony\"\u003e\u003ccode\u003e@​chesnokov-tony\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/35419\"\u003e#35419\u003c/a\u003e, \u003ca href=\"https://github.com/jsleitor\"\u003e\u003ccode\u003e@​jsleitor\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/36107\"\u003e#36107\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eImproved ref validation for non-mutating functions and event handler props. (\u003ca href=\"https://github.com/josephsavona\"\u003e\u003ccode\u003e@​josephsavona\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/35893\"\u003e#35893\u003c/a\u003e, \u003ca href=\"https://github.com/kolvian\"\u003e\u003ccode\u003e@​kolvian\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/35062\"\u003e#35062\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCompiler now reports all errors instead of stopping at the first. (\u003ca href=\"https://github.com/josephsavona\"\u003e\u003ccode\u003e@​josephsavona\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/35873\"\u003e#35873\u003c/a\u003e–\u003ca href=\"https://redirect.github.com/facebook/react/pull/35884\"\u003e#35884\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eImproved source locations and error display in compiler diagnostics. (\u003ca href=\"https://github.com/nathanmarks\"\u003e\u003ccode\u003e@​nathanmarks\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/35348\"\u003e#35348\u003c/a\u003e, \u003ca href=\"https://github.com/josephsavona\"\u003e\u003ccode\u003e@​josephsavona\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/34963\"\u003e#34963\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/facebook/react/blob/main/packages/eslint-plugin-react-hooks/CHANGELOG.md\"\u003eeslint-plugin-react-hooks's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e7.1.1\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eNote:\u003c/strong\u003e 7.1.0 accidentally removed the \u003ccode\u003ecomponent-hook-factories\u003c/code\u003e rule, causing errors for users who referenced it in their ESLint config. This is now fixed.\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdd deprecated no-op \u003ccode\u003ecomponent-hook-factories\u003c/code\u003e rule for backwards compatibility. (\u003ca href=\"https://github.com/mofeiZ\"\u003e\u003ccode\u003e@​mofeiZ\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/36307\"\u003e#36307\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e7.1.0\u003c/h2\u003e\n\u003cp\u003eThis release adds ESLint v10 support, improves performance by skipping compilation for non-React files, and includes compiler lint improvements including better \u003ccode\u003eset-state-in-effect\u003c/code\u003e detection, improved ref validation, and more helpful error reporting.\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdd ESLint v10 support. (\u003ca href=\"https://github.com/azat-io\"\u003e\u003ccode\u003e@​azat-io\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/35720\"\u003e#35720\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSkip compilation for non-React files to improve performance. (\u003ca href=\"https://github.com/josephsavona\"\u003e\u003ccode\u003e@​josephsavona\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redire...\n\n_Description has been truncated_","html_url":"https://github.com/nabashi404/saas-test/pull/4","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/nabashi404%2Fsaas-test/issues/4","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/4/packages"},{"uuid":"4514481325","node_id":"PR_kwDORyuJzM7e6lmg","number":8,"state":"open","title":"deps(deps): bump the all-dependencies group across 1 directory with 68 updates","user":"dependabot[bot]","labels":[],"assignees":[],"locked":false,"comments_count":1,"pull_request":true,"closed_at":null,"author_association":null,"state_reason":null,"created_at":"2026-05-25T05:23:55.000Z","updated_at":"2026-05-25T05:23:56.000Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"deps(deps): bump","group_name":"all-dependencies","update_count":68,"packages":[{"name":"@eslint-react/eslint-plugin","old_version":"2.13.0","new_version":"5.8.5","repository_url":"https://github.com/Rel1cx/eslint-react"},{"name":"@eslint/js","old_version":"9.39.2","new_version":"10.0.1","repository_url":"https://github.com/eslint/eslint"},{"name":"@typescript-eslint/eslint-plugin","old_version":"8.56.0","new_version":"8.59.4","repository_url":"https://github.com/typescript-eslint/typescript-eslint"},{"name":"@typescript-eslint/parser","old_version":"8.56.0","new_version":"8.59.4","repository_url":"https://github.com/typescript-eslint/typescript-eslint"},{"name":"eslint","old_version":"9.39.2","new_version":"10.4.0","repository_url":"https://github.com/eslint/eslint"},{"name":"eslint-plugin-react-hooks","old_version":"7.0.1","new_version":"7.1.1","repository_url":"https://github.com/facebook/react"},{"name":"globals","old_version":"17.3.0","new_version":"17.6.0","repository_url":"https://github.com/sindresorhus/globals"},{"name":"graphql","old_version":"16.12.0","new_version":"16.14.0","repository_url":"https://github.com/graphql/graphql-js"},{"name":"happy-dom","old_version":"20.6.2","new_version":"20.9.0","repository_url":"https://github.com/capricorn86/happy-dom"},{"name":"jiti","old_version":"2.6.1","new_version":"2.7.0","repository_url":"https://github.com/unjs/jiti"},{"name":"lint-staged","old_version":"16.2.7","new_version":"17.0.5","repository_url":"https://github.com/lint-staged/lint-staged"},{"name":"mermaid","old_version":"11.12.3","new_version":"11.15.0","repository_url":"https://github.com/mermaid-js/mermaid"},{"name":"prettier","old_version":"3.8.1","new_version":"3.8.3","repository_url":"https://github.com/prettier/prettier"},{"name":"react","old_version":"19.2.4","new_version":"19.2.6","repository_url":"https://github.com/facebook/react"},{"name":"@types/react","old_version":"19.2.14","new_version":"19.2.15","repository_url":"https://github.com/DefinitelyTyped/DefinitelyTyped"},{"name":"typescript","old_version":"5.9.3","new_version":"6.0.3","repository_url":"https://github.com/microsoft/TypeScript"},{"name":"typescript-eslint","old_version":"8.56.0","new_version":"8.59.4","repository_url":"https://github.com/typescript-eslint/typescript-eslint"},{"name":"typescript-language-server","old_version":"5.1.3","new_version":"5.3.0","repository_url":"https://github.com/typescript-language-server/typescript-language-server"},{"name":"vite","old_version":"7.3.1","new_version":"8.0.14","repository_url":"https://github.com/vitejs/vite"},{"name":"vitepress","old_version":"2.0.0-alpha.16","new_version":"2.0.0-alpha.17","repository_url":"https://github.com/vuejs/vitepress"},{"name":"vitepress-plugin-llms","old_version":"1.11.0","new_version":"1.13.0","repository_url":"https://github.com/okineadev/vitepress-plugin-llms"},{"name":"vitest","old_version":"4.0.18","new_version":"4.1.7","repository_url":"https://github.com/vitest-dev/vitest"},{"name":"wrangler","old_version":"4.66.0","new_version":"4.94.0","repository_url":"https://github.com/cloudflare/workers-sdk"},{"name":"@ai-sdk/openai","old_version":"3.0.29","new_version":"3.0.65","repository_url":"https://github.com/vercel/ai"},{"name":"@better-auth/passkey","old_version":"1.4.18","new_version":"1.6.11","repository_url":"https://github.com/better-auth/better-auth"},{"name":"@better-auth/stripe","old_version":"1.4.18","new_version":"1.6.11","repository_url":"https://github.com/better-auth/better-auth"},{"name":"@trpc/server","old_version":"11.10.0","new_version":"11.17.0","repository_url":"https://github.com/trpc/trpc"},{"name":"ai","old_version":"6.0.91","new_version":"6.0.191","repository_url":"https://github.com/vercel/ai"},{"name":"better-auth","old_version":"1.4.18","new_version":"1.6.11","repository_url":"https://github.com/better-auth/better-auth"},{"name":"drizzle-orm","old_version":"0.45.1","new_version":"0.45.2","repository_url":"https://github.com/drizzle-team/drizzle-orm"},{"name":"postgres","old_version":"3.4.8","new_version":"3.4.9","repository_url":"https://github.com/porsager/postgres"},{"name":"resend","old_version":"6.9.2","new_version":"6.12.3","repository_url":"https://github.com/resend/resend-node"},{"name":"stripe","old_version":"20.3.1","new_version":"22.1.1","repository_url":"https://github.com/stripe/stripe-node"},{"name":"@cloudflare/workers-types","old_version":"4.20260218.0","new_version":"4.20260525.1","repository_url":"https://github.com/cloudflare/workerd"},{"name":"@types/bun","old_version":"1.3.9","new_version":"1.3.14","repository_url":"https://github.com/DefinitelyTyped/DefinitelyTyped"},{"name":"hono","old_version":"4.11.10","new_version":"4.12.23","repository_url":"https://github.com/honojs/hono"},{"name":"@tanstack/react-query","old_version":"5.90.21","new_version":"5.100.14","repository_url":"https://github.com/TanStack/query"},{"name":"@tanstack/react-router","old_version":"1.161.1","new_version":"1.170.8","repository_url":"https://github.com/TanStack/router"},{"name":"@trpc/client","old_version":"11.10.0","new_version":"11.17.0","repository_url":"https://github.com/trpc/trpc"},{"name":"@trpc/tanstack-react-query","old_version":"11.10.0","new_version":"11.17.0","repository_url":"https://github.com/trpc/trpc"},{"name":"jotai","old_version":"2.17.1","new_version":"2.20.0","repository_url":"https://github.com/pmndrs/jotai"},{"name":"jotai-effect","old_version":"2.2.3","new_version":"2.3.1","repository_url":"https://github.com/jotaijs/jotai-effect"},{"name":"lucide-react","old_version":"0.574.0","new_version":"1.16.0","repository_url":"https://github.com/lucide-icons/lucide"},{"name":"react-dom","old_version":"19.2.4","new_version":"19.2.6","repository_url":"https://github.com/facebook/react"},{"name":"react-error-boundary","old_version":"6.1.1","new_version":"6.1.2","repository_url":"https://github.com/bvaughn/react-error-boundary"},{"name":"tailwind-merge","old_version":"3.4.1","new_version":"3.6.0","repository_url":"https://github.com/dcastil/tailwind-merge"},{"name":"@tailwindcss/postcss","old_version":"4.2.0","new_version":"4.3.0","repository_url":"https://github.com/tailwindlabs/tailwindcss"},{"name":"@tanstack/react-query-devtools","old_version":"5.91.3","new_version":"5.100.14","repository_url":"https://github.com/TanStack/query"},{"name":"@tanstack/react-router-devtools","old_version":"1.161.1","new_version":"1.167.0","repository_url":"https://github.com/TanStack/router"},{"name":"@tanstack/router-plugin","old_version":"1.161.1","new_version":"1.168.11","repository_url":"https://github.com/TanStack/router"},{"name":"@types/node","old_version":"25.2.3","new_version":"25.9.1","repository_url":"https://github.com/DefinitelyTyped/DefinitelyTyped"},{"name":"@vitejs/plugin-react","old_version":"5.1.4","new_version":"6.0.2","repository_url":"https://github.com/vitejs/vite-plugin-react"},{"name":"@vitejs/plugin-react-swc","old_version":"4.2.3","new_version":"4.3.1","repository_url":"https://github.com/vitejs/vite-plugin-react"},{"name":"autoprefixer","old_version":"10.4.24","new_version":"10.5.0","repository_url":"https://github.com/postcss/autoprefixer"},{"name":"globby","old_version":"16.1.1","new_version":"16.2.0","repository_url":"https://github.com/sindresorhus/globby"},{"name":"@react-email/components","old_version":"1.0.8","new_version":"1.0.12","repository_url":"https://github.com/resend/react-email"},{"name":"@react-email/render","old_version":"2.0.4","new_version":"2.0.8","repository_url":"https://github.com/resend/react-email"},{"name":"@react-email/preview-server","old_version":"5.2.8","new_version":"5.2.10","repository_url":"https://github.com/resend/react-email"},{"name":"react-email","old_version":"5.2.8","new_version":"6.3.2","repository_url":"https://github.com/resend/react-email"},{"name":"@astrojs/react","old_version":"4.4.2","new_version":"5.0.5","repository_url":"https://github.com/withastro/astro"},{"name":"astro","old_version":"5.17.2","new_version":"6.3.7","repository_url":"https://github.com/withastro/astro"},{"name":"dotenv","old_version":"17.3.1","new_version":"17.4.2","repository_url":"https://github.com/motdotla/dotenv"},{"name":"drizzle-kit","old_version":"0.31.9","new_version":"0.31.10","repository_url":"https://github.com/drizzle-team/drizzle-orm"},{"name":"@modelcontextprotocol/sdk","old_version":"1.26.0","new_version":"1.29.0","repository_url":"https://github.com/modelcontextprotocol/typescript-sdk"},{"name":"got","old_version":"14.6.6","new_version":"15.0.5","repository_url":"https://github.com/sindresorhus/got"}],"path":null,"ecosystem":"npm"},"body":"Bumps the all-dependencies group with 65 updates in the / directory:\n\n| Package | From | To |\n| --- | --- | --- |\n| [@eslint-react/eslint-plugin](https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin) | `2.13.0` | `5.8.5` |\n| [@eslint/js](https://github.com/eslint/eslint/tree/HEAD/packages/js) | `9.39.2` | `10.0.1` |\n| [@typescript-eslint/eslint-plugin](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin) | `8.56.0` | `8.59.4` |\n| [@typescript-eslint/parser](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/parser) | `8.56.0` | `8.59.4` |\n| [eslint](https://github.com/eslint/eslint) | `9.39.2` | `10.4.0` |\n| [eslint-plugin-react-hooks](https://github.com/facebook/react/tree/HEAD/packages/eslint-plugin-react-hooks) | `7.0.1` | `7.1.1` |\n| [globals](https://github.com/sindresorhus/globals) | `17.3.0` | `17.6.0` |\n| [graphql](https://github.com/graphql/graphql-js) | `16.12.0` | `16.14.0` |\n| [happy-dom](https://github.com/capricorn86/happy-dom) | `20.6.2` | `20.9.0` |\n| [jiti](https://github.com/unjs/jiti) | `2.6.1` | `2.7.0` |\n| [lint-staged](https://github.com/lint-staged/lint-staged) | `16.2.7` | `17.0.5` |\n| [mermaid](https://github.com/mermaid-js/mermaid) | `11.12.3` | `11.15.0` |\n| [prettier](https://github.com/prettier/prettier) | `3.8.1` | `3.8.3` |\n| [react](https://github.com/facebook/react/tree/HEAD/packages/react) | `19.2.4` | `19.2.6` |\n| [@types/react](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/react) | `19.2.14` | `19.2.15` |\n| [typescript](https://github.com/microsoft/TypeScript) | `5.9.3` | `6.0.3` |\n| [typescript-eslint](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/typescript-eslint) | `8.56.0` | `8.59.4` |\n| [typescript-language-server](https://github.com/typescript-language-server/typescript-language-server) | `5.1.3` | `5.3.0` |\n| [vite](https://github.com/vitejs/vite/tree/HEAD/packages/vite) | `7.3.1` | `8.0.14` |\n| [vitepress](https://github.com/vuejs/vitepress) | `2.0.0-alpha.16` | `2.0.0-alpha.17` |\n| [vitepress-plugin-llms](https://github.com/okineadev/vitepress-plugin-llms) | `1.11.0` | `1.13.0` |\n| [vitest](https://github.com/vitest-dev/vitest/tree/HEAD/packages/vitest) | `4.0.18` | `4.1.7` |\n| [wrangler](https://github.com/cloudflare/workers-sdk/tree/HEAD/packages/wrangler) | `4.66.0` | `4.94.0` |\n| [@ai-sdk/openai](https://github.com/vercel/ai/tree/HEAD/packages/openai) | `3.0.29` | `3.0.65` |\n| [@better-auth/passkey](https://github.com/better-auth/better-auth/tree/HEAD/packages/passkey) | `1.4.18` | `1.6.11` |\n| [@better-auth/stripe](https://github.com/better-auth/better-auth/tree/HEAD/packages/stripe) | `1.4.18` | `1.6.11` |\n| [@trpc/server](https://github.com/trpc/trpc/tree/HEAD/packages/server) | `11.10.0` | `11.17.0` |\n| [ai](https://github.com/vercel/ai/tree/HEAD/packages/ai) | `6.0.91` | `6.0.191` |\n| [better-auth](https://github.com/better-auth/better-auth/tree/HEAD/packages/better-auth) | `1.4.18` | `1.6.11` |\n| [drizzle-orm](https://github.com/drizzle-team/drizzle-orm) | `0.45.1` | `0.45.2` |\n| [postgres](https://github.com/porsager/postgres) | `3.4.8` | `3.4.9` |\n| [resend](https://github.com/resend/resend-node) | `6.9.2` | `6.12.3` |\n| [stripe](https://github.com/stripe/stripe-node) | `20.3.1` | `22.1.1` |\n| [@cloudflare/workers-types](https://github.com/cloudflare/workerd) | `4.20260218.0` | `4.20260525.1` |\n| [@types/bun](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/bun) | `1.3.9` | `1.3.14` |\n| [hono](https://github.com/honojs/hono) | `4.11.10` | `4.12.23` |\n| [@tanstack/react-query](https://github.com/TanStack/query/tree/HEAD/packages/react-query) | `5.90.21` | `5.100.14` |\n| [@tanstack/react-router](https://github.com/TanStack/router/tree/HEAD/packages/react-router) | `1.161.1` | `1.170.8` |\n| [@trpc/client](https://github.com/trpc/trpc/tree/HEAD/packages/client) | `11.10.0` | `11.17.0` |\n| [@trpc/tanstack-react-query](https://github.com/trpc/trpc/tree/HEAD/packages/tanstack-react-query) | `11.10.0` | `11.17.0` |\n| [jotai](https://github.com/pmndrs/jotai) | `2.17.1` | `2.20.0` |\n| [jotai-effect](https://github.com/jotaijs/jotai-effect) | `2.2.3` | `2.3.1` |\n| [lucide-react](https://github.com/lucide-icons/lucide/tree/HEAD/packages/lucide-react) | `0.574.0` | `1.16.0` |\n| [react-dom](https://github.com/facebook/react/tree/HEAD/packages/react-dom) | `19.2.4` | `19.2.6` |\n| [react-error-boundary](https://github.com/bvaughn/react-error-boundary) | `6.1.1` | `6.1.2` |\n| [tailwind-merge](https://github.com/dcastil/tailwind-merge) | `3.4.1` | `3.6.0` |\n| [@tailwindcss/postcss](https://github.com/tailwindlabs/tailwindcss/tree/HEAD/packages/@tailwindcss-postcss) | `4.2.0` | `4.3.0` |\n| [@tanstack/react-query-devtools](https://github.com/TanStack/query/tree/HEAD/packages/react-query-devtools) | `5.91.3` | `5.100.14` |\n| [@tanstack/react-router-devtools](https://github.com/TanStack/router/tree/HEAD/packages/react-router-devtools) | `1.161.1` | `1.167.0` |\n| [@tanstack/router-plugin](https://github.com/TanStack/router/tree/HEAD/packages/router-plugin) | `1.161.1` | `1.168.11` |\n| [@types/node](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/node) | `25.2.3` | `25.9.1` |\n| [@vitejs/plugin-react](https://github.com/vitejs/vite-plugin-react/tree/HEAD/packages/plugin-react) | `5.1.4` | `6.0.2` |\n| [@vitejs/plugin-react-swc](https://github.com/vitejs/vite-plugin-react/tree/HEAD/packages/plugin-react-swc) | `4.2.3` | `4.3.1` |\n| [autoprefixer](https://github.com/postcss/autoprefixer) | `10.4.24` | `10.5.0` |\n| [globby](https://github.com/sindresorhus/globby) | `16.1.1` | `16.2.0` |\n| [@react-email/components](https://github.com/resend/react-email/tree/HEAD/packages/components) | `1.0.8` | `1.0.12` |\n| [@react-email/render](https://github.com/resend/react-email/tree/HEAD/packages/render) | `2.0.4` | `2.0.8` |\n| [@react-email/preview-server](https://github.com/resend/react-email/tree/HEAD/packages/preview-server) | `5.2.8` | `5.2.10` |\n| [react-email](https://github.com/resend/react-email/tree/HEAD/packages/react-email) | `5.2.8` | `6.3.2` |\n| [@astrojs/react](https://github.com/withastro/astro/tree/HEAD/packages/integrations/react) | `4.4.2` | `5.0.5` |\n| [astro](https://github.com/withastro/astro/tree/HEAD/packages/astro) | `5.17.2` | `6.3.7` |\n| [dotenv](https://github.com/motdotla/dotenv) | `17.3.1` | `17.4.2` |\n| [drizzle-kit](https://github.com/drizzle-team/drizzle-orm) | `0.31.9` | `0.31.10` |\n| [@modelcontextprotocol/sdk](https://github.com/modelcontextprotocol/typescript-sdk) | `1.26.0` | `1.29.0` |\n| [got](https://github.com/sindresorhus/got) | `14.6.6` | `15.0.5` |\n\n\nUpdates `@eslint-react/eslint-plugin` from 2.13.0 to 5.8.5\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/Rel1cx/eslint-react/releases\"\u003e@​eslint-react/eslint-plugin's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev5.8.5 (2026-05-24)\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003ch3\u003e📝 Documentation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdded rule implementation patterns guide (\u003ccode\u003edocs/rule-implementation-patterns.md\u003c/code\u003e) and term-based rule patterns guide (\u003ccode\u003edocs/term-based-rule-patterns.md\u003c/code\u003e).\u003c/li\u003e\n\u003cli\u003eLowered minimum TypeScript version requirement from \u003ccode\u003e5.1.0\u003c/code\u003e to \u003ccode\u003e5.0.0\u003c/code\u003e across README and documentation.\u003c/li\u003e\n\u003cli\u003eFixed textlint war-metaphor warnings and refined \u003ccode\u003e.textlintrc.json\u003c/code\u003e patterns.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🏗️ Internal\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdjusted formatting across configuration and script files (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1795\"\u003e#1795\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFixed a typo in the CI test workflow step.\u003c/li\u003e\n\u003cli\u003eAdded regression tests for oxc issues compatibility verification (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1796\"\u003e#1796\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eBumped dependencies across workspace packages:\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e@effect/language-service\u003c/code\u003e to \u003ccode\u003e^0.86.2\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@takumi-rs/image-response\u003c/code\u003e to \u003ccode\u003e^1.3.0\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@tsconfig/vite-react\u003c/code\u003e to \u003ccode\u003e^8.0.6\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@types/node\u003c/code\u003e to \u003ccode\u003e^25.9.1\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@types/react\u003c/code\u003e to \u003ccode\u003e^19.2.15\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eeslint-plugin-package-json\u003c/code\u003e to \u003ccode\u003e^1.1.0\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003efumadocs-core\u003c/code\u003e to \u003ccode\u003e^16.9.0\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003efumadocs-mdx\u003c/code\u003e to \u003ccode\u003e^15.0.7\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003efumadocs-ui\u003c/code\u003e to \u003ccode\u003e^16.9.0\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003elru-cache\u003c/code\u003e to \u003ccode\u003e11.5.0\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003enx\u003c/code\u003e to \u003ccode\u003e^22.7.3\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003epostcss\u003c/code\u003e to \u003ccode\u003e^8.5.15\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003evite\u003c/code\u003e to \u003ccode\u003e^8.0.14\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003evitest\u003c/code\u003e to \u003ccode\u003e^4.1.7\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003epnpm\u003c/code\u003e to \u003ccode\u003e11.2.1\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eAttestation\u003c/h2\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/attestations/28553042\"\u003ehttps://github.com/Rel1cx/eslint-react/attestations/28553042\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev5.8.4 (2026-05-22)\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003ch3\u003e📝 Documentation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eWebsite\u003c/strong\u003e: Restructured the FAQ page from an accordion layout to standard headings for better SEO, accessibility, and direct anchor linking.\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eWebsite\u003c/strong\u003e: Replaced the homepage \u003ccode\u003eHint\u003c/code\u003e popover with a direct link to the FAQ anchor explaining the project's human/LLM collaboration policy.\u003c/li\u003e\n\u003cli\u003eAdded a new \u003cstrong\u003e\u0026quot;What does 90% human-written mean?\u0026quot;\u003c/strong\u003e section to the FAQ.\u003c/li\u003e\n\u003cli\u003eUpdated documentation for \u003ccode\u003eisClassComponent\u003c/code\u003e and \u003ccode\u003eJsxConfig\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003eRemoved outdated documentation files.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🏗️ Internal\u003c/h3\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/Rel1cx/eslint-react/blob/main/CHANGELOG.md\"\u003e@​eslint-react/eslint-plugin's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev5.8.5 (2026-05-24)\u003c/h2\u003e\n\u003ch3\u003e📝 Documentation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdded rule implementation patterns guide (\u003ccode\u003edocs/rule-implementation-patterns.md\u003c/code\u003e) and term-based rule patterns guide (\u003ccode\u003edocs/term-based-rule-patterns.md\u003c/code\u003e).\u003c/li\u003e\n\u003cli\u003eLowered minimum TypeScript version requirement from \u003ccode\u003e5.1.0\u003c/code\u003e to \u003ccode\u003e5.0.0\u003c/code\u003e across README and documentation.\u003c/li\u003e\n\u003cli\u003eFixed textlint war-metaphor warnings and refined \u003ccode\u003e.textlintrc.json\u003c/code\u003e patterns.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🏗️ Internal\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdjusted formatting across configuration and script files (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1795\"\u003e#1795\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFixed a typo in the CI test workflow step.\u003c/li\u003e\n\u003cli\u003eAdded regression tests for oxc issues compatibility verification (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1796\"\u003e#1796\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eBumped dependencies across workspace packages:\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e@effect/language-service\u003c/code\u003e to \u003ccode\u003e^0.86.2\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@takumi-rs/image-response\u003c/code\u003e to \u003ccode\u003e^1.3.0\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@tsconfig/vite-react\u003c/code\u003e to \u003ccode\u003e^8.0.6\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@types/node\u003c/code\u003e to \u003ccode\u003e^25.9.1\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@types/react\u003c/code\u003e to \u003ccode\u003e^19.2.15\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eeslint-plugin-package-json\u003c/code\u003e to \u003ccode\u003e^1.1.0\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003efumadocs-core\u003c/code\u003e to \u003ccode\u003e^16.9.0\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003efumadocs-mdx\u003c/code\u003e to \u003ccode\u003e^15.0.7\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003efumadocs-ui\u003c/code\u003e to \u003ccode\u003e^16.9.0\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003elru-cache\u003c/code\u003e to \u003ccode\u003e11.5.0\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003enx\u003c/code\u003e to \u003ccode\u003e^22.7.3\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003epostcss\u003c/code\u003e to \u003ccode\u003e^8.5.15\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003evite\u003c/code\u003e to \u003ccode\u003e^8.0.14\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003evitest\u003c/code\u003e to \u003ccode\u003e^4.1.7\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003epnpm\u003c/code\u003e to \u003ccode\u003e11.2.1\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev5.8.4 (2026-05-22)\u003c/h2\u003e\n\u003ch3\u003e📝 Documentation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eWebsite\u003c/strong\u003e: Restructured the FAQ page from an accordion layout to standard headings for better SEO, accessibility, and direct anchor linking.\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eWebsite\u003c/strong\u003e: Replaced the homepage \u003ccode\u003eHint\u003c/code\u003e popover with a direct link to the FAQ anchor explaining the project's human/LLM collaboration policy.\u003c/li\u003e\n\u003cli\u003eAdded a new \u003cstrong\u003e\u0026quot;What does 90% human-written mean?\u0026quot;\u003c/strong\u003e section to the FAQ.\u003c/li\u003e\n\u003cli\u003eUpdated documentation for \u003ccode\u003eisClassComponent\u003c/code\u003e and \u003ccode\u003eJsxConfig\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003eRemoved outdated documentation files.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🏗️ Internal\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003e\u003ccode\u003ecore\u003c/code\u003e\u003c/strong\u003e: Simplified \u003ccode\u003eisClassComponent\u003c/code\u003e by removing the \u003ccode\u003econtext\u003c/code\u003e parameter and replacing \u003ccode\u003eisClassComponentLoose\u003c/code\u003e with the simplified function.\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003e\u003ccode\u003eeslint-plugin-react-x\u003c/code\u003e\u003c/strong\u003e: Removed unnecessary optional chaining across multiple rules (\u003ccode\u003eimmutability\u003c/code\u003e, \u003ccode\u003eno-unused-state\u003c/code\u003e, \u003ccode\u003epurity\u003c/code\u003e, \u003ccode\u003erefs\u003c/code\u003e, \u003ccode\u003eset-state-in-effect\u003c/code\u003e, \u003ccode\u003estatic-components\u003c/code\u003e, \u003ccode\u003euse-memo\u003c/code\u003e, etc.) and expanded test coverage for edge cases (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1792\"\u003e#1792\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdded automated GitHub Release workflow and fixed \u003ccode\u003eactions/setup-node\u003c/code\u003e cache parameter error.\u003c/li\u003e\n\u003cli\u003eAdded null-safety boundary tests for rules affected by PR \u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1792\"\u003e#1792\u003c/a\u003e (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1794\"\u003e#1794\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eBumped dependencies across workspace packages: \u003ccode\u003e@takumi-rs/image-response\u003c/code\u003e to 1.2.1, \u003ccode\u003efumadocs-mdx\u003c/code\u003e to 15.0.6, \u003ccode\u003eimport-integrity-lint\u003c/code\u003e to 1.1.1, \u003ccode\u003epreact\u003c/code\u003e to 10.29.2, \u003ccode\u003etsx\u003c/code\u003e to 4.22.1, \u003ccode\u003e@typescript-eslint\u003c/code\u003e to \u003ccode\u003e^8.59.4\u003c/code\u003e, \u003ccode\u003e@types/node\u003c/code\u003e to \u003ccode\u003e^25.9.0\u003c/code\u003e, \u003ccode\u003edompurify\u003c/code\u003e to \u003ccode\u003e^3.4.5\u003c/code\u003e, \u003ccode\u003epnpm\u003c/code\u003e to \u003ccode\u003e11.1.3\u003c/code\u003e, \u003ccode\u003etextlint\u003c/code\u003e to 15.7.1, and dprint TypeScript plugin to 0.96.1.\u003c/li\u003e\n\u003cli\u003eCleaned up stray empty string in \u003ccode\u003etsl.config.ts\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003eCleaned up type and lint errors across the workspace (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1793\"\u003e#1793\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eDowngraded TypeScript override in \u003ccode\u003epnpm-workspace.yaml\u003c/code\u003e from \u003ccode\u003e^6.0.3\u003c/code\u003e to \u003ccode\u003e5.9.3\u003c/code\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/8410851f436a8e1553484c95faecc64b3f8adbb1\"\u003e\u003ccode\u003e8410851\u003c/code\u003e\u003c/a\u003e release: 5.8.5\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/dccf9baf4c4f35919892dd61cee348ea1046d8fc\"\u003e\u003ccode\u003edccf9ba\u003c/code\u003e\u003c/a\u003e release: 5.8.5-beta.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/65edd43b61302e39af37fe00940f3903c52d5d0b\"\u003e\u003ccode\u003e65edd43\u003c/code\u003e\u003c/a\u003e release: 5.8.5-next.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/0393cd198aabafffeb4cf316856726b60834acd6\"\u003e\u003ccode\u003e0393cd1\u003c/code\u003e\u003c/a\u003e docs: lower minimum TypeScript version to 5.0.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/ceeeb663e4041cdabf41c75d8b68802006e86341\"\u003e\u003ccode\u003eceeeb66\u003c/code\u003e\u003c/a\u003e chore(deps): bump \u003ccode\u003e@​types/react\u003c/code\u003e, \u003ccode\u003e@​types/node\u003c/code\u003e, postcss, and fumadocs\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/39f2a0fe43a792ee4e1cf3ebf36e2b178e39324a\"\u003e\u003ccode\u003e39f2a0f\u003c/code\u003e\u003c/a\u003e release: 5.8.4\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/f7fa04ec446ffafcc5b04ac48b9a0a8c7421f5d7\"\u003e\u003ccode\u003ef7fa04e\u003c/code\u003e\u003c/a\u003e release: 5.8.4-beta.5\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/dbbd3298b136a649b4242b36d70929f0e8d6ecc7\"\u003e\u003ccode\u003edbbd329\u003c/code\u003e\u003c/a\u003e release: 5.8.4-beta.4\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/e3d9585a91caf57f3d0c69652a2a89664e70b5fd\"\u003e\u003ccode\u003ee3d9585\u003c/code\u003e\u003c/a\u003e release: 5.8.4-beta.3\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/1bae3a59500bde45ed7769521f1b1dc145ea92c1\"\u003e\u003ccode\u003e1bae3a5\u003c/code\u003e\u003c/a\u003e Link 90% human-written claim to FAQ\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/Rel1cx/eslint-react/commits/v5.8.5/plugins/eslint-plugin\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@eslint/js` from 9.39.2 to 10.0.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/eslint/eslint/releases\"\u003e@​eslint/js's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev10.0.1\u003c/h2\u003e\n\u003ch2\u003eBug Fixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/c87d5bded54c5cf491eb04c24c9d09bbbd42c23e\"\u003e\u003ccode\u003ec87d5bd\u003c/code\u003e\u003c/a\u003e fix: update eslint (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20531\"\u003e#20531\u003c/a\u003e) (renovate[bot])\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/d84100115c14691691058f00779c94e74fca946a\"\u003e\u003ccode\u003ed841001\u003c/code\u003e\u003c/a\u003e fix: update \u003ccode\u003eminimatch\u003c/code\u003e to \u003ccode\u003e10.2.1\u003c/code\u003e to address security vulnerabilities (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20519\"\u003e#20519\u003c/a\u003e) (루밀LuMir)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/04c21475b3004904948f02049f2888b401d82c78\"\u003e\u003ccode\u003e04c2147\u003c/code\u003e\u003c/a\u003e fix: update error message for unused suppressions (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20496\"\u003e#20496\u003c/a\u003e) (fnx)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/38b089c1726feac0e31a31d47941bd99e29ce003\"\u003e\u003ccode\u003e38b089c\u003c/code\u003e\u003c/a\u003e fix: update dependency \u003ccode\u003e@​eslint/config-array\u003c/code\u003e to ^0.23.1 (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20484\"\u003e#20484\u003c/a\u003e) (renovate[bot])\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eDocumentation\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/5b3dbce50a1404a9f118afe810cefeee79388a2a\"\u003e\u003ccode\u003e5b3dbce\u003c/code\u003e\u003c/a\u003e docs: add AI acknowledgement section to templates (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20431\"\u003e#20431\u003c/a\u003e) (루밀LuMir)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/6f23076037d5879f20fb3be2ef094293b1e8d38c\"\u003e\u003ccode\u003e6f23076\u003c/code\u003e\u003c/a\u003e docs: toggle nav in no-JS mode (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20476\"\u003e#20476\u003c/a\u003e) (Tanuj Kanti)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/b69cfb32a16c5d5e9986390d484fae1d21e406f9\"\u003e\u003ccode\u003eb69cfb3\u003c/code\u003e\u003c/a\u003e docs: Update README (GitHub Actions Bot)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eChores\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/e5c281ffd038a3a7a3e5364db0b9378e0ad83020\"\u003e\u003ccode\u003ee5c281f\u003c/code\u003e\u003c/a\u003e chore: updates for v9.39.3 release (Jenkins)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/8c3832adb77cd993b4a24891900d5eeaaf093cdc\"\u003e\u003ccode\u003e8c3832a\u003c/code\u003e\u003c/a\u003e chore: update \u003ccode\u003e@​typescript-eslint/parser\u003c/code\u003e to ^8.56.0 (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20514\"\u003e#20514\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/8330d238ae6adb68bb6a1c9381e38cfedd990d94\"\u003e\u003ccode\u003e8330d23\u003c/code\u003e\u003c/a\u003e test: add tests for config-api (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20493\"\u003e#20493\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/37d6e91e88fa6a2ca6d8726679096acff21ba6cc\"\u003e\u003ccode\u003e37d6e91\u003c/code\u003e\u003c/a\u003e chore: remove eslint v10 prereleases from eslint-config-eslint deps (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20494\"\u003e#20494\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/da7cd0e79197ad16e17052eef99df141de6dbfb1\"\u003e\u003ccode\u003eda7cd0e\u003c/code\u003e\u003c/a\u003e refactor: cleanup error message templates (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20479\"\u003e#20479\u003c/a\u003e) (Francesco Trotta)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/84fb885d49ac810e79a9491276b4828b53d913e5\"\u003e\u003ccode\u003e84fb885\u003c/code\u003e\u003c/a\u003e chore: package.json update for \u003ccode\u003e@​eslint/js\u003c/code\u003e release (Jenkins)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/1f667344b57c4c09b548d94bcfac1f91b6e5c63d\"\u003e\u003ccode\u003e1f66734\u003c/code\u003e\u003c/a\u003e chore: add \u003ccode\u003eeslint\u003c/code\u003e to \u003ccode\u003epeerDependencies\u003c/code\u003e of \u003ccode\u003e@eslint/js\u003c/code\u003e (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20467\"\u003e#20467\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev10.0.0\u003c/h2\u003e\n\u003ch2\u003eBreaking Changes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/f9e54f43a5e497cdfa179338b431093245cb787b\"\u003e\u003ccode\u003ef9e54f4\u003c/code\u003e\u003c/a\u003e feat!: estimate rule-tester failure location (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20420\"\u003e#20420\u003c/a\u003e) (ST-DDT)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/a176319d8ade1a7d9b2d7fb8f038f55a2662325f\"\u003e\u003ccode\u003ea176319\u003c/code\u003e\u003c/a\u003e feat!: replace \u003ccode\u003echalk\u003c/code\u003e with \u003ccode\u003estyleText\u003c/code\u003e and add \u003ccode\u003ecolor\u003c/code\u003e to \u003ccode\u003eResultsMeta\u003c/code\u003e (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20227\"\u003e#20227\u003c/a\u003e) (루밀LuMir)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/c7046e6c1e03c4ca0eee4888a1f2eba4c6454f84\"\u003e\u003ccode\u003ec7046e6\u003c/code\u003e\u003c/a\u003e feat!: enable JSX reference tracking (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20152\"\u003e#20152\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/fa31a608901684fbcd9906d1907e66561d16e5aa\"\u003e\u003ccode\u003efa31a60\u003c/code\u003e\u003c/a\u003e feat!: add \u003ccode\u003ename\u003c/code\u003e to configs (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20015\"\u003e#20015\u003c/a\u003e) (Kirk Waiblinger)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/3383e7ec9028166cafc8ea7986c2f7498d0049f0\"\u003e\u003ccode\u003e3383e7e\u003c/code\u003e\u003c/a\u003e fix!: remove deprecated \u003ccode\u003eSourceCode\u003c/code\u003e methods (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20137\"\u003e#20137\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/501abd0e916a35554c58b7c0365537f1fa3880ce\"\u003e\u003ccode\u003e501abd0\u003c/code\u003e\u003c/a\u003e feat!: update dependency minimatch to v10 (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20246\"\u003e#20246\u003c/a\u003e) (renovate[bot])\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/ca4d3b40085de47561f89656a2207d09946ed45e\"\u003e\u003ccode\u003eca4d3b4\u003c/code\u003e\u003c/a\u003e fix!: stricter rule tester assertions for valid test cases (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20125\"\u003e#20125\u003c/a\u003e) (唯然)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/96512a66c86402fb0538cdcb6cd30b9073f6bf3b\"\u003e\u003ccode\u003e96512a6\u003c/code\u003e\u003c/a\u003e fix!: Remove deprecated rule context methods (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20086\"\u003e#20086\u003c/a\u003e) (Nicholas C. Zakas)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/c69fdacdb2e886b9d965568a397aa8220db3fe90\"\u003e\u003ccode\u003ec69fdac\u003c/code\u003e\u003c/a\u003e feat!: remove eslintrc support (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20037\"\u003e#20037\u003c/a\u003e) (Francesco Trotta)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/208b5cc34a8374ff81412b5bec2e0800eebfbd04\"\u003e\u003ccode\u003e208b5cc\u003c/code\u003e\u003c/a\u003e feat!: Use \u003ccode\u003eScopeManager#addGlobals()\u003c/code\u003e (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20132\"\u003e#20132\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/a2ee188ea7a38a0c6155f3d39e2b00e1d0f36e14\"\u003e\u003ccode\u003ea2ee188\u003c/code\u003e\u003c/a\u003e fix!: add \u003ccode\u003euniqueItems: true\u003c/code\u003e in \u003ccode\u003eno-invalid-regexp\u003c/code\u003e option (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20155\"\u003e#20155\u003c/a\u003e) (Tanuj Kanti)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/a89059dbf2832d417dd493ee81483227ec44e4ab\"\u003e\u003ccode\u003ea89059d\u003c/code\u003e\u003c/a\u003e feat!: Program range span entire source text (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20133\"\u003e#20133\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/39a6424373d915fa9de0d7b0caba9a4dc3da9b53\"\u003e\u003ccode\u003e39a6424\u003c/code\u003e\u003c/a\u003e fix!: assert 'text' is a string across all RuleFixer methods (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20082\"\u003e#20082\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/f28fbf846244e043c92b355b224d121b06140b44\"\u003e\u003ccode\u003ef28fbf8\u003c/code\u003e\u003c/a\u003e fix!: Deprecate \u003ccode\u003e\u0026quot;always\u0026quot;\u003c/code\u003e and \u003ccode\u003e\u0026quot;as-needed\u0026quot;\u003c/code\u003e options of the \u003ccode\u003eradix\u003c/code\u003e rule (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20223\"\u003e#20223\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/aa3fb2b233e929b37220be940575f42c280e0b98\"\u003e\u003ccode\u003eaa3fb2b\u003c/code\u003e\u003c/a\u003e fix!: tighten \u003ccode\u003efunc-names\u003c/code\u003e schema (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20119\"\u003e#20119\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/f6c0ed0311dcfee853367d5068c765d066e6b756\"\u003e\u003ccode\u003ef6c0ed0\u003c/code\u003e\u003c/a\u003e feat!: report \u003ccode\u003eeslint-env\u003c/code\u003e comments as errors (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20128\"\u003e#20128\u003c/a\u003e) (Francesco Trotta)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/4bf739fb533e59f7f0a66b65f7bc80be0f37d8db\"\u003e\u003ccode\u003e4bf739f\u003c/code\u003e\u003c/a\u003e fix!: remove deprecated \u003ccode\u003eLintMessage#nodeType\u003c/code\u003e and \u003ccode\u003eTestCaseError#type\u003c/code\u003e (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20096\"\u003e#20096\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/523c076866400670fb2192a3f55dbf7ad3469247\"\u003e\u003ccode\u003e523c076\u003c/code\u003e\u003c/a\u003e feat!: drop support for jiti \u0026lt; 2.2.0 (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20016\"\u003e#20016\u003c/a\u003e) (michael faith)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/454a292c95f34dad232411ddac06408e6383bb64\"\u003e\u003ccode\u003e454a292\u003c/code\u003e\u003c/a\u003e feat!: update \u003ccode\u003eeslint:recommended\u003c/code\u003e configuration (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20210\"\u003e#20210\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/4f880ee02992e1bf0e96ebaba679985e2d1295f1\"\u003e\u003ccode\u003e4f880ee\u003c/code\u003e\u003c/a\u003e feat!: remove \u003ccode\u003ev10_*\u003c/code\u003e and inactive \u003ccode\u003eunstable_*\u003c/code\u003e flags (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20225\"\u003e#20225\u003c/a\u003e) (sethamus)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/f18115c363a4ac7671a4c7f30ee13d57ebba330f\"\u003e\u003ccode\u003ef18115c\u003c/code\u003e\u003c/a\u003e feat!: \u003ccode\u003eno-shadow-restricted-names\u003c/code\u003e report \u003ccode\u003eglobalThis\u003c/code\u003e by default (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20027\"\u003e#20027\u003c/a\u003e) (sethamus)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/c6358c31fbd3937b92d89be2618ffdf5a774604e\"\u003e\u003ccode\u003ec6358c3\u003c/code\u003e\u003c/a\u003e feat!: Require Node.js \u003ccode\u003e^20.19.0 || ^22.13.0 || \u0026gt;=24\u003c/code\u003e (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20160\"\u003e#20160\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eFeatures\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/bff9091927811497dbf066b0e3b85ecb37d43822\"\u003e\u003ccode\u003ebff9091\u003c/code\u003e\u003c/a\u003e feat: handle \u003ccode\u003eArray.fromAsync\u003c/code\u003e in \u003ccode\u003earray-callback-return\u003c/code\u003e (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20457\"\u003e#20457\u003c/a\u003e) (Francesco Trotta)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/290c594bb50c439fb71bc75521ee5360daa8c222\"\u003e\u003ccode\u003e290c594\u003c/code\u003e\u003c/a\u003e feat: add \u003ccode\u003eself\u003c/code\u003e to \u003ccode\u003eno-implied-eval\u003c/code\u003e rule (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20468\"\u003e#20468\u003c/a\u003e) (sethamus)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/43677de07ebd6e14bfac40a46ad749ba783c45f2\"\u003e\u003ccode\u003e43677de\u003c/code\u003e\u003c/a\u003e feat: fix handling of function and class expression names in \u003ccode\u003eno-shadow\u003c/code\u003e (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20432\"\u003e#20432\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/84fb885d49ac810e79a9491276b4828b53d913e5\"\u003e\u003ccode\u003e84fb885\u003c/code\u003e\u003c/a\u003e chore: package.json update for \u003ccode\u003e@​eslint/js\u003c/code\u003e release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/1f667344b57c4c09b548d94bcfac1f91b6e5c63d\"\u003e\u003ccode\u003e1f66734\u003c/code\u003e\u003c/a\u003e chore: add \u003ccode\u003eeslint\u003c/code\u003e to \u003ccode\u003epeerDependencies\u003c/code\u003e of \u003ccode\u003e@eslint/js\u003c/code\u003e (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20467\"\u003e#20467\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/f3fbc2f60cbe2c718364feb8c3fc0452c0df3c56\"\u003e\u003ccode\u003ef3fbc2f\u003c/code\u003e\u003c/a\u003e chore: set \u003ccode\u003e@eslint/js\u003c/code\u003e version to 10.0.0 to skip releasing it (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20466\"\u003e#20466\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/b4b3127f8542c599ce2dea804b6582ebc40c993d\"\u003e\u003ccode\u003eb4b3127\u003c/code\u003e\u003c/a\u003e chore: package.json update for \u003ccode\u003e@​eslint/js\u003c/code\u003e release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/0b14059491d830a49b3577931f4f68fbcfce6be5\"\u003e\u003ccode\u003e0b14059\u003c/code\u003e\u003c/a\u003e chore: package.json update for \u003ccode\u003e@​eslint/js\u003c/code\u003e release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/fa31a608901684fbcd9906d1907e66561d16e5aa\"\u003e\u003ccode\u003efa31a60\u003c/code\u003e\u003c/a\u003e feat!: add \u003ccode\u003ename\u003c/code\u003e to configs (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20015\"\u003e#20015\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/1e2cad5f6fa47ed6ed89d2a29798dda926d50990\"\u003e\u003ccode\u003e1e2cad5\u003c/code\u003e\u003c/a\u003e chore: package.json update for \u003ccode\u003e@​eslint/js\u003c/code\u003e release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/454a292c95f34dad232411ddac06408e6383bb64\"\u003e\u003ccode\u003e454a292\u003c/code\u003e\u003c/a\u003e feat!: update \u003ccode\u003eeslint:recommended\u003c/code\u003e configuration (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20210\"\u003e#20210\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/c6358c31fbd3937b92d89be2618ffdf5a774604e\"\u003e\u003ccode\u003ec6358c3\u003c/code\u003e\u003c/a\u003e feat!: Require Node.js \u003ccode\u003e^20.19.0 || ^22.13.0 || \u0026gt;=24\u003c/code\u003e (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20160\"\u003e#20160\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/eslint/eslint/commits/v10.0.1/packages/js\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@typescript-eslint/eslint-plugin` from 8.56.0 to 8.59.4\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases\"\u003e@​typescript-eslint/eslint-plugin's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev8.59.4\u003c/h2\u003e\n\u003ch2\u003e8.59.4 (2026-05-18)\u003c/h2\u003e\n\u003ch3\u003e🩹 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-floating-promises] stack overflow when using recursive types (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12294\"\u003e#12294\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eproject-service:\u003c/strong\u003e throw error cause in \u003ccode\u003egetParsedConfigFileFromTSServer\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12321\"\u003e#12321\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003etypescript-eslint:\u003c/strong\u003e export Compatible* types from typescript-eslint to resolve pnpm TS error (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12340\"\u003e#12340\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e❤️ Thank You\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eEvyatar Daud \u003ca href=\"https://github.com/StyleShit\"\u003e\u003ccode\u003e@​StyleShit\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eKirk Waiblinger \u003ca href=\"https://github.com/kirkwaiblinger\"\u003e\u003ccode\u003e@​kirkwaiblinger\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003elumir\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.4\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003ev8.59.3\u003c/h2\u003e\n\u003ch2\u003e8.59.3 (2026-05-11)\u003c/h2\u003e\n\u003cp\u003eThis was a version bump only, there were no code changes.\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.3\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003ev8.59.2\u003c/h2\u003e\n\u003ch2\u003e8.59.2 (2026-05-04)\u003c/h2\u003e\n\u003ch3\u003e🩹 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unsafe-type-assertion] handle crash on recursive template literal types (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12150\"\u003e#12150\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-deprecated] object destructuring values should be treated as declarations (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12292\"\u003e#12292\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003erule-tester:\u003c/strong\u003e add TypeScript as a peer dependency (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12288\"\u003e#12288\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e❤️ Thank You\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eDariusz Czajkowski\u003c/li\u003e\n\u003cli\u003eDima Barabash\u003c/li\u003e\n\u003cli\u003eKirk Waiblinger \u003ca href=\"https://github.com/kirkwaiblinger\"\u003e\u003ccode\u003e@​kirkwaiblinger\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.2\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003ev8.59.1\u003c/h2\u003e\n\u003ch2\u003e8.59.1 (2026-04-27)\u003c/h2\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/CHANGELOG.md\"\u003e@​typescript-eslint/eslint-plugin's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e8.59.4 (2026-05-18)\u003c/h2\u003e\n\u003ch3\u003e🩹 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-floating-promises] stack overflow when using recursive types (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12294\"\u003e#12294\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e❤️ Thank You\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eEvyatar Daud \u003ca href=\"https://github.com/StyleShit\"\u003e\u003ccode\u003e@​StyleShit\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.4\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003e8.59.3 (2026-05-11)\u003c/h2\u003e\n\u003cp\u003eThis was a version bump only for eslint-plugin to align it with other projects, there were no code changes.\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.3\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003e8.59.2 (2026-05-04)\u003c/h2\u003e\n\u003ch3\u003e🩹 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-deprecated] object destructuring values should be treated as declarations (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12292\"\u003e#12292\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unsafe-type-assertion] handle crash on recursive template literal types (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12150\"\u003e#12150\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e❤️ Thank You\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eDima Barabash\u003c/li\u003e\n\u003cli\u003eKirk Waiblinger \u003ca href=\"https://github.com/kirkwaiblinger\"\u003e\u003ccode\u003e@​kirkwaiblinger\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.2\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003e8.59.1 (2026-04-27)\u003c/h2\u003e\n\u003ch3\u003e🩹 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-condition] treat void as nullish in no-unnecessary-condition (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12241\"\u003e#12241\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-type-arguments] handle instantiation expressions (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12220\"\u003e#12220\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-type-assertion] avoid false positive in logical assignment assertions (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12278\"\u003e#12278\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-type-assertion] preserve phantom type arguments in generic inference (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12269\"\u003e#12269\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-type-assertion] preserve index signatures in undefined unions (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12257\"\u003e#12257\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-type-assertion] fix crash \u0026quot;TypeError: checker.getTypeArguments is not a function\u0026quot; (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12246\"\u003e#12246\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e❤️ Thank You\u003c/h3\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/ca6ca1431b6d18235297a7e29feb5d98f012dff2\"\u003e\u003ccode\u003eca6ca14\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.59.4\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/4302433ae6bf93d4ddc35264ad1b951254758566\"\u003e\u003ccode\u003e4302433\u003c/code\u003e\u003c/a\u003e fix(eslint-plugin): [no-floating-promises] stack overflow when using recursiv...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/10b79f1ba8e98610a3af85152a1b3b406f91e633\"\u003e\u003ccode\u003e10b79f1\u003c/code\u003e\u003c/a\u003e chore(deps): update dependency eslint to v10.4.0 (\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin/issues/12339\"\u003e#12339\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/2a6765d9628dc776f8127c96f088bb807c0bcab2\"\u003e\u003ccode\u003e2a6765d\u003c/code\u003e\u003c/a\u003e chore: clenaup \u003ccode\u003egetAwaitedType\u003c/code\u003e from \u003ccode\u003etypescript.d.ts\u003c/code\u003e (\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin/issues/12302\"\u003e#12302\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/48e13c0261e3cb1bf4f4dfaa462cdb3a56ef7383\"\u003e\u003ccode\u003e48e13c0\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.59.3\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/e26dc8003ababf078aad4df17765ee4cea30644c\"\u003e\u003ccode\u003ee26dc80\u003c/code\u003e\u003c/a\u003e docs: update stale links to latest (\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin/issues/12313\"\u003e#12313\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/44f9625336841a8ee3eb01a9e02e49b1d7b12648\"\u003e\u003ccode\u003e44f9625\u003c/code\u003e\u003c/a\u003e chore(deps): update vitest monorepo to v4.1.5 (\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin/issues/12307\"\u003e#12307\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/2ec35f1760aade4df4c631d76d78c7ed5e136333\"\u003e\u003ccode\u003e2ec35f1\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.59.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/ec3ef25390f7daf5a9ff33a60282bdbbb49ab0f3\"\u003e\u003ccode\u003eec3ef25\u003c/code\u003e\u003c/a\u003e test: make no-useless-empty-export tests fully static (\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin/issues/12260\"\u003e#12260\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/60d0a513870d833617374ff8ea256d86ca3cbbbb\"\u003e\u003ccode\u003e60d0a51\u003c/code\u003e\u003c/a\u003e chore(eslint-plugin): switch auto-generated test cases to hand-written in no-...\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commits/v8.59.4/packages/eslint-plugin\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@typescript-eslint/parser` from 8.56.0 to 8.59.4\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases\"\u003e@​typescript-eslint/parser's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev8.59.4\u003c/h2\u003e\n\u003ch2\u003e8.59.4 (2026-05-18)\u003c/h2\u003e\n\u003ch3\u003e🩹 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-floating-promises] stack overflow when using recursive types (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12294\"\u003e#12294\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eproject-service:\u003c/strong\u003e throw error cause in \u003ccode\u003egetParsedConfigFileFromTSServer\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12321\"\u003e#12321\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003etypescript-eslint:\u003c/strong\u003e export Compatible* types from typescript-eslint to resolve pnpm TS error (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12340\"\u003e#12340\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e❤️ Thank You\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eEvyatar Daud \u003ca href=\"https://github.com/StyleShit\"\u003e\u003ccode\u003e@​StyleShit\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eKirk Waiblinger \u003ca href=\"https://github.com/kirkwaiblinger\"\u003e\u003ccode\u003e@​kirkwaiblinger\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003elumir\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.4\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003ev8.59.3\u003c/h2\u003e\n\u003ch2\u003e8.59.3 (2026-05-11)\u003c/h2\u003e\n\u003cp\u003eThis was a version bump only, there were no code changes.\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.3\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003ev8.59.2\u003c/h2\u003e\n\u003ch2\u003e8.59.2 (2026-05-04)\u003c/h2\u003e\n\u003ch3\u003e🩹 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unsafe-type-assertion] handle crash on recursive template literal types (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12150\"\u003e#12150\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-deprecated] object destructuring values should be treated as declarations (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12292\"\u003e#12292\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003erule-tester:\u003c/strong\u003e add TypeScript as a peer dependency (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12288\"\u003e#12288\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e❤️ Thank You\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eDariusz Czajkowski\u003c/li\u003e\n\u003cli\u003eDima Barabash\u003c/li\u003e\n\u003cli\u003eKirk Waiblinger \u003ca href=\"https://github.com/kirkwaiblinger\"\u003e\u003ccode\u003e@​kirkwaiblinger\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.2\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003ev8.59.1\u003c/h2\u003e\n\u003ch2\u003e8.59.1 (2026-04-27)\u003c/h2\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/parser/CHANGELOG.md\"\u003e@​typescript-eslint/parser's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e8.59.4 (2026-05-18)\u003c/h2\u003e\n\u003cp\u003eThis was a version bump only for parser to align it with other projects, there were no code changes.\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.4\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003e8.59.3 (2026-05-11)\u003c/h2\u003e\n\u003cp\u003eThis was a version bump only for parser to align it with other projects, there were no code changes.\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.3\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003e8.59.2 (2026-05-04)\u003c/h2\u003e\n\u003cp\u003eThis was a version bump only for parser to align it with other projects, there were no code changes.\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.2\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003e8.59.1 (2026-04-27)\u003c/h2\u003e\n\u003cp\u003eThis was a version bump only for parser to align it with other projects, there were no code changes.\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.1\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003e8.59.0 (2026-04-20)\u003c/h2\u003e\n\u003cp\u003eThis was a version bump only for parser to align it with other projects, there were no code changes.\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.0\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003e8.58.2 (2026-04-13)\u003c/h2\u003e\n\u003ch3\u003e🩹 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eremove tsbuildinfo cache file from published packages (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12187\"\u003e#12187\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e❤️ Thank You\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAbhijeet Singh \u003ca href=\"https://github.com/cseas\"\u003e\u003ccode\u003e@​cseas\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/ca6ca1431b6d18235297a7e29feb5d98f012dff2\"\u003e\u003ccode\u003eca6ca14\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.59.4\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/48e13c0261e3cb1bf4f4dfaa462cdb3a56ef7383\"\u003e\u003ccode\u003e48e13c0\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.59.3\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/44f9625336841a8ee3eb01a9e02e49b1d7b12648\"\u003e\u003ccode\u003e44f9625\u003c/code\u003e\u003c/a\u003e chore(deps): update vitest monorepo to v4.1.5 (\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/parser/issues/12307\"\u003e#12307\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/2ec35f1760aade4df4c631d76d78c7ed5e136333\"\u003e\u003ccode\u003e2ec35f1\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.59.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/52457932e5507b5ca01e720a541f3f8d01e09b9d\"\u003e\u003ccode\u003e5245793\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.59.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/ea9ae4f8817873480e3501145059f63e39e8d8a1\"\u003e\u003ccode\u003eea9ae4f\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.59.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/90c2803a4c250e0343598d41e973f95e743bf4ce\"\u003e\u003ccode\u003e90c2803\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.58.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/be6b49a02d68db9bdc8985e7e9e1598700fda2fa\"\u003e\u003ccode\u003ebe6b49a\u003c/code\u003e\u003c/a\u003e fix: remove tsbuildinfo cache file from published packages (\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/parser/issues/12187\"\u003e#12187\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/5311ed312eadf4e238324f2726ae0b1f3f2206e6\"\u003e\u003ccode\u003e5311ed3\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.58.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/493341709fe7d1d6433332b7bd2724e3332c7cdf\"\u003e\u003ccode\u003e4933417\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.58.0\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commits/v8.59.4/packages/parser\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `eslint` from 9.39.2 to 10.4.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/eslint/eslint/releases\"\u003eeslint's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev10.4.0\u003c/h2\u003e\n\u003ch2\u003eFeatures\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/1a45ec596af1dd5f880e6874cb8f24dafb6a7ecf\"\u003e\u003ccode\u003e1a45ec5\u003c/code\u003e\u003c/a\u003e feat: check sequence expressions in \u003ccode\u003efor-direction\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20701\"\u003e#20701\u003c/a\u003e) (kuldeep kumar)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/450040bd89b989b3531824c6be45feb5fe3d936b\"\u003e\u003ccode\u003e450040b\u003c/code\u003e\u003c/a\u003e feat: add \u003ccode\u003eincludeIgnoreFile()\u003c/code\u003e to \u003ccode\u003eeslint/config\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20735\"\u003e#20735\u003c/a\u003e) (Kirk Waiblinger)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eBug Fixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/544c0c3da589166ad8e5d634f35d3d06701c57be\"\u003e\u003ccode\u003e544c0c3\u003c/code\u003e\u003c/a\u003e fix: escape code path DOT labels in debug output (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20866\"\u003e#20866\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/6799431203f2579632d0870f98ba132067f4040c\"\u003e\u003ccode\u003e6799431\u003c/code\u003e\u003c/a\u003e fix: update dependency \u003ccode\u003e@​eslint/config-helpers\u003c/code\u003e to ^0.6.0 (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20850\"\u003e#20850\u003c/a\u003e) (renovate[bot])\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/f078fef5005dceb14fc162aab7c7200e027688dd\"\u003e\u003ccode\u003ef078fef\u003c/code\u003e\u003c/a\u003e fix: handle non-array deprecated rule replacements (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20825\"\u003e#20825\u003c/a\u003e) (xbinaryx)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eDocumentation\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/7e52a7151fb92eec0e0f67fe4e5ddbd1ccce796f\"\u003e\u003ccode\u003e7e52a71\u003c/code\u003e\u003c/a\u003e docs: add mention of \u003ccode\u003e@eslint-react/eslint-plugin\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20869\"\u003e#20869\u003c/a\u003e) (Pavel)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/db3468ba746407d7f286f18f7ea9db6df0e3bc08\"\u003e\u003ccode\u003edb3468b\u003c/code\u003e\u003c/a\u003e docs: tweak wording around ambiguous CJS-vs-ESM config (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20865\"\u003e#20865\u003c/a\u003e) (Kirk Waiblinger)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/90846643ec6e97d447ae0d831fabe6d17b0a998a\"\u003e\u003ccode\u003e9084664\u003c/code\u003e\u003c/a\u003e docs: Update README (GitHub Actions Bot)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/9cc73875046e3c4b8313644cbb1e99e26b36bd3f\"\u003e\u003ccode\u003e9cc7387\u003c/code\u003e\u003c/a\u003e docs: Update README (GitHub Actions Bot)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/3d7b5484407403817aa9071a394d336d8ea96eb5\"\u003e\u003ccode\u003e3d7b548\u003c/code\u003e\u003c/a\u003e docs: Update README (GitHub Actions Bot)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/191ec3c0a3f94ce0f110df761f0b2b8949011ccb\"\u003e\u003ccode\u003e191ec3c\u003c/code\u003e\u003c/a\u003e docs: Update README (GitHub Actions Bot)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eChores\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/6616856f28fa514a30f87b5539fc100d739a94bf\"\u003e\u003ccode\u003e6616856\u003c/code\u003e\u003c/a\u003e chore: upgrade knip to v6 (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20875\"\u003e#20875\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/d13b084a3ad02f926e9addaa35fc383759ea5554\"\u003e\u003ccode\u003ed13b084\u003c/code\u003e\u003c/a\u003e ci: ensure auto-created PRs run CI (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20860\"\u003e#20860\u003c/a\u003e) (lumir)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/e71c7af86dce9acc1d18cb12d2184309f6841594\"\u003e\u003ccode\u003ee71c7af\u003c/code\u003e\u003c/a\u003e ci: bump pnpm/action-setup from 6.0.5 to 6.0.7 (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20862\"\u003e#20862\u003c/a\u003e) (dependabot[bot])\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/d84393dea170f54191fd20c8268b52c81c0ccd99\"\u003e\u003ccode\u003ed84393d\u003c/code\u003e\u003c/a\u003e test: add unit tests for SuppressionsService.applySuppressions() (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20863\"\u003e#20863\u003c/a\u003e) (kuldeep kumar)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/24db8cb8e6f07fba667121777a15b1785486be94\"\u003e\u003ccode\u003e24db8cb\u003c/code\u003e\u003c/a\u003e test: add tests for SuppressionsService.save() (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20802\"\u003e#20802\u003c/a\u003e) (kuldeep kumar)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/2ef0549cac4a9537e4c3a26b9f3edd4c99476bf6\"\u003e\u003ccode\u003e2ef0549\u003c/code\u003e\u003c/a\u003e chore: update ecosystem plugins (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20857\"\u003e#20857\u003c/a\u003e) (github-actions[bot])\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/a4297918d264d229a06cd96051ef9b91c7b86732\"\u003e\u003ccode\u003ea429791\u003c/code\u003e\u003c/a\u003e ci: remove \u003ccode\u003eeslint-webpack-plugin\u003c/code\u003e types integration test (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20668\"\u003e#20668\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/9e37386aa7f2ce220b2ef74a6afbac5f6b3527c5\"\u003e\u003ccode\u003e9e37386\u003c/code\u003e\u003c/a\u003e chore: replace \u003ccode\u003erecast\u003c/code\u003e with range approach in code-sample-minimizer (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20682\"\u003e#20682\u003c/a\u003e) (Copilot)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/0dd1f9ffc9a07704d46e2a4c8d4ccc0d0908b0c0\"\u003e\u003ccode\u003e0dd1f9f\u003c/code\u003e\u003c/a\u003e test: disable warning for \u003ccode\u003evm.constants.USE_MAIN_CONTEXT_DEFAULT_LOADER\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20845\"\u003e#20845\u003c/a\u003e) (Francesco Trotta)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/9da3c7bc92d9579f8db19ecb56e718538d09db2b\"\u003e\u003ccode\u003e9da3c7b\u003c/code\u003e\u003c/a\u003e refactor: remove deprecated \u003ccode\u003emeta.language\u003c/code\u003e and migrate \u003ccode\u003emeta.dialects\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20716\"\u003e#20716\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/2099ed12a0a74c3d7f0808514362af2499b4fe2b\"\u003e\u003ccode\u003e2099ed1\u003c/code\u003e\u003c/a\u003e refactor: add \u003ccode\u003emeta.defaultOptions\u003c/code\u003e to more rules, enable linting (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20800\"\u003e#20800\u003c/a\u003e) (xbinaryx)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/f1dfbc9ca57196de7092e1888cc99427bd6fe06e\"\u003e\u003ccode\u003ef1dfbc9\u003c/code\u003e\u003c/a\u003e chore: update ecosystem plugins (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20836\"\u003e#20836\u003c/a\u003e) (github-actions[bot])\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/c75941390c14728806cd4baef4f6072f6de78318\"\u003e\u003ccode\u003ec759413\u003c/code\u003e\u003c/a\u003e ci: bump pnpm/action-setup from 6.0.3 to 6.0.5 (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20843\"\u003e#20843\u003c/a\u003e) (dependabot[bot])\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/5b817d6fdc9ae2c35b528dc662b2eca8f40f64aa\"\u003e\u003ccode\u003e5b817d6\u003c/code\u003e\u003c/a\u003e test: add unit tests for lib/shared/ast-utils (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20838\"\u003e#20838\u003c/a\u003e) (kuldeep kumar)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/1c13ae3934c198c494e5958fa3a68b33244ff06a\"\u003e\u003ccode\u003e1c13ae3\u003c/code\u003e\u003c/a\u003e test: add unit tests for lib/shared/severity (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20835\"\u003e#20835\u003c/a\u003e) (kuldeep kumar)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev10.3.0\u003c/h2\u003e\n\u003ch2\u003eFeatures\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/379571a975f2b24d88037b9de2e72ec61d004130\"\u003e\u003ccode\u003e379571a\u003c/code\u003e\u003c/a\u003e feat: add suggestions for no-unused-private-class-members (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20773\"\u003e#20773\u003c/a\u003e) (sethamus)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eBug Fixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/b6ae5cf07b9b51802367539cb24b245b61eaa37c\"\u003e\u003ccode\u003eb6ae5cf\u003c/code\u003e\u003c/a\u003e fix: handle unavailable require cache (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20812\"\u003e#20812\u003c/a\u003e) (Simon Podlipsky)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/6fb3685bcbe9a6f72fd7dfb9129686b6fb96b0bd\"\u003e\u003ccode\u003e6fb3685\u003c/code\u003e\u003c/a\u003e fix: rule suggestions cause continuation in class body (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20787\"\u003e#20787\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eDocumentation\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/32cc7ab4ec653ce89da92deb5c40a9f4fc707fe5\"\u003e\u003ccode\u003e32cc7ab\u003c/code\u003e\u003c/a\u003e docs: fix typos in docs and comments (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20809\"\u003e#20809\u003c/a\u003e) (Tanuj Kanti)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/7f479376a2fa463d823ab762db6bb37ce8d2ee8f\"\u003e\u003ccode\u003e7f47937\u003c/code\u003e\u003c/a\u003e docs: Update README (GitHub Actions Bot)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eChores\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/d32235ec19ceea211fa86452afa383ca05f5c2f9\"\u003e\u003ccode\u003ed32235e\u003c/code\u003e\u003c/a\u003e ci: use pnpm in \u003ccode\u003eeslint-flat-config-utils\u003c/code\u003e type integration test (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20826\"\u003e#20826\u003c/a\u003e) (Francesco Trotta)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/3ffb14ea517de750ed1181579ef844af342e4096\"\u003e\u003ccode\u003e3ffb14e\u003c/code\u003e\u003c/a\u003e chore: clean up typos in comments and JSDoc (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20821\"\u003e#20821\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/452c4010c07dc2e36fe6ec6a8c48298878e86887\"\u003e\u003ccode\u003e452c401\u003c/code\u003e\u003c/a\u003e 10.4.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/b6417e8b55c9525070d6e168b485ce6ff21688ed\"\u003e\u003ccode\u003eb6417e8\u003c/code\u003e\u003c/a\u003e Build: changelog update for 10.4.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/6616856f28fa514a30f87b5539fc100d739a94bf\"\u003e\u003ccode\u003e6616856\u003c/code\u003e\u003c/a\u003e chore: upgrade knip to v6 (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20875\"\u003e#20875\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/d13b084a3ad02f926e9addaa35fc383759ea5554\"\u003e\u003ccode\u003ed13b084\u003c/code\u003e\u003c/a\u003e ci: ensure auto-created PRs run CI (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20860\"\u003e#20860\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/7e52a7151fb92eec0e0f67fe4e5ddbd1ccce796f\"\u003e\u003ccode\u003e7e52a71\u003c/code\u003e\u003c/a\u003e docs: add mention of \u003ccode\u003e@eslint-react/eslint-plugin\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20869\"\u003e#20869\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/e71c7af86dce9acc1d18cb12d2184309f6841594\"\u003e\u003ccode\u003ee71c7af\u003c/code\u003e\u003c/a\u003e ci: bump pnpm/action-setup from 6.0.5 to 6.0.7 (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20862\"\u003e#20862\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/544c0c3da589166ad8e5d634f35d3d06701c57be\"\u003e\u003ccode\u003e544c0c3\u003c/code\u003e\u003c/a\u003e fix: escape code path DOT labels in debug output (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20866\"\u003e#20866\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/db3468ba746407d7f286f18f7ea9db6df0e3bc08\"\u003e\u003ccode\u003edb3468b\u003c/code\u003e\u003c/a\u003e docs: tweak wording around ambiguous CJS-vs-ESM config (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20865\"\u003e#20865\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/d84393dea170f54191fd20c8268b52c81c0ccd99\"\u003e\u003ccode\u003ed84393d\u003c/code\u003e\u003c/a\u003e test: add unit tests for SuppressionsService.applySuppressions() (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20863\"\u003e#20863\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/90846643ec6e97d447ae0d831fabe6d17b0a998a\"\u003e\u003ccode\u003e9084664\u003c/code\u003e\u003c/a\u003e docs: Update README\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/eslint/eslint/compare/v9.39.2...v10.4.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `eslint-plugin-react-hooks` from 7.0.1 to 7.1.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/facebook/react/releases\"\u003eeslint-plugin-react-hooks's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eeslint-plugin-react-hooks@7.1.1 (April 17, 2026)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eNote:\u003c/strong\u003e 7.1.0 accidentally removed the \u003ccode\u003ecomponent-hook-factories\u003c/code\u003e rule, causing errors for users who referenced it in their ESLint config. This is now fixed.\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdd deprecated no-op \u003ccode\u003ecomponent-hook-factories\u003c/code\u003e rule for backwards compatibility. (\u003ca href=\"https://github.com/mofeiZ\"\u003e\u003ccode\u003e@​mofeiZ\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/36307\"\u003e#36307\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eeslint-plugin-react-hooks@7.1.0 (April 16, 2026)\u003c/h2\u003e\n\u003cp\u003eThis release adds ESLint v10 support, improves performance by skipping compilation for non-React files, and includes compiler lint improvements including better \u003ccode\u003eset-state-in-effect\u003c/code\u003e detection, improved ref validation, and more helpful error reporting.\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdd ESLint v10 support. (\u003ca href=\"https://github.com/azat-io\"\u003e\u003ccode\u003e@​azat-io\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/35720\"\u003e#35720\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSkip compilation for non-React files to improve performance. (\u003ca href=\"https://github.com/josephsavona\"\u003e\u003ccode\u003e@​josephsavona\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/35589\"\u003e#35589\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix exhaustive deps bug with Flow type casting. (\u003ca href=\"https://github.com/jorge-cab\"\u003e\u003ccode\u003e@​jorge-cab\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/35691\"\u003e#35691\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix \u003ccode\u003euseEffectEvent\u003c/code\u003e checks in component syntax. (\u003ca href=\"https://github.com/jbrown215\"\u003e\u003ccode\u003e@​jbrown215\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/35041\"\u003e#35041\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eImproved \u003ccode\u003eset-state-in-effect\u003c/code\u003e validation with fewer false negatives. (\u003ca href=\"https://github.com/jorge-cab\"\u003e\u003ccode\u003e@​jorge-cab\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/35134\"\u003e#35134\u003c/a\u003e, \u003ca href=\"https://github.com/josephsavona\"\u003e\u003ccode\u003e@​josephsavona\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/35147\"\u003e#35147\u003c/a\u003e, \u003ca href=\"https://github.com/jackpope\"\u003e\u003ccode\u003e@​jackpope\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/35214\"\u003e#35214\u003c/a\u003e, \u003ca href=\"https://github.com/chesnokov-tony\"\u003e\u003ccode\u003e@​chesnokov-tony\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/35419\"\u003e#35419\u003c/a\u003e, \u003ca href=\"https://github.com/jsleitor\"\u003e\u003ccode\u003e@​jsleitor\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/36107\"\u003e#36107\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eImproved ref validation for non-mutating functions and event handler props. (\u003ca href=\"https://github.com/josephsavona\"\u003e\u003ccode\u003e@​josephsavona\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/35893\"\u003e#35893\u003c/a\u003e, \u003ca href=\"https://github.com/kolvian\"\u003e\u003ccode\u003e@​kolvian\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/35062\"\u003e#35062\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCompiler now reports all errors instead of stopping at the first. (\u003ca href=\"https://github.com/josephsavona\"\u003e\u003ccode\u003e@​josephsavona\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/35873\"\u003e#35873\u003c/a\u003e–\u003ca href=\"https://redirect.github.com/facebook/react/pull/35884\"\u003e#35884\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eImproved source locations and error display in compiler diagnostics. (\u003ca href=\"https://github.com/nathanmarks\"\u003e\u003ccode\u003e@​nathanmarks\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/35348\"\u003e#35348\u003c/a\u003e, \u003ca href=\"https://github.com/josephsavona\"\u003e\u003ccode\u003e@​josephsavona\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/34963\"\u003e#34963\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/facebook/react/blob/main/packages/eslint-plugin-react-hooks/CHANGELOG.md\"\u003eeslint-plugin-react-hooks's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e7.1.1\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eNote:\u003c/strong\u003e 7.1.0 accidentally removed the \u003ccode\u003ecomponent-hook-factories\u003c/code\u003e rule, causing errors for users who referenced it in their ESLint config. This is now fixed.\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdd deprecated no-op \u003ccode\u003ecomponent-hook-factories\u003c/code\u003e rule for backwards compatibility. (\u003ca href=\"https://github.com/mofeiZ\"\u003e\u003ccode\u003e@​mofeiZ\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/36307\"\u003e#36307\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e7.1.0\u003c/h2\u003e\n\u003cp\u003eThis release adds ESLint v10 support, improves performance by skipping compilation for non-React files, and includes compiler lint improvements including better \u003ccode\u003eset-state-in-effect\u003c/code\u003e detection, improved ref validation, and more helpful error reporting.\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdd ESLint v10 support. (\u003ca href=\"https://github.com/azat-io\"\u003e\u003ccode\u003e@​azat-io\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/35720\"\u003e#35720\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSkip compilation for non-React files to improve performance. (\u003ca href=\"https://github.com/josephsavona\"\u003e\u003ccode\u003e@​josephsavona\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redire...\n\n_Description has been truncated_","html_url":"https://github.com/mr-ElAmine/test-1/pull/8","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/mr-ElAmine%2Ftest-1/issues/8","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/8/packages"},{"uuid":"4514467552","node_id":"PR_kwDORiBhSM7e6i26","number":12,"state":"open","title":"deps(deps): bump the all-dependencies group across 1 directory with 65 updates","user":"dependabot[bot]","labels":[],"assignees":[],"locked":false,"comments_count":1,"pull_request":true,"closed_at":null,"author_association":null,"state_reason":null,"created_at":"2026-05-25T05:20:24.000Z","updated_at":"2026-05-25T05:20:25.000Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"deps(deps): bump","group_name":"all-dependencies","update_count":65,"packages":[{"name":"@eslint-react/eslint-plugin","old_version":"2.13.0","new_version":"5.8.5","repository_url":"https://github.com/Rel1cx/eslint-react"},{"name":"@typescript-eslint/eslint-plugin","old_version":"8.56.1","new_version":"8.59.4","repository_url":"https://github.com/typescript-eslint/typescript-eslint"},{"name":"@typescript-eslint/parser","old_version":"8.56.1","new_version":"8.59.4","repository_url":"https://github.com/typescript-eslint/typescript-eslint"},{"name":"eslint","old_version":"10.0.3","new_version":"10.4.0","repository_url":"https://github.com/eslint/eslint"},{"name":"eslint-plugin-react-hooks","old_version":"7.0.1","new_version":"7.1.1","repository_url":"https://github.com/facebook/react"},{"name":"globals","old_version":"17.4.0","new_version":"17.6.0","repository_url":"https://github.com/sindresorhus/globals"},{"name":"graphql","old_version":"16.13.1","new_version":"16.14.0","repository_url":"https://github.com/graphql/graphql-js"},{"name":"happy-dom","old_version":"20.8.3","new_version":"20.9.0","repository_url":"https://github.com/capricorn86/happy-dom"},{"name":"jiti","old_version":"2.6.1","new_version":"2.7.0","repository_url":"https://github.com/unjs/jiti"},{"name":"lint-staged","old_version":"16.3.2","new_version":"17.0.5","repository_url":"https://github.com/lint-staged/lint-staged"},{"name":"mermaid","old_version":"11.12.3","new_version":"11.15.0","repository_url":"https://github.com/mermaid-js/mermaid"},{"name":"prettier","old_version":"3.8.1","new_version":"3.8.3","repository_url":"https://github.com/prettier/prettier"},{"name":"react","old_version":"19.2.4","new_version":"19.2.6","repository_url":"https://github.com/facebook/react"},{"name":"@types/react","old_version":"19.2.14","new_version":"19.2.15","repository_url":"https://github.com/DefinitelyTyped/DefinitelyTyped"},{"name":"typescript","old_version":"5.9.3","new_version":"6.0.3","repository_url":"https://github.com/microsoft/TypeScript"},{"name":"typescript-eslint","old_version":"8.56.1","new_version":"8.59.4","repository_url":"https://github.com/typescript-eslint/typescript-eslint"},{"name":"typescript-language-server","old_version":"5.1.3","new_version":"5.3.0","repository_url":"https://github.com/typescript-language-server/typescript-language-server"},{"name":"vite","old_version":"7.3.1","new_version":"8.0.14","repository_url":"https://github.com/vitejs/vite"},{"name":"vitepress","old_version":"2.0.0-alpha.16","new_version":"2.0.0-alpha.17","repository_url":"https://github.com/vuejs/vitepress"},{"name":"vitepress-plugin-llms","old_version":"1.11.0","new_version":"1.13.0","repository_url":"https://github.com/okineadev/vitepress-plugin-llms"},{"name":"vitest","old_version":"4.0.18","new_version":"4.1.7","repository_url":"https://github.com/vitest-dev/vitest"},{"name":"wrangler","old_version":"4.71.0","new_version":"4.94.0","repository_url":"https://github.com/cloudflare/workers-sdk"},{"name":"@anthropic-ai/sdk","old_version":"0.52.0","new_version":"0.98.0","repository_url":"https://github.com/anthropics/anthropic-sdk-typescript"},{"name":"@trpc/server","old_version":"11.12.0","new_version":"11.17.0","repository_url":"https://github.com/trpc/trpc"},{"name":"better-auth","old_version":"1.5.4","new_version":"1.6.11","repository_url":"https://github.com/better-auth/better-auth"},{"name":"drizzle-orm","old_version":"0.45.1","new_version":"0.45.2","repository_url":"https://github.com/drizzle-team/drizzle-orm"},{"name":"postgres","old_version":"3.4.8","new_version":"3.4.9","repository_url":"https://github.com/porsager/postgres"},{"name":"resend","old_version":"6.9.3","new_version":"6.12.3","repository_url":"https://github.com/resend/resend-node"},{"name":"@cloudflare/workers-types","old_version":"4.20260307.1","new_version":"4.20260525.1","repository_url":"https://github.com/cloudflare/workerd"},{"name":"@types/bun","old_version":"1.3.10","new_version":"1.3.14","repository_url":"https://github.com/DefinitelyTyped/DefinitelyTyped"},{"name":"hono","old_version":"4.12.5","new_version":"4.12.23","repository_url":"https://github.com/honojs/hono"},{"name":"@tanstack/react-query","old_version":"5.90.21","new_version":"5.100.14","repository_url":"https://github.com/TanStack/query"},{"name":"@tanstack/react-router","old_version":"1.166.3","new_version":"1.170.8","repository_url":"https://github.com/TanStack/router"},{"name":"@trpc/client","old_version":"11.12.0","new_version":"11.17.0","repository_url":"https://github.com/trpc/trpc"},{"name":"@trpc/tanstack-react-query","old_version":"11.12.0","new_version":"11.17.0","repository_url":"https://github.com/trpc/trpc"},{"name":"jotai","old_version":"2.18.0","new_version":"2.20.0","repository_url":"https://github.com/pmndrs/jotai"},{"name":"jotai-effect","old_version":"2.2.3","new_version":"2.3.1","repository_url":"https://github.com/jotaijs/jotai-effect"},{"name":"lucide-react","old_version":"0.577.0","new_version":"1.16.0","repository_url":"https://github.com/lucide-icons/lucide"},{"name":"motion","old_version":"12.35.2","new_version":"12.40.0","repository_url":"https://github.com/motiondivision/motion"},{"name":"react-dom","old_version":"19.2.4","new_version":"19.2.6","repository_url":"https://github.com/facebook/react"},{"name":"react-error-boundary","old_version":"6.1.1","new_version":"6.1.2","repository_url":"https://github.com/bvaughn/react-error-boundary"},{"name":"recharts","old_version":"2.15.4","new_version":"3.8.1","repository_url":"https://github.com/recharts/recharts"},{"name":"tailwind-merge","old_version":"3.5.0","new_version":"3.6.0","repository_url":"https://github.com/dcastil/tailwind-merge"},{"name":"@tailwindcss/postcss","old_version":"4.2.1","new_version":"4.3.0","repository_url":"https://github.com/tailwindlabs/tailwindcss"},{"name":"@tanstack/react-query-devtools","old_version":"5.91.3","new_version":"5.100.14","repository_url":"https://github.com/TanStack/query"},{"name":"@tanstack/react-router-devtools","old_version":"1.166.3","new_version":"1.167.0","repository_url":"https://github.com/TanStack/router"},{"name":"@tanstack/router-plugin","old_version":"1.166.3","new_version":"1.168.11","repository_url":"https://github.com/TanStack/router"},{"name":"@types/node","old_version":"25.3.5","new_version":"25.9.1","repository_url":"https://github.com/DefinitelyTyped/DefinitelyTyped"},{"name":"@vitejs/plugin-react","old_version":"5.1.4","new_version":"6.0.2","repository_url":"https://github.com/vitejs/vite-plugin-react"},{"name":"@vitejs/plugin-react-swc","old_version":"4.2.3","new_version":"4.3.1","repository_url":"https://github.com/vitejs/vite-plugin-react"},{"name":"autoprefixer","old_version":"10.4.27","new_version":"10.5.0","repository_url":"https://github.com/postcss/autoprefixer"},{"name":"globby","old_version":"16.1.1","new_version":"16.2.0","repository_url":"https://github.com/sindresorhus/globby"},{"name":"@react-email/components","old_version":"1.0.8","new_version":"1.0.12","repository_url":"https://github.com/resend/react-email"},{"name":"@react-email/render","old_version":"2.0.4","new_version":"2.0.8","repository_url":"https://github.com/resend/react-email"},{"name":"@react-email/preview-server","old_version":"5.2.9","new_version":"5.2.10","repository_url":"https://github.com/resend/react-email"},{"name":"react-email","old_version":"5.2.9","new_version":"6.3.2","repository_url":"https://github.com/resend/react-email"},{"name":"@astrojs/react","old_version":"4.4.2","new_version":"5.0.5","repository_url":"https://github.com/withastro/astro"},{"name":"astro","old_version":"5.18.0","new_version":"6.3.7","repository_url":"https://github.com/withastro/astro"},{"name":"dotenv","old_version":"17.3.1","new_version":"17.4.2","repository_url":"https://github.com/motdotla/dotenv"},{"name":"drizzle-kit","old_version":"0.31.9","new_version":"0.31.10","repository_url":"https://github.com/drizzle-team/drizzle-orm"},{"name":"@modelcontextprotocol/sdk","old_version":"1.27.1","new_version":"1.29.0","repository_url":"https://github.com/modelcontextprotocol/typescript-sdk"},{"name":"got","old_version":"14.6.6","new_version":"15.0.5","repository_url":"https://github.com/sindresorhus/got"}],"path":null,"ecosystem":"npm"},"body":"Bumps the all-dependencies group with 62 updates in the / directory:\n\n| Package | From | To |\n| --- | --- | --- |\n| [@eslint-react/eslint-plugin](https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin) | `2.13.0` | `5.8.5` |\n| [@typescript-eslint/eslint-plugin](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin) | `8.56.1` | `8.59.4` |\n| [@typescript-eslint/parser](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/parser) | `8.56.1` | `8.59.4` |\n| [eslint](https://github.com/eslint/eslint) | `10.0.3` | `10.4.0` |\n| [eslint-plugin-react-hooks](https://github.com/facebook/react/tree/HEAD/packages/eslint-plugin-react-hooks) | `7.0.1` | `7.1.1` |\n| [globals](https://github.com/sindresorhus/globals) | `17.4.0` | `17.6.0` |\n| [graphql](https://github.com/graphql/graphql-js) | `16.13.1` | `16.14.0` |\n| [happy-dom](https://github.com/capricorn86/happy-dom) | `20.8.3` | `20.9.0` |\n| [jiti](https://github.com/unjs/jiti) | `2.6.1` | `2.7.0` |\n| [lint-staged](https://github.com/lint-staged/lint-staged) | `16.3.2` | `17.0.5` |\n| [mermaid](https://github.com/mermaid-js/mermaid) | `11.12.3` | `11.15.0` |\n| [prettier](https://github.com/prettier/prettier) | `3.8.1` | `3.8.3` |\n| [react](https://github.com/facebook/react/tree/HEAD/packages/react) | `19.2.4` | `19.2.6` |\n| [@types/react](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/react) | `19.2.14` | `19.2.15` |\n| [typescript](https://github.com/microsoft/TypeScript) | `5.9.3` | `6.0.3` |\n| [typescript-eslint](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/typescript-eslint) | `8.56.1` | `8.59.4` |\n| [typescript-language-server](https://github.com/typescript-language-server/typescript-language-server) | `5.1.3` | `5.3.0` |\n| [vite](https://github.com/vitejs/vite/tree/HEAD/packages/vite) | `7.3.1` | `8.0.14` |\n| [vitepress](https://github.com/vuejs/vitepress) | `2.0.0-alpha.16` | `2.0.0-alpha.17` |\n| [vitepress-plugin-llms](https://github.com/okineadev/vitepress-plugin-llms) | `1.11.0` | `1.13.0` |\n| [vitest](https://github.com/vitest-dev/vitest/tree/HEAD/packages/vitest) | `4.0.18` | `4.1.7` |\n| [wrangler](https://github.com/cloudflare/workers-sdk/tree/HEAD/packages/wrangler) | `4.71.0` | `4.94.0` |\n| [@anthropic-ai/sdk](https://github.com/anthropics/anthropic-sdk-typescript) | `0.52.0` | `0.98.0` |\n| [@trpc/server](https://github.com/trpc/trpc/tree/HEAD/packages/server) | `11.12.0` | `11.17.0` |\n| [better-auth](https://github.com/better-auth/better-auth/tree/HEAD/packages/better-auth) | `1.5.4` | `1.6.11` |\n| [drizzle-orm](https://github.com/drizzle-team/drizzle-orm) | `0.45.1` | `0.45.2` |\n| [postgres](https://github.com/porsager/postgres) | `3.4.8` | `3.4.9` |\n| [resend](https://github.com/resend/resend-node) | `6.9.3` | `6.12.3` |\n| [@cloudflare/workers-types](https://github.com/cloudflare/workerd) | `4.20260307.1` | `4.20260525.1` |\n| [@types/bun](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/bun) | `1.3.10` | `1.3.14` |\n| [hono](https://github.com/honojs/hono) | `4.12.5` | `4.12.23` |\n| [@tanstack/react-query](https://github.com/TanStack/query/tree/HEAD/packages/react-query) | `5.90.21` | `5.100.14` |\n| [@tanstack/react-router](https://github.com/TanStack/router/tree/HEAD/packages/react-router) | `1.166.3` | `1.170.8` |\n| [@trpc/client](https://github.com/trpc/trpc/tree/HEAD/packages/client) | `11.12.0` | `11.17.0` |\n| [@trpc/tanstack-react-query](https://github.com/trpc/trpc/tree/HEAD/packages/tanstack-react-query) | `11.12.0` | `11.17.0` |\n| [jotai](https://github.com/pmndrs/jotai) | `2.18.0` | `2.20.0` |\n| [jotai-effect](https://github.com/jotaijs/jotai-effect) | `2.2.3` | `2.3.1` |\n| [lucide-react](https://github.com/lucide-icons/lucide/tree/HEAD/packages/lucide-react) | `0.577.0` | `1.16.0` |\n| [motion](https://github.com/motiondivision/motion) | `12.35.2` | `12.40.0` |\n| [react-dom](https://github.com/facebook/react/tree/HEAD/packages/react-dom) | `19.2.4` | `19.2.6` |\n| [react-error-boundary](https://github.com/bvaughn/react-error-boundary) | `6.1.1` | `6.1.2` |\n| [recharts](https://github.com/recharts/recharts) | `2.15.4` | `3.8.1` |\n| [tailwind-merge](https://github.com/dcastil/tailwind-merge) | `3.5.0` | `3.6.0` |\n| [@tailwindcss/postcss](https://github.com/tailwindlabs/tailwindcss/tree/HEAD/packages/@tailwindcss-postcss) | `4.2.1` | `4.3.0` |\n| [@tanstack/react-query-devtools](https://github.com/TanStack/query/tree/HEAD/packages/react-query-devtools) | `5.91.3` | `5.100.14` |\n| [@tanstack/react-router-devtools](https://github.com/TanStack/router/tree/HEAD/packages/react-router-devtools) | `1.166.3` | `1.167.0` |\n| [@tanstack/router-plugin](https://github.com/TanStack/router/tree/HEAD/packages/router-plugin) | `1.166.3` | `1.168.11` |\n| [@types/node](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/node) | `25.3.5` | `25.9.1` |\n| [@vitejs/plugin-react](https://github.com/vitejs/vite-plugin-react/tree/HEAD/packages/plugin-react) | `5.1.4` | `6.0.2` |\n| [@vitejs/plugin-react-swc](https://github.com/vitejs/vite-plugin-react/tree/HEAD/packages/plugin-react-swc) | `4.2.3` | `4.3.1` |\n| [autoprefixer](https://github.com/postcss/autoprefixer) | `10.4.27` | `10.5.0` |\n| [globby](https://github.com/sindresorhus/globby) | `16.1.1` | `16.2.0` |\n| [@react-email/components](https://github.com/resend/react-email/tree/HEAD/packages/components) | `1.0.8` | `1.0.12` |\n| [@react-email/render](https://github.com/resend/react-email/tree/HEAD/packages/render) | `2.0.4` | `2.0.8` |\n| [@react-email/preview-server](https://github.com/resend/react-email/tree/HEAD/packages/preview-server) | `5.2.9` | `5.2.10` |\n| [react-email](https://github.com/resend/react-email/tree/HEAD/packages/react-email) | `5.2.9` | `6.3.2` |\n| [@astrojs/react](https://github.com/withastro/astro/tree/HEAD/packages/integrations/react) | `4.4.2` | `5.0.5` |\n| [astro](https://github.com/withastro/astro/tree/HEAD/packages/astro) | `5.18.0` | `6.3.7` |\n| [dotenv](https://github.com/motdotla/dotenv) | `17.3.1` | `17.4.2` |\n| [drizzle-kit](https://github.com/drizzle-team/drizzle-orm) | `0.31.9` | `0.31.10` |\n| [@modelcontextprotocol/sdk](https://github.com/modelcontextprotocol/typescript-sdk) | `1.27.1` | `1.29.0` |\n| [got](https://github.com/sindresorhus/got) | `14.6.6` | `15.0.5` |\n\n\nUpdates `@eslint-react/eslint-plugin` from 2.13.0 to 5.8.5\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/Rel1cx/eslint-react/releases\"\u003e@​eslint-react/eslint-plugin's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev5.8.5 (2026-05-24)\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003ch3\u003e📝 Documentation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdded rule implementation patterns guide (\u003ccode\u003edocs/rule-implementation-patterns.md\u003c/code\u003e) and term-based rule patterns guide (\u003ccode\u003edocs/term-based-rule-patterns.md\u003c/code\u003e).\u003c/li\u003e\n\u003cli\u003eLowered minimum TypeScript version requirement from \u003ccode\u003e5.1.0\u003c/code\u003e to \u003ccode\u003e5.0.0\u003c/code\u003e across README and documentation.\u003c/li\u003e\n\u003cli\u003eFixed textlint war-metaphor warnings and refined \u003ccode\u003e.textlintrc.json\u003c/code\u003e patterns.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🏗️ Internal\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdjusted formatting across configuration and script files (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1795\"\u003e#1795\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFixed a typo in the CI test workflow step.\u003c/li\u003e\n\u003cli\u003eAdded regression tests for oxc issues compatibility verification (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1796\"\u003e#1796\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eBumped dependencies across workspace packages:\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e@effect/language-service\u003c/code\u003e to \u003ccode\u003e^0.86.2\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@takumi-rs/image-response\u003c/code\u003e to \u003ccode\u003e^1.3.0\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@tsconfig/vite-react\u003c/code\u003e to \u003ccode\u003e^8.0.6\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@types/node\u003c/code\u003e to \u003ccode\u003e^25.9.1\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@types/react\u003c/code\u003e to \u003ccode\u003e^19.2.15\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eeslint-plugin-package-json\u003c/code\u003e to \u003ccode\u003e^1.1.0\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003efumadocs-core\u003c/code\u003e to \u003ccode\u003e^16.9.0\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003efumadocs-mdx\u003c/code\u003e to \u003ccode\u003e^15.0.7\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003efumadocs-ui\u003c/code\u003e to \u003ccode\u003e^16.9.0\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003elru-cache\u003c/code\u003e to \u003ccode\u003e11.5.0\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003enx\u003c/code\u003e to \u003ccode\u003e^22.7.3\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003epostcss\u003c/code\u003e to \u003ccode\u003e^8.5.15\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003evite\u003c/code\u003e to \u003ccode\u003e^8.0.14\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003evitest\u003c/code\u003e to \u003ccode\u003e^4.1.7\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003epnpm\u003c/code\u003e to \u003ccode\u003e11.2.1\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eAttestation\u003c/h2\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/attestations/28553042\"\u003ehttps://github.com/Rel1cx/eslint-react/attestations/28553042\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev5.8.4 (2026-05-22)\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003ch3\u003e📝 Documentation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eWebsite\u003c/strong\u003e: Restructured the FAQ page from an accordion layout to standard headings for better SEO, accessibility, and direct anchor linking.\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eWebsite\u003c/strong\u003e: Replaced the homepage \u003ccode\u003eHint\u003c/code\u003e popover with a direct link to the FAQ anchor explaining the project's human/LLM collaboration policy.\u003c/li\u003e\n\u003cli\u003eAdded a new \u003cstrong\u003e\u0026quot;What does 90% human-written mean?\u0026quot;\u003c/strong\u003e section to the FAQ.\u003c/li\u003e\n\u003cli\u003eUpdated documentation for \u003ccode\u003eisClassComponent\u003c/code\u003e and \u003ccode\u003eJsxConfig\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003eRemoved outdated documentation files.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🏗️ Internal\u003c/h3\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/Rel1cx/eslint-react/blob/main/CHANGELOG.md\"\u003e@​eslint-react/eslint-plugin's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev5.8.5 (2026-05-24)\u003c/h2\u003e\n\u003ch3\u003e📝 Documentation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdded rule implementation patterns guide (\u003ccode\u003edocs/rule-implementation-patterns.md\u003c/code\u003e) and term-based rule patterns guide (\u003ccode\u003edocs/term-based-rule-patterns.md\u003c/code\u003e).\u003c/li\u003e\n\u003cli\u003eLowered minimum TypeScript version requirement from \u003ccode\u003e5.1.0\u003c/code\u003e to \u003ccode\u003e5.0.0\u003c/code\u003e across README and documentation.\u003c/li\u003e\n\u003cli\u003eFixed textlint war-metaphor warnings and refined \u003ccode\u003e.textlintrc.json\u003c/code\u003e patterns.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🏗️ Internal\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdjusted formatting across configuration and script files (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1795\"\u003e#1795\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFixed a typo in the CI test workflow step.\u003c/li\u003e\n\u003cli\u003eAdded regression tests for oxc issues compatibility verification (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1796\"\u003e#1796\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eBumped dependencies across workspace packages:\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e@effect/language-service\u003c/code\u003e to \u003ccode\u003e^0.86.2\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@takumi-rs/image-response\u003c/code\u003e to \u003ccode\u003e^1.3.0\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@tsconfig/vite-react\u003c/code\u003e to \u003ccode\u003e^8.0.6\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@types/node\u003c/code\u003e to \u003ccode\u003e^25.9.1\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@types/react\u003c/code\u003e to \u003ccode\u003e^19.2.15\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eeslint-plugin-package-json\u003c/code\u003e to \u003ccode\u003e^1.1.0\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003efumadocs-core\u003c/code\u003e to \u003ccode\u003e^16.9.0\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003efumadocs-mdx\u003c/code\u003e to \u003ccode\u003e^15.0.7\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003efumadocs-ui\u003c/code\u003e to \u003ccode\u003e^16.9.0\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003elru-cache\u003c/code\u003e to \u003ccode\u003e11.5.0\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003enx\u003c/code\u003e to \u003ccode\u003e^22.7.3\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003epostcss\u003c/code\u003e to \u003ccode\u003e^8.5.15\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003evite\u003c/code\u003e to \u003ccode\u003e^8.0.14\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003evitest\u003c/code\u003e to \u003ccode\u003e^4.1.7\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003epnpm\u003c/code\u003e to \u003ccode\u003e11.2.1\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev5.8.4 (2026-05-22)\u003c/h2\u003e\n\u003ch3\u003e📝 Documentation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eWebsite\u003c/strong\u003e: Restructured the FAQ page from an accordion layout to standard headings for better SEO, accessibility, and direct anchor linking.\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eWebsite\u003c/strong\u003e: Replaced the homepage \u003ccode\u003eHint\u003c/code\u003e popover with a direct link to the FAQ anchor explaining the project's human/LLM collaboration policy.\u003c/li\u003e\n\u003cli\u003eAdded a new \u003cstrong\u003e\u0026quot;What does 90% human-written mean?\u0026quot;\u003c/strong\u003e section to the FAQ.\u003c/li\u003e\n\u003cli\u003eUpdated documentation for \u003ccode\u003eisClassComponent\u003c/code\u003e and \u003ccode\u003eJsxConfig\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003eRemoved outdated documentation files.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🏗️ Internal\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003e\u003ccode\u003ecore\u003c/code\u003e\u003c/strong\u003e: Simplified \u003ccode\u003eisClassComponent\u003c/code\u003e by removing the \u003ccode\u003econtext\u003c/code\u003e parameter and replacing \u003ccode\u003eisClassComponentLoose\u003c/code\u003e with the simplified function.\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003e\u003ccode\u003eeslint-plugin-react-x\u003c/code\u003e\u003c/strong\u003e: Removed unnecessary optional chaining across multiple rules (\u003ccode\u003eimmutability\u003c/code\u003e, \u003ccode\u003eno-unused-state\u003c/code\u003e, \u003ccode\u003epurity\u003c/code\u003e, \u003ccode\u003erefs\u003c/code\u003e, \u003ccode\u003eset-state-in-effect\u003c/code\u003e, \u003ccode\u003estatic-components\u003c/code\u003e, \u003ccode\u003euse-memo\u003c/code\u003e, etc.) and expanded test coverage for edge cases (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1792\"\u003e#1792\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdded automated GitHub Release workflow and fixed \u003ccode\u003eactions/setup-node\u003c/code\u003e cache parameter error.\u003c/li\u003e\n\u003cli\u003eAdded null-safety boundary tests for rules affected by PR \u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1792\"\u003e#1792\u003c/a\u003e (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1794\"\u003e#1794\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eBumped dependencies across workspace packages: \u003ccode\u003e@takumi-rs/image-response\u003c/code\u003e to 1.2.1, \u003ccode\u003efumadocs-mdx\u003c/code\u003e to 15.0.6, \u003ccode\u003eimport-integrity-lint\u003c/code\u003e to 1.1.1, \u003ccode\u003epreact\u003c/code\u003e to 10.29.2, \u003ccode\u003etsx\u003c/code\u003e to 4.22.1, \u003ccode\u003e@typescript-eslint\u003c/code\u003e to \u003ccode\u003e^8.59.4\u003c/code\u003e, \u003ccode\u003e@types/node\u003c/code\u003e to \u003ccode\u003e^25.9.0\u003c/code\u003e, \u003ccode\u003edompurify\u003c/code\u003e to \u003ccode\u003e^3.4.5\u003c/code\u003e, \u003ccode\u003epnpm\u003c/code\u003e to \u003ccode\u003e11.1.3\u003c/code\u003e, \u003ccode\u003etextlint\u003c/code\u003e to 15.7.1, and dprint TypeScript plugin to 0.96.1.\u003c/li\u003e\n\u003cli\u003eCleaned up stray empty string in \u003ccode\u003etsl.config.ts\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003eCleaned up type and lint errors across the workspace (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1793\"\u003e#1793\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eDowngraded TypeScript override in \u003ccode\u003epnpm-workspace.yaml\u003c/code\u003e from \u003ccode\u003e^6.0.3\u003c/code\u003e to \u003ccode\u003e5.9.3\u003c/code\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/8410851f436a8e1553484c95faecc64b3f8adbb1\"\u003e\u003ccode\u003e8410851\u003c/code\u003e\u003c/a\u003e release: 5.8.5\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/dccf9baf4c4f35919892dd61cee348ea1046d8fc\"\u003e\u003ccode\u003edccf9ba\u003c/code\u003e\u003c/a\u003e release: 5.8.5-beta.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/65edd43b61302e39af37fe00940f3903c52d5d0b\"\u003e\u003ccode\u003e65edd43\u003c/code\u003e\u003c/a\u003e release: 5.8.5-next.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/0393cd198aabafffeb4cf316856726b60834acd6\"\u003e\u003ccode\u003e0393cd1\u003c/code\u003e\u003c/a\u003e docs: lower minimum TypeScript version to 5.0.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/ceeeb663e4041cdabf41c75d8b68802006e86341\"\u003e\u003ccode\u003eceeeb66\u003c/code\u003e\u003c/a\u003e chore(deps): bump \u003ccode\u003e@​types/react\u003c/code\u003e, \u003ccode\u003e@​types/node\u003c/code\u003e, postcss, and fumadocs\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/39f2a0fe43a792ee4e1cf3ebf36e2b178e39324a\"\u003e\u003ccode\u003e39f2a0f\u003c/code\u003e\u003c/a\u003e release: 5.8.4\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/f7fa04ec446ffafcc5b04ac48b9a0a8c7421f5d7\"\u003e\u003ccode\u003ef7fa04e\u003c/code\u003e\u003c/a\u003e release: 5.8.4-beta.5\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/dbbd3298b136a649b4242b36d70929f0e8d6ecc7\"\u003e\u003ccode\u003edbbd329\u003c/code\u003e\u003c/a\u003e release: 5.8.4-beta.4\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/e3d9585a91caf57f3d0c69652a2a89664e70b5fd\"\u003e\u003ccode\u003ee3d9585\u003c/code\u003e\u003c/a\u003e release: 5.8.4-beta.3\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/1bae3a59500bde45ed7769521f1b1dc145ea92c1\"\u003e\u003ccode\u003e1bae3a5\u003c/code\u003e\u003c/a\u003e Link 90% human-written claim to FAQ\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/Rel1cx/eslint-react/commits/v5.8.5/plugins/eslint-plugin\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@typescript-eslint/eslint-plugin` from 8.56.1 to 8.59.4\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases\"\u003e@​typescript-eslint/eslint-plugin's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev8.59.4\u003c/h2\u003e\n\u003ch2\u003e8.59.4 (2026-05-18)\u003c/h2\u003e\n\u003ch3\u003e🩹 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-floating-promises] stack overflow when using recursive types (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12294\"\u003e#12294\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eproject-service:\u003c/strong\u003e throw error cause in \u003ccode\u003egetParsedConfigFileFromTSServer\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12321\"\u003e#12321\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003etypescript-eslint:\u003c/strong\u003e export Compatible* types from typescript-eslint to resolve pnpm TS error (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12340\"\u003e#12340\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e❤️ Thank You\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eEvyatar Daud \u003ca href=\"https://github.com/StyleShit\"\u003e\u003ccode\u003e@​StyleShit\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eKirk Waiblinger \u003ca href=\"https://github.com/kirkwaiblinger\"\u003e\u003ccode\u003e@​kirkwaiblinger\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003elumir\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.4\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003ev8.59.3\u003c/h2\u003e\n\u003ch2\u003e8.59.3 (2026-05-11)\u003c/h2\u003e\n\u003cp\u003eThis was a version bump only, there were no code changes.\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.3\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003ev8.59.2\u003c/h2\u003e\n\u003ch2\u003e8.59.2 (2026-05-04)\u003c/h2\u003e\n\u003ch3\u003e🩹 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unsafe-type-assertion] handle crash on recursive template literal types (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12150\"\u003e#12150\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-deprecated] object destructuring values should be treated as declarations (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12292\"\u003e#12292\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003erule-tester:\u003c/strong\u003e add TypeScript as a peer dependency (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12288\"\u003e#12288\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e❤️ Thank You\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eDariusz Czajkowski\u003c/li\u003e\n\u003cli\u003eDima Barabash\u003c/li\u003e\n\u003cli\u003eKirk Waiblinger \u003ca href=\"https://github.com/kirkwaiblinger\"\u003e\u003ccode\u003e@​kirkwaiblinger\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.2\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003ev8.59.1\u003c/h2\u003e\n\u003ch2\u003e8.59.1 (2026-04-27)\u003c/h2\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/CHANGELOG.md\"\u003e@​typescript-eslint/eslint-plugin's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e8.59.4 (2026-05-18)\u003c/h2\u003e\n\u003ch3\u003e🩹 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-floating-promises] stack overflow when using recursive types (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12294\"\u003e#12294\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e❤️ Thank You\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eEvyatar Daud \u003ca href=\"https://github.com/StyleShit\"\u003e\u003ccode\u003e@​StyleShit\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.4\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003e8.59.3 (2026-05-11)\u003c/h2\u003e\n\u003cp\u003eThis was a version bump only for eslint-plugin to align it with other projects, there were no code changes.\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.3\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003e8.59.2 (2026-05-04)\u003c/h2\u003e\n\u003ch3\u003e🩹 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-deprecated] object destructuring values should be treated as declarations (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12292\"\u003e#12292\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unsafe-type-assertion] handle crash on recursive template literal types (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12150\"\u003e#12150\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e❤️ Thank You\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eDima Barabash\u003c/li\u003e\n\u003cli\u003eKirk Waiblinger \u003ca href=\"https://github.com/kirkwaiblinger\"\u003e\u003ccode\u003e@​kirkwaiblinger\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.2\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003e8.59.1 (2026-04-27)\u003c/h2\u003e\n\u003ch3\u003e🩹 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-condition] treat void as nullish in no-unnecessary-condition (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12241\"\u003e#12241\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-type-arguments] handle instantiation expressions (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12220\"\u003e#12220\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-type-assertion] avoid false positive in logical assignment assertions (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12278\"\u003e#12278\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-type-assertion] preserve phantom type arguments in generic inference (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12269\"\u003e#12269\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-type-assertion] preserve index signatures in undefined unions (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12257\"\u003e#12257\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-type-assertion] fix crash \u0026quot;TypeError: checker.getTypeArguments is not a function\u0026quot; (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12246\"\u003e#12246\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e❤️ Thank You\u003c/h3\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/ca6ca1431b6d18235297a7e29feb5d98f012dff2\"\u003e\u003ccode\u003eca6ca14\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.59.4\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/4302433ae6bf93d4ddc35264ad1b951254758566\"\u003e\u003ccode\u003e4302433\u003c/code\u003e\u003c/a\u003e fix(eslint-plugin): [no-floating-promises] stack overflow when using recursiv...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/10b79f1ba8e98610a3af85152a1b3b406f91e633\"\u003e\u003ccode\u003e10b79f1\u003c/code\u003e\u003c/a\u003e chore(deps): update dependency eslint to v10.4.0 (\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin/issues/12339\"\u003e#12339\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/2a6765d9628dc776f8127c96f088bb807c0bcab2\"\u003e\u003ccode\u003e2a6765d\u003c/code\u003e\u003c/a\u003e chore: clenaup \u003ccode\u003egetAwaitedType\u003c/code\u003e from \u003ccode\u003etypescript.d.ts\u003c/code\u003e (\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin/issues/12302\"\u003e#12302\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/48e13c0261e3cb1bf4f4dfaa462cdb3a56ef7383\"\u003e\u003ccode\u003e48e13c0\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.59.3\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/e26dc8003ababf078aad4df17765ee4cea30644c\"\u003e\u003ccode\u003ee26dc80\u003c/code\u003e\u003c/a\u003e docs: update stale links to latest (\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin/issues/12313\"\u003e#12313\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/44f9625336841a8ee3eb01a9e02e49b1d7b12648\"\u003e\u003ccode\u003e44f9625\u003c/code\u003e\u003c/a\u003e chore(deps): update vitest monorepo to v4.1.5 (\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin/issues/12307\"\u003e#12307\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/2ec35f1760aade4df4c631d76d78c7ed5e136333\"\u003e\u003ccode\u003e2ec35f1\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.59.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/ec3ef25390f7daf5a9ff33a60282bdbbb49ab0f3\"\u003e\u003ccode\u003eec3ef25\u003c/code\u003e\u003c/a\u003e test: make no-useless-empty-export tests fully static (\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin/issues/12260\"\u003e#12260\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/60d0a513870d833617374ff8ea256d86ca3cbbbb\"\u003e\u003ccode\u003e60d0a51\u003c/code\u003e\u003c/a\u003e chore(eslint-plugin): switch auto-generated test cases to hand-written in no-...\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commits/v8.59.4/packages/eslint-plugin\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@typescript-eslint/parser` from 8.56.1 to 8.59.4\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases\"\u003e@​typescript-eslint/parser's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev8.59.4\u003c/h2\u003e\n\u003ch2\u003e8.59.4 (2026-05-18)\u003c/h2\u003e\n\u003ch3\u003e🩹 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-floating-promises] stack overflow when using recursive types (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12294\"\u003e#12294\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eproject-service:\u003c/strong\u003e throw error cause in \u003ccode\u003egetParsedConfigFileFromTSServer\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12321\"\u003e#12321\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003etypescript-eslint:\u003c/strong\u003e export Compatible* types from typescript-eslint to resolve pnpm TS error (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12340\"\u003e#12340\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e❤️ Thank You\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eEvyatar Daud \u003ca href=\"https://github.com/StyleShit\"\u003e\u003ccode\u003e@​StyleShit\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eKirk Waiblinger \u003ca href=\"https://github.com/kirkwaiblinger\"\u003e\u003ccode\u003e@​kirkwaiblinger\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003elumir\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.4\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003ev8.59.3\u003c/h2\u003e\n\u003ch2\u003e8.59.3 (2026-05-11)\u003c/h2\u003e\n\u003cp\u003eThis was a version bump only, there were no code changes.\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.3\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003ev8.59.2\u003c/h2\u003e\n\u003ch2\u003e8.59.2 (2026-05-04)\u003c/h2\u003e\n\u003ch3\u003e🩹 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unsafe-type-assertion] handle crash on recursive template literal types (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12150\"\u003e#12150\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-deprecated] object destructuring values should be treated as declarations (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12292\"\u003e#12292\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003erule-tester:\u003c/strong\u003e add TypeScript as a peer dependency (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12288\"\u003e#12288\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e❤️ Thank You\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eDariusz Czajkowski\u003c/li\u003e\n\u003cli\u003eDima Barabash\u003c/li\u003e\n\u003cli\u003eKirk Waiblinger \u003ca href=\"https://github.com/kirkwaiblinger\"\u003e\u003ccode\u003e@​kirkwaiblinger\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.2\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003ev8.59.1\u003c/h2\u003e\n\u003ch2\u003e8.59.1 (2026-04-27)\u003c/h2\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/parser/CHANGELOG.md\"\u003e@​typescript-eslint/parser's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e8.59.4 (2026-05-18)\u003c/h2\u003e\n\u003cp\u003eThis was a version bump only for parser to align it with other projects, there were no code changes.\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.4\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003e8.59.3 (2026-05-11)\u003c/h2\u003e\n\u003cp\u003eThis was a version bump only for parser to align it with other projects, there were no code changes.\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.3\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003e8.59.2 (2026-05-04)\u003c/h2\u003e\n\u003cp\u003eThis was a version bump only for parser to align it with other projects, there were no code changes.\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.2\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003e8.59.1 (2026-04-27)\u003c/h2\u003e\n\u003cp\u003eThis was a version bump only for parser to align it with other projects, there were no code changes.\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.1\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003e8.59.0 (2026-04-20)\u003c/h2\u003e\n\u003cp\u003eThis was a version bump only for parser to align it with other projects, there were no code changes.\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.0\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003e8.58.2 (2026-04-13)\u003c/h2\u003e\n\u003ch3\u003e🩹 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eremove tsbuildinfo cache file from published packages (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12187\"\u003e#12187\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e❤️ Thank You\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAbhijeet Singh \u003ca href=\"https://github.com/cseas\"\u003e\u003ccode\u003e@​cseas\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/ca6ca1431b6d18235297a7e29feb5d98f012dff2\"\u003e\u003ccode\u003eca6ca14\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.59.4\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/48e13c0261e3cb1bf4f4dfaa462cdb3a56ef7383\"\u003e\u003ccode\u003e48e13c0\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.59.3\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/44f9625336841a8ee3eb01a9e02e49b1d7b12648\"\u003e\u003ccode\u003e44f9625\u003c/code\u003e\u003c/a\u003e chore(deps): update vitest monorepo to v4.1.5 (\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/parser/issues/12307\"\u003e#12307\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/2ec35f1760aade4df4c631d76d78c7ed5e136333\"\u003e\u003ccode\u003e2ec35f1\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.59.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/52457932e5507b5ca01e720a541f3f8d01e09b9d\"\u003e\u003ccode\u003e5245793\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.59.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/ea9ae4f8817873480e3501145059f63e39e8d8a1\"\u003e\u003ccode\u003eea9ae4f\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.59.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/90c2803a4c250e0343598d41e973f95e743bf4ce\"\u003e\u003ccode\u003e90c2803\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.58.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/be6b49a02d68db9bdc8985e7e9e1598700fda2fa\"\u003e\u003ccode\u003ebe6b49a\u003c/code\u003e\u003c/a\u003e fix: remove tsbuildinfo cache file from published packages (\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/parser/issues/12187\"\u003e#12187\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/5311ed312eadf4e238324f2726ae0b1f3f2206e6\"\u003e\u003ccode\u003e5311ed3\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.58.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/493341709fe7d1d6433332b7bd2724e3332c7cdf\"\u003e\u003ccode\u003e4933417\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.58.0\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commits/v8.59.4/packages/parser\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `eslint` from 10.0.3 to 10.4.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/eslint/eslint/releases\"\u003eeslint's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev10.4.0\u003c/h2\u003e\n\u003ch2\u003eFeatures\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/1a45ec596af1dd5f880e6874cb8f24dafb6a7ecf\"\u003e\u003ccode\u003e1a45ec5\u003c/code\u003e\u003c/a\u003e feat: check sequence expressions in \u003ccode\u003efor-direction\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20701\"\u003e#20701\u003c/a\u003e) (kuldeep kumar)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/450040bd89b989b3531824c6be45feb5fe3d936b\"\u003e\u003ccode\u003e450040b\u003c/code\u003e\u003c/a\u003e feat: add \u003ccode\u003eincludeIgnoreFile()\u003c/code\u003e to \u003ccode\u003eeslint/config\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20735\"\u003e#20735\u003c/a\u003e) (Kirk Waiblinger)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eBug Fixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/544c0c3da589166ad8e5d634f35d3d06701c57be\"\u003e\u003ccode\u003e544c0c3\u003c/code\u003e\u003c/a\u003e fix: escape code path DOT labels in debug output (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20866\"\u003e#20866\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/6799431203f2579632d0870f98ba132067f4040c\"\u003e\u003ccode\u003e6799431\u003c/code\u003e\u003c/a\u003e fix: update dependency \u003ccode\u003e@​eslint/config-helpers\u003c/code\u003e to ^0.6.0 (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20850\"\u003e#20850\u003c/a\u003e) (renovate[bot])\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/f078fef5005dceb14fc162aab7c7200e027688dd\"\u003e\u003ccode\u003ef078fef\u003c/code\u003e\u003c/a\u003e fix: handle non-array deprecated rule replacements (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20825\"\u003e#20825\u003c/a\u003e) (xbinaryx)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eDocumentation\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/7e52a7151fb92eec0e0f67fe4e5ddbd1ccce796f\"\u003e\u003ccode\u003e7e52a71\u003c/code\u003e\u003c/a\u003e docs: add mention of \u003ccode\u003e@eslint-react/eslint-plugin\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20869\"\u003e#20869\u003c/a\u003e) (Pavel)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/db3468ba746407d7f286f18f7ea9db6df0e3bc08\"\u003e\u003ccode\u003edb3468b\u003c/code\u003e\u003c/a\u003e docs: tweak wording around ambiguous CJS-vs-ESM config (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20865\"\u003e#20865\u003c/a\u003e) (Kirk Waiblinger)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/90846643ec6e97d447ae0d831fabe6d17b0a998a\"\u003e\u003ccode\u003e9084664\u003c/code\u003e\u003c/a\u003e docs: Update README (GitHub Actions Bot)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/9cc73875046e3c4b8313644cbb1e99e26b36bd3f\"\u003e\u003ccode\u003e9cc7387\u003c/code\u003e\u003c/a\u003e docs: Update README (GitHub Actions Bot)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/3d7b5484407403817aa9071a394d336d8ea96eb5\"\u003e\u003ccode\u003e3d7b548\u003c/code\u003e\u003c/a\u003e docs: Update README (GitHub Actions Bot)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/191ec3c0a3f94ce0f110df761f0b2b8949011ccb\"\u003e\u003ccode\u003e191ec3c\u003c/code\u003e\u003c/a\u003e docs: Update README (GitHub Actions Bot)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eChores\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/6616856f28fa514a30f87b5539fc100d739a94bf\"\u003e\u003ccode\u003e6616856\u003c/code\u003e\u003c/a\u003e chore: upgrade knip to v6 (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20875\"\u003e#20875\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/d13b084a3ad02f926e9addaa35fc383759ea5554\"\u003e\u003ccode\u003ed13b084\u003c/code\u003e\u003c/a\u003e ci: ensure auto-created PRs run CI (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20860\"\u003e#20860\u003c/a\u003e) (lumir)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/e71c7af86dce9acc1d18cb12d2184309f6841594\"\u003e\u003ccode\u003ee71c7af\u003c/code\u003e\u003c/a\u003e ci: bump pnpm/action-setup from 6.0.5 to 6.0.7 (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20862\"\u003e#20862\u003c/a\u003e) (dependabot[bot])\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/d84393dea170f54191fd20c8268b52c81c0ccd99\"\u003e\u003ccode\u003ed84393d\u003c/code\u003e\u003c/a\u003e test: add unit tests for SuppressionsService.applySuppressions() (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20863\"\u003e#20863\u003c/a\u003e) (kuldeep kumar)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/24db8cb8e6f07fba667121777a15b1785486be94\"\u003e\u003ccode\u003e24db8cb\u003c/code\u003e\u003c/a\u003e test: add tests for SuppressionsService.save() (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20802\"\u003e#20802\u003c/a\u003e) (kuldeep kumar)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/2ef0549cac4a9537e4c3a26b9f3edd4c99476bf6\"\u003e\u003ccode\u003e2ef0549\u003c/code\u003e\u003c/a\u003e chore: update ecosystem plugins (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20857\"\u003e#20857\u003c/a\u003e) (github-actions[bot])\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/a4297918d264d229a06cd96051ef9b91c7b86732\"\u003e\u003ccode\u003ea429791\u003c/code\u003e\u003c/a\u003e ci: remove \u003ccode\u003eeslint-webpack-plugin\u003c/code\u003e types integration test (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20668\"\u003e#20668\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/9e37386aa7f2ce220b2ef74a6afbac5f6b3527c5\"\u003e\u003ccode\u003e9e37386\u003c/code\u003e\u003c/a\u003e chore: replace \u003ccode\u003erecast\u003c/code\u003e with range approach in code-sample-minimizer (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20682\"\u003e#20682\u003c/a\u003e) (Copilot)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/0dd1f9ffc9a07704d46e2a4c8d4ccc0d0908b0c0\"\u003e\u003ccode\u003e0dd1f9f\u003c/code\u003e\u003c/a\u003e test: disable warning for \u003ccode\u003evm.constants.USE_MAIN_CONTEXT_DEFAULT_LOADER\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20845\"\u003e#20845\u003c/a\u003e) (Francesco Trotta)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/9da3c7bc92d9579f8db19ecb56e718538d09db2b\"\u003e\u003ccode\u003e9da3c7b\u003c/code\u003e\u003c/a\u003e refactor: remove deprecated \u003ccode\u003emeta.language\u003c/code\u003e and migrate \u003ccode\u003emeta.dialects\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20716\"\u003e#20716\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/2099ed12a0a74c3d7f0808514362af2499b4fe2b\"\u003e\u003ccode\u003e2099ed1\u003c/code\u003e\u003c/a\u003e refactor: add \u003ccode\u003emeta.defaultOptions\u003c/code\u003e to more rules, enable linting (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20800\"\u003e#20800\u003c/a\u003e) (xbinaryx)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/f1dfbc9ca57196de7092e1888cc99427bd6fe06e\"\u003e\u003ccode\u003ef1dfbc9\u003c/code\u003e\u003c/a\u003e chore: update ecosystem plugins (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20836\"\u003e#20836\u003c/a\u003e) (github-actions[bot])\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/c75941390c14728806cd4baef4f6072f6de78318\"\u003e\u003ccode\u003ec759413\u003c/code\u003e\u003c/a\u003e ci: bump pnpm/action-setup from 6.0.3 to 6.0.5 (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20843\"\u003e#20843\u003c/a\u003e) (dependabot[bot])\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/5b817d6fdc9ae2c35b528dc662b2eca8f40f64aa\"\u003e\u003ccode\u003e5b817d6\u003c/code\u003e\u003c/a\u003e test: add unit tests for lib/shared/ast-utils (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20838\"\u003e#20838\u003c/a\u003e) (kuldeep kumar)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/1c13ae3934c198c494e5958fa3a68b33244ff06a\"\u003e\u003ccode\u003e1c13ae3\u003c/code\u003e\u003c/a\u003e test: add unit tests for lib/shared/severity (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20835\"\u003e#20835\u003c/a\u003e) (kuldeep kumar)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev10.3.0\u003c/h2\u003e\n\u003ch2\u003eFeatures\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/379571a975f2b24d88037b9de2e72ec61d004130\"\u003e\u003ccode\u003e379571a\u003c/code\u003e\u003c/a\u003e feat: add suggestions for no-unused-private-class-members (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20773\"\u003e#20773\u003c/a\u003e) (sethamus)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eBug Fixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/b6ae5cf07b9b51802367539cb24b245b61eaa37c\"\u003e\u003ccode\u003eb6ae5cf\u003c/code\u003e\u003c/a\u003e fix: handle unavailable require cache (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20812\"\u003e#20812\u003c/a\u003e) (Simon Podlipsky)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/6fb3685bcbe9a6f72fd7dfb9129686b6fb96b0bd\"\u003e\u003ccode\u003e6fb3685\u003c/code\u003e\u003c/a\u003e fix: rule suggestions cause continuation in class body (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20787\"\u003e#20787\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eDocumentation\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/32cc7ab4ec653ce89da92deb5c40a9f4fc707fe5\"\u003e\u003ccode\u003e32cc7ab\u003c/code\u003e\u003c/a\u003e docs: fix typos in docs and comments (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20809\"\u003e#20809\u003c/a\u003e) (Tanuj Kanti)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/7f479376a2fa463d823ab762db6bb37ce8d2ee8f\"\u003e\u003ccode\u003e7f47937\u003c/code\u003e\u003c/a\u003e docs: Update README (GitHub Actions Bot)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eChores\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/d32235ec19ceea211fa86452afa383ca05f5c2f9\"\u003e\u003ccode\u003ed32235e\u003c/code\u003e\u003c/a\u003e ci: use pnpm in \u003ccode\u003eeslint-flat-config-utils\u003c/code\u003e type integration test (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20826\"\u003e#20826\u003c/a\u003e) (Francesco Trotta)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/3ffb14ea517de750ed1181579ef844af342e4096\"\u003e\u003ccode\u003e3ffb14e\u003c/code\u003e\u003c/a\u003e chore: clean up typos in comments and JSDoc (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20821\"\u003e#20821\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/452c4010c07dc2e36fe6ec6a8c48298878e86887\"\u003e\u003ccode\u003e452c401\u003c/code\u003e\u003c/a\u003e 10.4.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/b6417e8b55c9525070d6e168b485ce6ff21688ed\"\u003e\u003ccode\u003eb6417e8\u003c/code\u003e\u003c/a\u003e Build: changelog update for 10.4.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/6616856f28fa514a30f87b5539fc100d739a94bf\"\u003e\u003ccode\u003e6616856\u003c/code\u003e\u003c/a\u003e chore: upgrade knip to v6 (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20875\"\u003e#20875\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/d13b084a3ad02f926e9addaa35fc383759ea5554\"\u003e\u003ccode\u003ed13b084\u003c/code\u003e\u003c/a\u003e ci: ensure auto-created PRs run CI (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20860\"\u003e#20860\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/7e52a7151fb92eec0e0f67fe4e5ddbd1ccce796f\"\u003e\u003ccode\u003e7e52a71\u003c/code\u003e\u003c/a\u003e docs: add mention of \u003ccode\u003e@eslint-react/eslint-plugin\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20869\"\u003e#20869\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/e71c7af86dce9acc1d18cb12d2184309f6841594\"\u003e\u003ccode\u003ee71c7af\u003c/code\u003e\u003c/a\u003e ci: bump pnpm/action-setup from 6.0.5 to 6.0.7 (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20862\"\u003e#20862\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/544c0c3da589166ad8e5d634f35d3d06701c57be\"\u003e\u003ccode\u003e544c0c3\u003c/code\u003e\u003c/a\u003e fix: escape code path DOT labels in debug output (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20866\"\u003e#20866\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/db3468ba746407d7f286f18f7ea9db6df0e3bc08\"\u003e\u003ccode\u003edb3468b\u003c/code\u003e\u003c/a\u003e docs: tweak wording around ambiguous CJS-vs-ESM config (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20865\"\u003e#20865\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/d84393dea170f54191fd20c8268b52c81c0ccd99\"\u003e\u003ccode\u003ed84393d\u003c/code\u003e\u003c/a\u003e test: add unit tests for SuppressionsService.applySuppressions() (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20863\"\u003e#20863\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/90846643ec6e97d447ae0d831fabe6d17b0a998a\"\u003e\u003ccode\u003e9084664\u003c/code\u003e\u003c/a\u003e docs: Update README\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/eslint/eslint/compare/v10.0.3...v10.4.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `eslint-plugin-react-hooks` from 7.0.1 to 7.1.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/facebook/react/releases\"\u003eeslint-plugin-react-hooks's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eeslint-plugin-react-hooks@7.1.1 (April 17, 2026)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eNote:\u003c/strong\u003e 7.1.0 accidentally removed the \u003ccode\u003ecomponent-hook-factories\u003c/code\u003e rule, causing errors for users who referenced it in their ESLint config. This is now fixed.\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdd deprecated no-op \u003ccode\u003ecomponent-hook-factories\u003c/code\u003e rule for backwards compatibility. (\u003ca href=\"https://github.com/mofeiZ\"\u003e\u003ccode\u003e@​mofeiZ\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/36307\"\u003e#36307\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eeslint-plugin-react-hooks@7.1.0 (April 16, 2026)\u003c/h2\u003e\n\u003cp\u003eThis release adds ESLint v10 support, improves performance by skipping compilation for non-React files, and includes compiler lint improvements including better \u003ccode\u003eset-state-in-effect\u003c/code\u003e detection, improved ref validation, and more helpful error reporting.\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdd ESLint v10 support. (\u003ca href=\"https://github.com/azat-io\"\u003e\u003ccode\u003e@​azat-io\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/35720\"\u003e#35720\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSkip compilation for non-React files to improve performance. (\u003ca href=\"https://github.com/josephsavona\"\u003e\u003ccode\u003e@​josephsavona\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/35589\"\u003e#35589\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix exhaustive deps bug with Flow type casting. (\u003ca href=\"https://github.com/jorge-cab\"\u003e\u003ccode\u003e@​jorge-cab\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/35691\"\u003e#35691\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix \u003ccode\u003euseEffectEvent\u003c/code\u003e checks in component syntax. (\u003ca href=\"https://github.com/jbrown215\"\u003e\u003ccode\u003e@​jbrown215\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/35041\"\u003e#35041\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eImproved \u003ccode\u003eset-state-in-effect\u003c/code\u003e validation with fewer false negatives. (\u003ca href=\"https://github.com/jorge-cab\"\u003e\u003ccode\u003e@​jorge-cab\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/35134\"\u003e#35134\u003c/a\u003e, \u003ca href=\"https://github.com/josephsavona\"\u003e\u003ccode\u003e@​josephsavona\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/35147\"\u003e#35147\u003c/a\u003e, \u003ca href=\"https://github.com/jackpope\"\u003e\u003ccode\u003e@​jackpope\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/35214\"\u003e#35214\u003c/a\u003e, \u003ca href=\"https://github.com/chesnokov-tony\"\u003e\u003ccode\u003e@​chesnokov-tony\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/35419\"\u003e#35419\u003c/a\u003e, \u003ca href=\"https://github.com/jsleitor\"\u003e\u003ccode\u003e@​jsleitor\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/36107\"\u003e#36107\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eImproved ref validation for non-mutating functions and event handler props. (\u003ca href=\"https://github.com/josephsavona\"\u003e\u003ccode\u003e@​josephsavona\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/35893\"\u003e#35893\u003c/a\u003e, \u003ca href=\"https://github.com/kolvian\"\u003e\u003ccode\u003e@​kolvian\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/35062\"\u003e#35062\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCompiler now reports all errors instead of stopping at the first. (\u003ca href=\"https://github.com/josephsavona\"\u003e\u003ccode\u003e@​josephsavona\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/35873\"\u003e#35873\u003c/a\u003e–\u003ca href=\"https://redirect.github.com/facebook/react/pull/35884\"\u003e#35884\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eImproved source locations and error display in compiler diagnostics. (\u003ca href=\"https://github.com/nathanmarks\"\u003e\u003ccode\u003e@​nathanmarks\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/35348\"\u003e#35348\u003c/a\u003e, \u003ca href=\"https://github.com/josephsavona\"\u003e\u003ccode\u003e@​josephsavona\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/34963\"\u003e#34963\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/facebook/react/blob/main/packages/eslint-plugin-react-hooks/CHANGELOG.md\"\u003eeslint-plugin-react-hooks's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e7.1.1\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eNote:\u003c/strong\u003e 7.1.0 accidentally removed the \u003ccode\u003ecomponent-hook-factories\u003c/code\u003e rule, causing errors for users who referenced it in their ESLint config. This is now fixed.\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdd deprecated no-op \u003ccode\u003ecomponent-hook-factories\u003c/code\u003e rule for backwards compatibility. (\u003ca href=\"https://github.com/mofeiZ\"\u003e\u003ccode\u003e@​mofeiZ\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/36307\"\u003e#36307\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e7.1.0\u003c/h2\u003e\n\u003cp\u003eThis release adds ESLint v10 support, improves performance by skipping compilation for non-React files, and includes compiler lint improvements including better \u003ccode\u003eset-state-in-effect\u003c/code\u003e detection, improved ref validation, and more helpful error reporting.\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdd ESLint v10 support. (\u003ca href=\"https://github.com/azat-io\"\u003e\u003ccode\u003e@​azat-io\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/35720\"\u003e#35720\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSkip compilation for non-React files to improve performance. (\u003ca href=\"https://github.com/josephsavona\"\u003e\u003ccode\u003e@​josephsavona\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/35589\"\u003e#35589\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix exhaustive deps bug with Flow type casting. (\u003ca href=\"https://github.com/jorge-cab\"\u003e\u003ccode\u003e@​jorge-cab\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/35691\"\u003e#35691\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix \u003ccode\u003euseEffectEvent\u003c/code\u003e checks in component syntax. (\u003ca href=\"https://github.com/jbrown215\"\u003e\u003ccode\u003e@​jbrown215\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/35041\"\u003e#35041\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eImproved \u003ccode\u003eset-state-in-effect\u003c/code\u003e validation with fewer false negatives. (\u003ca href=\"https://github.com/jorge-cab\"\u003e\u003ccode\u003e@​jorge-cab\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/35134\"\u003e#35134\u003c/a\u003e, \u003ca href=\"https://github.com/josephsavona\"\u003e\u003ccode\u003e@​josephsavona\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/35147\"\u003e#35147\u003c/a\u003e, \u003ca href=\"https://github.com/jackpope\"\u003e\u003ccode\u003e@​jackpope\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/35214\"\u003e#35214\u003c/a\u003e, \u003ca href=\"https://github.com/chesnokov-tony\"\u003e\u003ccode\u003e@​chesnokov-tony\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/35419\"\u003e#35419\u003c/a\u003e, \u003ca href=\"https://github.com/jsleitor\"\u003e\u003ccode\u003e@​jsleitor\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/36107\"\u003e#36107\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eImproved ref validation for non-mutating functions and event handler props. (\u003ca href=\"https://github.com/josephsavona\"\u003e\u003ccode\u003e@​josephsavona\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/35893\"\u003e#35893\u003c/a\u003e, \u003ca href=\"https://github.com/kolvian\"\u003e\u003ccode\u003e@​kolvian\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/35062\"\u003e#35062\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCompiler now reports all errors instead of stopping at the first. (\u003ca href=\"https://github.com/josephsavona\"\u003e\u003ccode\u003e@​josephsavona\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/35873\"\u003e#35873\u003c/a\u003e–\u003ca href=\"https://redirect.github.com/facebook/react/pull/35884\"\u003e#35884\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eImproved source locations and error display in compiler diagnostics. (\u003ca href=\"https://github.com/nathanmarks\"\u003e\u003ccode\u003e@​nathanmarks\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/35348\"\u003e#35348\u003c/a\u003e, \u003ca href=\"https://github.com/josephsavona\"\u003e\u003ccode\u003e@​josephsavona\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/34963\"\u003e#34963\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/facebook/react/commits/eslint-plugin-react-hooks@7.1.1/packages/eslint-plugin-react-hooks\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `globals` from 17.4.0 to 17.6.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/sindresorhus/globals/releases\"\u003eglobals's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev17.6.0\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eUpdate globals (2026-05-01) (\u003ca href=\"https://redirect.github.com/sindresorhus/globals/issues/343\"\u003e#343\u003c/a\u003e)  00a4dd9\u003c/li\u003e\n\u003c/ul\u003e\n\u003chr /\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/sindresorhus/globals/compare/v17.5.0...v17.6.0\"\u003ehttps://github.com/sindresorhus/globals/compare/v17.5.0...v17.6.0\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev17.5.0\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eUpdate globals (2026-04-12) (\u003ca href=\"https://redirect.github.com/sindresorhus/globals/issues/342\"\u003e#342\u003c/a\u003e)  5d84602\u003c/li\u003e\n\u003c/ul\u003e\n\u003chr /\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/sindresorhus/globals/compare/v17.4.0...v17.5.0\"\u003ehttps://github.com/sindresorhus/globals/compare/v17.4.0...v17.5.0\u003c/a\u003e\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sindresorhus/globals/commit/6b15870f1c08b60b5b57afe45a703d9ed0be39bc\"\u003e\u003ccode\u003e6b15870\u003c/code\u003e\u003c/a\u003e 17.6.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sindresorhus/globals/commit/00a4dd9821830a9b044798120e86b1bb1a54648d\"\u003e\u003ccode\u003e00a4dd9\u003c/code\u003e\u003c/a\u003e Update globals (2026-05-01) (\u003ca href=\"https://redirect.github.com/sindresorhus/globals/issues/343\"\u003e#343\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sindresorhus/globals/commit/b8170c8e1d648291b613c5b39a69652c796fa36c\"\u003e\u003ccode\u003eb8170c8\u003c/code\u003e\u003c/a\u003e 17.5.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sindresorhus/globals/commit/5d846029679832931f38ced6381cc95bcb9abd80\"\u003e\u003ccode\u003e5d84602\u003c/code\u003e\u003c/a\u003e Update globals (2026-04-12) (\u003ca href=\"https://redirect.github.com/sindresorhus/globals/issues/342\"\u003e#342\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sindresorhus/globals/commit/1b727e5f4cc39121b8e77b9f27574a8ca27391fc\"\u003e\u003ccode\u003e1b727e5\u003c/code\u003e\u003c/a\u003e Fix build script for ES globals (\u003ca href=\"https://redirect.github.com/sindresorhus/globals/issues/341\"\u003e#341\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/sindresorhus/globals/compare/v17.4.0...v17.6.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `graphql` from 16.13.1 to 16.14.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/graphql/graphql-js/releases\"\u003egraphql's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev16.14.0 (2026-05-03)\u003c/h2\u003e\n\u003ch4\u003eNew Feature 🚀\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/graphql/graphql-js/pull/4317\"\u003e#4317\u003c/a\u003e Allow configuration of the \u003ccode\u003eofType\u003c/code\u003e introspection depth (\u003ca href=\"https://github.com/Nols1000\"\u003e\u003ccode\u003e@​Nols1000\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/graphql/graphql-js/pull/4521\"\u003e#4521\u003c/a\u003e Add experimental support for directives on directive definitions (\u003ca href=\"https://github.com/BoD\"\u003e\u003ccode\u003e@​BoD\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch4\u003eBug Fix 🐞\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/graphql/graphql-js/pull/4652\"\u003e#4652\u003c/a\u003e Fix valueFromAST variable own-property checks\n(\u003ca href=\"https://github.com/abishekgiri\"\u003e\u003ccode\u003e@​abishekgiri\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch4\u003eDocs 📝\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/graphql/graphql-js/pull/4706\"\u003e#4706\u003c/a\u003e Fix mistake in GraphQLError guidance (\u003ca href=\"https://github.com/benjie\"\u003e\u003ccode\u003e@​benjie\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch4\u003eCommitters: 4\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003eAbishek Kumar Giri(\u003ca href=\"https://github.com/abishekgiri\"\u003e\u003ccode\u003e@​abishekgiri\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eBenjie(\u003ca href=\"https://github.com/benjie\"\u003e\u003ccode\u003e@​benjie\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eBenoit 'BoD' Lubek(\u003ca href=\"https://github.com/BoD\"\u003e\u003ccode\u003e@​BoD\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNils-Börge Margotti(\u003ca href=\"https://github.com/Nols1000\"\u003e\u003ccode\u003e@​Nols1000\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev16.13.2 (2026-03-24)\u003c/h2\u003e\n\u003ch4\u003eDocs 📝\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/graphql/graphql-js/pull/4611\"\u003e#4611\u003c/a\u003e add dev mode docs (\u003ca href=\"https://github.com/yaacovCR\"\u003e\u003ccode\u003e@​yaacovCR\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch4\u003ePolish 💅\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/graphql/graphql-js/pull/4631\"\u003e#4631\u003c/a\u003e Use \u003ccode\u003eObject.create(null)\u003c/code\u003e over \u003ccode\u003e{}\u003c/code\u003e to avoid prototype issues - v16 (\u003ca href=\"https://github.com/benjie\"\u003e\u003ccode\u003e@​benjie\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch4\u003eInternal 🏠\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/graphql/graphql-js/pull/4626\"\u003e#4626\u003c/a\u003e backport: internal: streamline release process (\u003ca href=\"https://redirect.github.com/graphql/graphql-js/issues/4615\"\u003e#4615\u003c/a\u003e) (\u003ca href=\"https://github.com/yaacovCR\"\u003e\u003ccode\u003e@​yaacovCR\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch4\u003eCommitters: 2\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003eBenjie(\u003ca href=\"https://github.com/benjie\"\u003e\u003ccode\u003e@​benjie\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eYaacov Rydzinski (\u003ca href=\"https://github.com/yaacovCR\"\u003e\u003ccode\u003e@​yaacovCR\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/graphql/graphql-js/commit/57b385b288150960acd09337adf2fc778abb32ab\"\u003e\u003ccode\u003e57b385b\u003c/code\u003e\u003c/a\u003e chore(release): v16.14.0 (\u003ca href=\"https://redirect.github.com/graphql/graphql-js/issues/4720\"\u003e#4720\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/graphql/graphql-js/commit/85700ed6382d57c76d47935adbee6943b29ffd75\"\u003e\u003ccode\u003e85700ed\u003c/code\u003e\u003c/a\u003e Fix mistake in GraphQLError guidance (\u003ca href=\"https://redirect.github.com/graphql/graphql-js/issues/4706\"\u003e#4706\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/graphql/graphql-js/commit/8eb6383ae7447514343457abb2063c40e5dc81bc\"\u003e\u003ccode\u003e8eb6383\u003c/code\u003e\u003c/a\u003e Allow configuration of the \u003ccode\u003eofType\u003c/code\u003e introspection depth (\u003ca href=\"https://redirect.github.com/graphql/graphql-js/issues/4317\"\u003e#4317\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/graphql/graphql-js/commit/ad9c519428ae9d95547af07f68c7559bda0d4053\"\u003e\u003ccode\u003ead9c519\u003c/code\u003e\u003c/a\u003e Add support for directives on directive definitions (\u003ca href=\"https://redirect.github.com/graphql/graphql-js/issues/4521\"\u003e#4521\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/graphql/graphql-js/commit/db2987cb63fffc372f413e780437ea022a649274\"\u003e\u003ccode\u003edb2987c\u003c/code\u003e\u003c/a\u003e fix(valueFromAST): restore variable own-property checks (\u003ca href=\"https://redirect.github.com/graphql/graphql-js/issues/4652\"\u003e#4652\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/graphql/graphql-js/commit/123e958de1362eef098c30e917b51981c484729e\"\u003e\u003ccode\u003e123e958\u003c/code\u003e\u003c/a\u003e chore(release): v16.13.2 (\u003ca href=\"https://redirect.github.com/graphql/graphql-js/issues/4632\"\u003e#4632\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/graphql/graphql-js/commit/13f130d229311cfaf3accff12d3b7134e8d43a8c\"\u003e\u003ccode\u003e13f130d\u003c/code\u003e\u003c/a\u003e Use \u003ccode\u003eObject.create(null)\u003c/code\u003e over \u003ccode\u003e{}\u003c/code\u003e to avoid prototype issues - v16 (\u003ca href=\"https://redirect.github.com/graphql/graphql-js/issues/4631\"\u003e#4631\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/graphql/graphql-js/commit/6ca59e128fe6cf26f1335fbd81d2f4a30bf9fce1\"\u003e\u003ccode\u003e6ca59e1\u003c/code\u003e\u003c/a\u003e backport: internal: streamline release process (\u003ca href=\"https://redirect.github.com/graphql/graphql-js/issues/4615\"\u003e#4615\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/graphql/graphql-js/issues/4626\"\u003e#4626\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/graphql/graphql-js/commit/df8c53f5157b9d8312160b1d5baf1f7029213097\"\u003e\u003ccode\u003edf8c53f\u003c/code\u003e\u003c/a\u003e docs: dev mode for v17 (\u003ca href=\"https://redirect.github.com/graphql/graphql-js/issues/4611\"\u003e#4611\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/graphql/graphql-js/compare/v16.13.1...v16.14.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `happy-dom` from 20.8.3 to 20.9.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/capricorn86/happy-dom/releases\"\u003ehappy-dom's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev20.9.0\u003c/h2\u003e\n\u003ch3\u003e:art: Features\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdds support for event listener properties on Window (e.g. \u003ccode\u003eWindow.onkeydown\u003c/code\u003e) - By \u003cstrong\u003e\u003ca href=\"https://github.com/capricorn86\"\u003e\u003ccode\u003e@​capricorn86\u003c/code\u003e\u003c/a\u003e\u003c/strong\u003e in task \u003ca href=\"https://redirect.github.com/capricorn86/happy-dom/issues/2131\"\u003e#2131\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev20.8.9\u003c/h2\u003e\n\u003ch3\u003e:construction_worker_man: Patch fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFixes issue where cookies from the current origin was being forwarded to the target origin in fetch requests - By \u003cstrong\u003e\u003ca href=\"https://github.com/capricorn86\"\u003e\u003ccode\u003e@​capricorn86\u003c/code\u003e\u003c/a\u003e\u003c/strong\u003e in task \u003ca href=\"https://redirect.github.com/capricorn86/happy-dom/issues/2117\"\u003e#2117\u003c/a\u003e\n\u003cul\u003e\n\u003cli\u003eA security advisory (\u003ca href=\"https://github.com/capricorn86/happy-dom/security/advisories/GHSA-w4gp-fjgq-3q4g\"\u003eGHSA-w4gp-fjgq-3q4g\u003c/a\u003e) was reported for this security vulnerability. Big thanks to \u003ca href=\"https://github.com/r74tech\"\u003e\u003ccode\u003e@​r74tech\u003c/code\u003e\u003c/a\u003e for reporting this!\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev20.8.8\u003c/h2\u003e\n\u003ch3\u003e:construction_worker_man: Patch fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFixes issue where export names can be interpolated as executable code in ESM - By \u003cstrong\u003e\u003ca href=\"https://github.com/capricorn86\"\u003e\u003ccode\u003e@​capricorn86\u003c/code\u003e\u003c/a\u003e\u003c/strong\u003e in task \u003ca href=\"https://redirect.github.com/capricorn86/happy-dom/issues/2113\"\u003e#2113\u003c/a\u003e\n\u003cul\u003e\n\u003cli\u003eA security advisory (\u003ca href=\"https://github.com/capricorn86/happy-dom/security/advisories/GHSA-6q6h-j7hj-3r64\"\u003eGHSA-6q6h-j7hj-3r64\u003c/a\u003e) has been reported that shows a security vulnerability where it may be possible to escape the VM context and get access to process level functionality in unsafe environments using CommonJS. Big thanks to \u003ca href=\"https://github.com/tndud042713\"\u003e\u003ccode\u003e@​tndud042713\u003c/code\u003e\u003c/a\u003e for reporting this!\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev20.8.7\u003c/h2\u003e\n\u003ch3\u003e:construction_worker_man: Patch fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eReplace implementing Node.js \u003ccode\u003eConsole\u003c/code\u003e with common \u003ccode\u003eIConsole\u003c/code\u003e interface to support latest version of Bun - By \u003cstrong\u003e\u003ca href=\"https://github.com/YevheniiKotyrlo\"\u003e\u003ccode\u003e@​YevheniiKotyrlo\u003c/code\u003e\u003c/a\u003e\u003c/strong\u003e in task \u003ca href=\"https://redirect.github.com/capricorn86/happy-dom/issues/1845\"\u003e#1845\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev20.8.6\u003c/h2\u003e\n\u003ch3\u003e:construction_worker_man: Patch fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eRequest.formData()\u003c/code\u003e should honor \u0026quot;Content-Type\u0026quot; header - By \u003cstrong\u003e\u003ca href=\"https://github.com/brianhelba\"\u003e\u003ccode\u003e@​brianhelba\u003c/code\u003e\u003c/a\u003e\u003c/strong\u003e in task \u003ca href=\"https://redirect.github.com/capricorn86/happy-dom/issues/2106\"\u003e#2106\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev20.8.5\u003c/h2\u003e\n\u003ch3\u003e:construction_worker_man: Patch fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFixes error thrown when modifying DOM structure in \u003ccode\u003econnectedCallback()\u003c/code\u003e - By \u003cstrong\u003e\u003ca href=\"https://github.com/capricorn86\"\u003e\u003ccode\u003e@​capricorn86\u003c/code\u003e\u003c/a\u003e\u003c/strong\u003e in task \u003ca href=\"https://redirect.github.com/capricorn86/happy-dom/issues/2110\"\u003e#2110\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev20.8.4\u003c/h2\u003e\n\u003ch3\u003e:construction_worker_man: Patch fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eReplace ConsoleConstructor import with indexed access type - By \u003cstrong\u003e\u003ca href=\"https://github.com/YevheniiKotyrlo\"\u003e\u003ccode\u003e@​YevheniiKotyrlo\u003c/code\u003e\u003c/a\u003e\u003c/strong\u003e in task \u003ca href=\"https://redirect.github.com/capricorn86/happy-dom/issues/1845\"\u003e#1845\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/capricorn86/happy-dom/commit/4090adefaf116143ebabf3226581c1261c09e877\"\u003e\u003ccode\u003e4090ade\u003c/code\u003e\u003c/a\u003e fix: \u003ca href=\"https://redirect.github.com/capricorn86/happy-dom/issues/0\"\u003e#0\u003c/a\u003e Fix github release workflow (\u003ca href=\"https://redirect.github.com/capricorn86/happy-dom/issues/2140\"\u003e#2140\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/capricorn86/happy-dom/commit/c7c2bb506377f2b38218486b166b89a9b0e5b174\"\u003e\u003ccode\u003ec7c2bb5\u003c/code\u003e\u003c/a\u003e fix: \u003ca href=\"https://redirect.github.com/capricorn86/happy-dom/issues/0\"\u003e#0\u003c/a\u003e Fix github release workflow (\u003ca href=\"https://redirect.github.com/capricorn86/happy-dom/issues/2139\"\u003e#2139\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/capricorn86/happy-dom/commit/d541143d69e6593422e32c7c3853213ee04af545\"\u003e\u003ccode\u003ed541143\u003c/code\u003e\u003c/a\u003e fix: \u003ca href=\"...\n\n_Description has been truncated_","html_url":"https://github.com/jetmobsol/serene/pull/12","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/jetmobsol%2Fserene/issues/12","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/12/packages"},{"uuid":"4466565468","node_id":"PR_kwDOSVtFqM7chS2S","number":3,"state":"open","title":"deps(deps): bump the all-dependencies group across 1 directory with 66 updates","user":"dependabot[bot]","labels":[],"assignees":[],"locked":false,"comments_count":1,"pull_request":true,"closed_at":null,"author_association":null,"state_reason":null,"created_at":"2026-05-18T05:42:52.000Z","updated_at":"2026-05-18T05:42:53.000Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"deps(deps): bump","group_name":"all-dependencies","update_count":66,"packages":[{"name":"@eslint-react/eslint-plugin","old_version":"2.13.0","new_version":"5.8.1","repository_url":"https://github.com/Rel1cx/eslint-react"},{"name":"@eslint/js","old_version":"9.39.2","new_version":"10.0.1","repository_url":"https://github.com/eslint/eslint"},{"name":"@typescript-eslint/eslint-plugin","old_version":"8.56.0","new_version":"8.59.3","repository_url":"https://github.com/typescript-eslint/typescript-eslint"},{"name":"@typescript-eslint/parser","old_version":"8.56.0","new_version":"8.59.3","repository_url":"https://github.com/typescript-eslint/typescript-eslint"},{"name":"eslint","old_version":"9.39.2","new_version":"10.4.0","repository_url":"https://github.com/eslint/eslint"},{"name":"eslint-plugin-react-hooks","old_version":"7.0.1","new_version":"7.1.1","repository_url":"https://github.com/facebook/react"},{"name":"globals","old_version":"17.3.0","new_version":"17.6.0","repository_url":"https://github.com/sindresorhus/globals"},{"name":"graphql","old_version":"16.12.0","new_version":"16.14.0","repository_url":"https://github.com/graphql/graphql-js"},{"name":"happy-dom","old_version":"20.6.2","new_version":"20.9.0","repository_url":"https://github.com/capricorn86/happy-dom"},{"name":"jiti","old_version":"2.6.1","new_version":"2.7.0","repository_url":"https://github.com/unjs/jiti"},{"name":"lint-staged","old_version":"16.2.7","new_version":"17.0.5","repository_url":"https://github.com/lint-staged/lint-staged"},{"name":"mermaid","old_version":"11.12.3","new_version":"11.15.0","repository_url":"https://github.com/mermaid-js/mermaid"},{"name":"prettier","old_version":"3.8.1","new_version":"3.8.3","repository_url":"https://github.com/prettier/prettier"},{"name":"react","old_version":"19.2.4","new_version":"19.2.6","repository_url":"https://github.com/facebook/react"},{"name":"typescript","old_version":"5.9.3","new_version":"6.0.3","repository_url":"https://github.com/microsoft/TypeScript"},{"name":"typescript-eslint","old_version":"8.56.0","new_version":"8.59.3","repository_url":"https://github.com/typescript-eslint/typescript-eslint"},{"name":"typescript-language-server","old_version":"5.1.3","new_version":"5.2.0","repository_url":"https://github.com/typescript-language-server/typescript-language-server"},{"name":"vite","old_version":"7.3.1","new_version":"8.0.13","repository_url":"https://github.com/vitejs/vite"},{"name":"vitepress","old_version":"2.0.0-alpha.16","new_version":"2.0.0-alpha.17","repository_url":"https://github.com/vuejs/vitepress"},{"name":"vitepress-plugin-llms","old_version":"1.11.0","new_version":"1.12.2","repository_url":"https://github.com/okineadev/vitepress-plugin-llms"},{"name":"vitest","old_version":"4.0.18","new_version":"4.1.6","repository_url":"https://github.com/vitest-dev/vitest"},{"name":"wrangler","old_version":"4.66.0","new_version":"4.92.0","repository_url":"https://github.com/cloudflare/workers-sdk"},{"name":"@ai-sdk/openai","old_version":"3.0.29","new_version":"3.0.64","repository_url":"https://github.com/vercel/ai"},{"name":"@better-auth/passkey","old_version":"1.4.18","new_version":"1.6.11","repository_url":"https://github.com/better-auth/better-auth"},{"name":"@better-auth/stripe","old_version":"1.4.18","new_version":"1.6.11","repository_url":"https://github.com/better-auth/better-auth"},{"name":"@trpc/server","old_version":"11.10.0","new_version":"11.17.0","repository_url":"https://github.com/trpc/trpc"},{"name":"ai","old_version":"6.0.91","new_version":"6.0.184","repository_url":"https://github.com/vercel/ai"},{"name":"better-auth","old_version":"1.4.18","new_version":"1.6.11","repository_url":"https://github.com/better-auth/better-auth"},{"name":"drizzle-orm","old_version":"0.45.1","new_version":"0.45.2","repository_url":"https://github.com/drizzle-team/drizzle-orm"},{"name":"postgres","old_version":"3.4.8","new_version":"3.4.9","repository_url":"https://github.com/porsager/postgres"},{"name":"resend","old_version":"6.9.2","new_version":"6.12.3","repository_url":"https://github.com/resend/resend-node"},{"name":"stripe","old_version":"20.3.1","new_version":"22.1.1","repository_url":"https://github.com/stripe/stripe-node"},{"name":"@cloudflare/workers-types","old_version":"4.20260218.0","new_version":"4.20260518.1","repository_url":"https://github.com/cloudflare/workerd"},{"name":"@types/bun","old_version":"1.3.9","new_version":"1.3.14","repository_url":"https://github.com/DefinitelyTyped/DefinitelyTyped"},{"name":"hono","old_version":"4.11.10","new_version":"4.12.19","repository_url":"https://github.com/honojs/hono"},{"name":"@tanstack/react-query","old_version":"5.90.21","new_version":"5.100.10","repository_url":"https://github.com/TanStack/query"},{"name":"@tanstack/react-router","old_version":"1.161.1","new_version":"1.170.4","repository_url":"https://github.com/TanStack/router"},{"name":"@trpc/client","old_version":"11.10.0","new_version":"11.17.0","repository_url":"https://github.com/trpc/trpc"},{"name":"@trpc/tanstack-react-query","old_version":"11.10.0","new_version":"11.17.0","repository_url":"https://github.com/trpc/trpc"},{"name":"jotai","old_version":"2.17.1","new_version":"2.20.0","repository_url":"https://github.com/pmndrs/jotai"},{"name":"jotai-effect","old_version":"2.2.3","new_version":"2.3.1","repository_url":"https://github.com/jotaijs/jotai-effect"},{"name":"lucide-react","old_version":"0.574.0","new_version":"1.16.0","repository_url":"https://github.com/lucide-icons/lucide"},{"name":"react-dom","old_version":"19.2.4","new_version":"19.2.6","repository_url":"https://github.com/facebook/react"},{"name":"tailwind-merge","old_version":"3.4.1","new_version":"3.6.0","repository_url":"https://github.com/dcastil/tailwind-merge"},{"name":"@tailwindcss/postcss","old_version":"4.2.0","new_version":"4.3.0","repository_url":"https://github.com/tailwindlabs/tailwindcss"},{"name":"@tanstack/react-query-devtools","old_version":"5.91.3","new_version":"5.100.10","repository_url":"https://github.com/TanStack/query"},{"name":"@tanstack/react-router-devtools","old_version":"1.161.1","new_version":"1.167.0","repository_url":"https://github.com/TanStack/router"},{"name":"@tanstack/router-plugin","old_version":"1.161.1","new_version":"1.168.6","repository_url":"https://github.com/TanStack/router"},{"name":"@types/node","old_version":"25.2.3","new_version":"25.8.0","repository_url":"https://github.com/DefinitelyTyped/DefinitelyTyped"},{"name":"@vitejs/plugin-react","old_version":"5.1.4","new_version":"6.0.2","repository_url":"https://github.com/vitejs/vite-plugin-react"},{"name":"@vitejs/plugin-react-swc","old_version":"4.2.3","new_version":"4.3.1","repository_url":"https://github.com/vitejs/vite-plugin-react"},{"name":"autoprefixer","old_version":"10.4.24","new_version":"10.5.0","repository_url":"https://github.com/postcss/autoprefixer"},{"name":"globby","old_version":"16.1.1","new_version":"16.2.0","repository_url":"https://github.com/sindresorhus/globby"},{"name":"@react-email/components","old_version":"1.0.8","new_version":"1.0.12","repository_url":"https://github.com/resend/react-email"},{"name":"@react-email/render","old_version":"2.0.4","new_version":"2.0.8","repository_url":"https://github.com/resend/react-email"},{"name":"@react-email/preview-server","old_version":"5.2.8","new_version":"5.2.10","repository_url":"https://github.com/resend/react-email"},{"name":"react-email","old_version":"5.2.8","new_version":"6.1.4","repository_url":"https://github.com/resend/react-email"},{"name":"@astrojs/react","old_version":"4.4.2","new_version":"5.0.5","repository_url":"https://github.com/withastro/astro"},{"name":"astro","old_version":"5.17.2","new_version":"6.3.3","repository_url":"https://github.com/withastro/astro"},{"name":"dotenv","old_version":"17.3.1","new_version":"17.4.2","repository_url":"https://github.com/motdotla/dotenv"},{"name":"drizzle-kit","old_version":"0.31.9","new_version":"0.31.10","repository_url":"https://github.com/drizzle-team/drizzle-orm"},{"name":"@modelcontextprotocol/sdk","old_version":"1.26.0","new_version":"1.29.0","repository_url":"https://github.com/modelcontextprotocol/typescript-sdk"},{"name":"got","old_version":"14.6.6","new_version":"15.0.5","repository_url":"https://github.com/sindresorhus/got"}],"path":null,"ecosystem":"npm"},"body":"Bumps the all-dependencies group with 63 updates in the / directory:\n\n| Package | From | To |\n| --- | --- | --- |\n| [@eslint-react/eslint-plugin](https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin) | `2.13.0` | `5.8.1` |\n| [@eslint/js](https://github.com/eslint/eslint/tree/HEAD/packages/js) | `9.39.2` | `10.0.1` |\n| [@typescript-eslint/eslint-plugin](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin) | `8.56.0` | `8.59.3` |\n| [@typescript-eslint/parser](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/parser) | `8.56.0` | `8.59.3` |\n| [eslint](https://github.com/eslint/eslint) | `9.39.2` | `10.4.0` |\n| [eslint-plugin-react-hooks](https://github.com/facebook/react/tree/HEAD/packages/eslint-plugin-react-hooks) | `7.0.1` | `7.1.1` |\n| [globals](https://github.com/sindresorhus/globals) | `17.3.0` | `17.6.0` |\n| [graphql](https://github.com/graphql/graphql-js) | `16.12.0` | `16.14.0` |\n| [happy-dom](https://github.com/capricorn86/happy-dom) | `20.6.2` | `20.9.0` |\n| [jiti](https://github.com/unjs/jiti) | `2.6.1` | `2.7.0` |\n| [lint-staged](https://github.com/lint-staged/lint-staged) | `16.2.7` | `17.0.5` |\n| [mermaid](https://github.com/mermaid-js/mermaid) | `11.12.3` | `11.15.0` |\n| [prettier](https://github.com/prettier/prettier) | `3.8.1` | `3.8.3` |\n| [react](https://github.com/facebook/react/tree/HEAD/packages/react) | `19.2.4` | `19.2.6` |\n| [typescript](https://github.com/microsoft/TypeScript) | `5.9.3` | `6.0.3` |\n| [typescript-eslint](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/typescript-eslint) | `8.56.0` | `8.59.3` |\n| [typescript-language-server](https://github.com/typescript-language-server/typescript-language-server) | `5.1.3` | `5.2.0` |\n| [vite](https://github.com/vitejs/vite/tree/HEAD/packages/vite) | `7.3.1` | `8.0.13` |\n| [vitepress](https://github.com/vuejs/vitepress) | `2.0.0-alpha.16` | `2.0.0-alpha.17` |\n| [vitepress-plugin-llms](https://github.com/okineadev/vitepress-plugin-llms) | `1.11.0` | `1.12.2` |\n| [vitest](https://github.com/vitest-dev/vitest/tree/HEAD/packages/vitest) | `4.0.18` | `4.1.6` |\n| [wrangler](https://github.com/cloudflare/workers-sdk/tree/HEAD/packages/wrangler) | `4.66.0` | `4.92.0` |\n| [@ai-sdk/openai](https://github.com/vercel/ai/tree/HEAD/packages/openai) | `3.0.29` | `3.0.64` |\n| [@better-auth/passkey](https://github.com/better-auth/better-auth/tree/HEAD/packages/passkey) | `1.4.18` | `1.6.11` |\n| [@better-auth/stripe](https://github.com/better-auth/better-auth/tree/HEAD/packages/stripe) | `1.4.18` | `1.6.11` |\n| [@trpc/server](https://github.com/trpc/trpc/tree/HEAD/packages/server) | `11.10.0` | `11.17.0` |\n| [ai](https://github.com/vercel/ai/tree/HEAD/packages/ai) | `6.0.91` | `6.0.184` |\n| [better-auth](https://github.com/better-auth/better-auth/tree/HEAD/packages/better-auth) | `1.4.18` | `1.6.11` |\n| [drizzle-orm](https://github.com/drizzle-team/drizzle-orm) | `0.45.1` | `0.45.2` |\n| [postgres](https://github.com/porsager/postgres) | `3.4.8` | `3.4.9` |\n| [resend](https://github.com/resend/resend-node) | `6.9.2` | `6.12.3` |\n| [stripe](https://github.com/stripe/stripe-node) | `20.3.1` | `22.1.1` |\n| [@cloudflare/workers-types](https://github.com/cloudflare/workerd) | `4.20260218.0` | `4.20260518.1` |\n| [@types/bun](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/bun) | `1.3.9` | `1.3.14` |\n| [hono](https://github.com/honojs/hono) | `4.11.10` | `4.12.19` |\n| [@tanstack/react-query](https://github.com/TanStack/query/tree/HEAD/packages/react-query) | `5.90.21` | `5.100.10` |\n| [@tanstack/react-router](https://github.com/TanStack/router/tree/HEAD/packages/react-router) | `1.161.1` | `1.170.4` |\n| [@trpc/client](https://github.com/trpc/trpc/tree/HEAD/packages/client) | `11.10.0` | `11.17.0` |\n| [@trpc/tanstack-react-query](https://github.com/trpc/trpc/tree/HEAD/packages/tanstack-react-query) | `11.10.0` | `11.17.0` |\n| [jotai](https://github.com/pmndrs/jotai) | `2.17.1` | `2.20.0` |\n| [jotai-effect](https://github.com/jotaijs/jotai-effect) | `2.2.3` | `2.3.1` |\n| [lucide-react](https://github.com/lucide-icons/lucide/tree/HEAD/packages/lucide-react) | `0.574.0` | `1.16.0` |\n| [react-dom](https://github.com/facebook/react/tree/HEAD/packages/react-dom) | `19.2.4` | `19.2.6` |\n| [tailwind-merge](https://github.com/dcastil/tailwind-merge) | `3.4.1` | `3.6.0` |\n| [@tailwindcss/postcss](https://github.com/tailwindlabs/tailwindcss/tree/HEAD/packages/@tailwindcss-postcss) | `4.2.0` | `4.3.0` |\n| [@tanstack/react-query-devtools](https://github.com/TanStack/query/tree/HEAD/packages/react-query-devtools) | `5.91.3` | `5.100.10` |\n| [@tanstack/react-router-devtools](https://github.com/TanStack/router/tree/HEAD/packages/react-router-devtools) | `1.161.1` | `1.167.0` |\n| [@tanstack/router-plugin](https://github.com/TanStack/router/tree/HEAD/packages/router-plugin) | `1.161.1` | `1.168.6` |\n| [@types/node](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/node) | `25.2.3` | `25.8.0` |\n| [@vitejs/plugin-react](https://github.com/vitejs/vite-plugin-react/tree/HEAD/packages/plugin-react) | `5.1.4` | `6.0.2` |\n| [@vitejs/plugin-react-swc](https://github.com/vitejs/vite-plugin-react/tree/HEAD/packages/plugin-react-swc) | `4.2.3` | `4.3.1` |\n| [autoprefixer](https://github.com/postcss/autoprefixer) | `10.4.24` | `10.5.0` |\n| [globby](https://github.com/sindresorhus/globby) | `16.1.1` | `16.2.0` |\n| [@react-email/components](https://github.com/resend/react-email/tree/HEAD/packages/components) | `1.0.8` | `1.0.12` |\n| [@react-email/render](https://github.com/resend/react-email/tree/HEAD/packages/render) | `2.0.4` | `2.0.8` |\n| [@react-email/preview-server](https://github.com/resend/react-email/tree/HEAD/packages/preview-server) | `5.2.8` | `5.2.10` |\n| [react-email](https://github.com/resend/react-email/tree/HEAD/packages/react-email) | `5.2.8` | `6.1.4` |\n| [@astrojs/react](https://github.com/withastro/astro/tree/HEAD/packages/integrations/react) | `4.4.2` | `5.0.5` |\n| [astro](https://github.com/withastro/astro/tree/HEAD/packages/astro) | `5.17.2` | `6.3.3` |\n| [dotenv](https://github.com/motdotla/dotenv) | `17.3.1` | `17.4.2` |\n| [drizzle-kit](https://github.com/drizzle-team/drizzle-orm) | `0.31.9` | `0.31.10` |\n| [@modelcontextprotocol/sdk](https://github.com/modelcontextprotocol/typescript-sdk) | `1.26.0` | `1.29.0` |\n| [got](https://github.com/sindresorhus/got) | `14.6.6` | `15.0.5` |\n\n\nUpdates `@eslint-react/eslint-plugin` from 2.13.0 to 5.8.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/Rel1cx/eslint-react/releases\"\u003e@​eslint-react/eslint-plugin's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev5.8.1 (2026-05-18)\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003ch3\u003e📝 Documentation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eRestructured rule documentation across all plugins from the \u003ccode\u003eCommon Violations / Invalid / Valid\u003c/code\u003e format to the new \u003ccode\u003eExamples / scenario-based / Troubleshooting / Further Reading\u003c/code\u003e format (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1784\"\u003e#1784\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eUpdated README tagline and description, removed the Benchmark section, and fixed migration guide links (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1783\"\u003e#1783\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eUpdated website recipe docs, FAQ, and third-party plugins page (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1783\"\u003e#1783\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🏗️ Internal\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpdated \u003ccode\u003escripts/scaffold-rule.ts\u003c/code\u003e and the rule request issue template to match the new documentation structure (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1782\"\u003e#1782\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/Rel1cx/eslint-react/compare/v5.8.0...v5.8.1\"\u003ehttps://github.com/Rel1cx/eslint-react/compare/v5.8.0...v5.8.1\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev5.8.0 (2026-05-17)\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003ch3\u003e🪄 Improvements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003e\u003ccode\u003ereact-jsx/no-children-prop\u003c/code\u003e\u003c/strong\u003e, \u003cstrong\u003e\u003ccode\u003ereact-jsx/no-children-prop-with-children\u003c/code\u003e\u003c/strong\u003e: Added support for \u003ccode\u003ecreateElement\u003c/code\u003e calls in addition to JSX elements (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1780\"\u003e#1780\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e📝 Documentation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdded \u003ccode\u003eeslint-plugin-perfectionist\u003c/code\u003e to the third-party plugins documentation page (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1778\"\u003e#1778\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🏗️ Internal\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eBumped \u003ccode\u003eimport-integrity-lint\u003c/code\u003e to 1.0.1.\u003c/li\u003e\n\u003cli\u003eFixed multiple versions of \u003ccode\u003etypescript-eslint\u003c/code\u003e and \u003ccode\u003eimport-integrity-lint\u003c/code\u003e in the workspace (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1776\"\u003e#1776\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eIncreased pnpm \u003ccode\u003eminimumReleaseAge\u003c/code\u003e to 3 days and updated lockfile (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1779\"\u003e#1779\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eRemoved \u003ccode\u003e.repos\u003c/code\u003e directory references from config files (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1773\"\u003e#1773\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eRemoved obsolete maintenance scripts (\u003ccode\u003ecreate-spec-alignment-issues.sh\u003c/code\u003e, \u003ccode\u003emigrate-labels.sh\u003c/code\u003e) (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1777\"\u003e#1777\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eReplaced \u003ccode\u003eeslint-plugin-fast-import\u003c/code\u003e with \u003ccode\u003eimport-integrity-lint\u003c/code\u003e (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1774\"\u003e#1774\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eSimplified the publish CI workflow by skipping install scripts and removing the lint step (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1775\"\u003e#1775\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/Rel1cx/eslint-react/compare/v5.7.10...v5.8.0\"\u003ehttps://github.com/Rel1cx/eslint-react/compare/v5.7.10...v5.8.0\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev5.7.10 (2026-05-16)\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003ch3\u003e🐞 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003e\u003ccode\u003ereact-x/no-leaked-conditional-rendering\u003c/code\u003e\u003c/strong\u003e, \u003cstrong\u003e\u003ccode\u003ereact-x/set-state-in-effect\u003c/code\u003e\u003c/strong\u003e: Added cycle detection to prevent stack overflow in recursive function analysis (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1769\"\u003e#1769\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e📝 Documentation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdded \u003ccode\u003ethird-party-plugins.mdx\u003c/code\u003e documentation page.\u003c/li\u003e\n\u003cli\u003eAdded spec diff and compiler test fixtures for \u003ccode\u003ereact-x/globals\u003c/code\u003e rule.\u003c/li\u003e\n\u003cli\u003eUpdated ESLint Stylistic link to rules anchor.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/Rel1cx/eslint-react/blob/main/CHANGELOG.md\"\u003e@​eslint-react/eslint-plugin's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev5.8.1 (2026-05-18)\u003c/h2\u003e\n\u003ch3\u003e📝 Documentation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eRestructured rule documentation across all plugins (\u003ccode\u003eeslint-plugin-react-x\u003c/code\u003e, \u003ccode\u003eeslint-plugin-react-dom\u003c/code\u003e, \u003ccode\u003eeslint-plugin-react-jsx\u003c/code\u003e, \u003ccode\u003eeslint-plugin-react-web-api\u003c/code\u003e, \u003ccode\u003eeslint-plugin-react-naming-convention\u003c/code\u003e, \u003ccode\u003eeslint-plugin-react-debug\u003c/code\u003e, \u003ccode\u003eeslint-plugin-react-rsc\u003c/code\u003e) from the \u003ccode\u003eCommon Violations / Invalid / Valid\u003c/code\u003e format to the new \u003ccode\u003eExamples / scenario-based / Troubleshooting / Further Reading\u003c/code\u003e format (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1784\"\u003e#1784\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eUpdated README tagline and description, removed the Benchmark section, and fixed migration guide links (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1783\"\u003e#1783\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eUpdated website recipe docs, FAQ, and third-party plugins page (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1783\"\u003e#1783\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🏗️ Internal\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpdated \u003ccode\u003escripts/scaffold-rule.ts\u003c/code\u003e and the rule request issue template to match the new documentation structure (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1782\"\u003e#1782\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/Rel1cx/eslint-react/compare/v5.8.0...v5.8.1\"\u003ehttps://github.com/Rel1cx/eslint-react/compare/v5.8.0...v5.8.1\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev5.8.0 (2026-05-17)\u003c/h2\u003e\n\u003ch3\u003e🪄 Improvements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003e\u003ccode\u003ereact-jsx/no-children-prop\u003c/code\u003e\u003c/strong\u003e, \u003cstrong\u003e\u003ccode\u003ereact-jsx/no-children-prop-with-children\u003c/code\u003e\u003c/strong\u003e: Added support for \u003ccode\u003ecreateElement\u003c/code\u003e calls in addition to JSX elements (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1780\"\u003e#1780\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e📝 Documentation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdded \u003ccode\u003eeslint-plugin-perfectionist\u003c/code\u003e to the third-party plugins documentation page (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1778\"\u003e#1778\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🏗️ Internal\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eBumped \u003ccode\u003eimport-integrity-lint\u003c/code\u003e to 1.0.1.\u003c/li\u003e\n\u003cli\u003eFixed multiple versions of \u003ccode\u003etypescript-eslint\u003c/code\u003e and \u003ccode\u003eimport-integrity-lint\u003c/code\u003e in the workspace (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1776\"\u003e#1776\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eIncreased pnpm \u003ccode\u003eminimumReleaseAge\u003c/code\u003e to 3 days and updated lockfile (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1779\"\u003e#1779\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eRemoved \u003ccode\u003e.repos\u003c/code\u003e directory references from config files (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1773\"\u003e#1773\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eRemoved obsolete maintenance scripts (\u003ccode\u003ecreate-spec-alignment-issues.sh\u003c/code\u003e, \u003ccode\u003emigrate-labels.sh\u003c/code\u003e) (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1777\"\u003e#1777\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eReplaced \u003ccode\u003eeslint-plugin-fast-import\u003c/code\u003e with \u003ccode\u003eimport-integrity-lint\u003c/code\u003e (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1774\"\u003e#1774\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eSimplified the publish CI workflow by skipping install scripts and removing the lint step (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1775\"\u003e#1775\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/Rel1cx/eslint-react/compare/v5.7.10...v5.8.0\"\u003ehttps://github.com/Rel1cx/eslint-react/compare/v5.7.10...v5.8.0\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev5.7.10 (2026-05-16)\u003c/h2\u003e\n\u003ch3\u003e🐞 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003e\u003ccode\u003ereact-x/no-leaked-conditional-rendering\u003c/code\u003e\u003c/strong\u003e, \u003cstrong\u003e\u003ccode\u003ereact-x/set-state-in-effect\u003c/code\u003e\u003c/strong\u003e: Added cycle detection to prevent stack overflow in recursive function analysis (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1769\"\u003e#1769\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e📝 Documentation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdded \u003ccode\u003ethird-party-plugins.mdx\u003c/code\u003e documentation page.\u003c/li\u003e\n\u003cli\u003eAdded spec diff and compiler test fixtures for \u003ccode\u003ereact-x/globals\u003c/code\u003e rule.\u003c/li\u003e\n\u003cli\u003eUpdated ESLint Stylistic link to rules anchor.\u003c/li\u003e\n\u003cli\u003eUpdated community projects (added Obsidian Copilot).\u003c/li\u003e\n\u003cli\u003eAdded redirects and simplified removed docs page.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/94549a1e3496d2ef3dff60b6332f17656469b2f0\"\u003e\u003ccode\u003e94549a1\u003c/code\u003e\u003c/a\u003e release: 5.8.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/2821bb11803f5ef8c8021d3deed84183ce136a24\"\u003e\u003ccode\u003e2821bb1\u003c/code\u003e\u003c/a\u003e docs: restructure rule documentation to new Examples-based format (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1784\"\u003e#1784\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/4317c311d29c5d0c9aa8b48d335172f60b4d4487\"\u003e\u003ccode\u003e4317c31\u003c/code\u003e\u003c/a\u003e release: 5.8.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/e060debd13fc873a83ed9ac143d559bf5e0c3fac\"\u003e\u003ccode\u003ee060deb\u003c/code\u003e\u003c/a\u003e release: 5.7.10\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/752585a5125e2d53c7ced0df2e58fe8960d3cbd2\"\u003e\u003ccode\u003e752585a\u003c/code\u003e\u003c/a\u003e release: 5.7.10-beta.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/24a9443a01f832ba3b960a3f67fbf38a3de490ca\"\u003e\u003ccode\u003e24a9443\u003c/code\u003e\u003c/a\u003e release: 5.7.10-next.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/50d7dc0bcfc01cfc9bf9d5190db218fb9719a869\"\u003e\u003ccode\u003e50d7dc0\u003c/code\u003e\u003c/a\u003e release: 5.7.8\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/be9e7865cac798b3111840ced8c81d38ec660f4d\"\u003e\u003ccode\u003ebe9e786\u003c/code\u003e\u003c/a\u003e release: 5.7.8-beta.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/e14aabca9a1ed01e08fdd3dd55627cb05f9c1c1f\"\u003e\u003ccode\u003ee14aabc\u003c/code\u003e\u003c/a\u003e release: 5.7.8-next.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/7be40890022163dfa1b8a40b5a1ac25354d2e7db\"\u003e\u003ccode\u003e7be4089\u003c/code\u003e\u003c/a\u003e release: 5.7.7\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/Rel1cx/eslint-react/commits/v5.8.1/plugins/eslint-plugin\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@eslint/js` from 9.39.2 to 10.0.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/eslint/eslint/releases\"\u003e@​eslint/js's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev10.0.1\u003c/h2\u003e\n\u003ch2\u003eBug Fixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/c87d5bded54c5cf491eb04c24c9d09bbbd42c23e\"\u003e\u003ccode\u003ec87d5bd\u003c/code\u003e\u003c/a\u003e fix: update eslint (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20531\"\u003e#20531\u003c/a\u003e) (renovate[bot])\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/d84100115c14691691058f00779c94e74fca946a\"\u003e\u003ccode\u003ed841001\u003c/code\u003e\u003c/a\u003e fix: update \u003ccode\u003eminimatch\u003c/code\u003e to \u003ccode\u003e10.2.1\u003c/code\u003e to address security vulnerabilities (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20519\"\u003e#20519\u003c/a\u003e) (루밀LuMir)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/04c21475b3004904948f02049f2888b401d82c78\"\u003e\u003ccode\u003e04c2147\u003c/code\u003e\u003c/a\u003e fix: update error message for unused suppressions (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20496\"\u003e#20496\u003c/a\u003e) (fnx)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/38b089c1726feac0e31a31d47941bd99e29ce003\"\u003e\u003ccode\u003e38b089c\u003c/code\u003e\u003c/a\u003e fix: update dependency \u003ccode\u003e@​eslint/config-array\u003c/code\u003e to ^0.23.1 (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20484\"\u003e#20484\u003c/a\u003e) (renovate[bot])\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eDocumentation\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/5b3dbce50a1404a9f118afe810cefeee79388a2a\"\u003e\u003ccode\u003e5b3dbce\u003c/code\u003e\u003c/a\u003e docs: add AI acknowledgement section to templates (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20431\"\u003e#20431\u003c/a\u003e) (루밀LuMir)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/6f23076037d5879f20fb3be2ef094293b1e8d38c\"\u003e\u003ccode\u003e6f23076\u003c/code\u003e\u003c/a\u003e docs: toggle nav in no-JS mode (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20476\"\u003e#20476\u003c/a\u003e) (Tanuj Kanti)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/b69cfb32a16c5d5e9986390d484fae1d21e406f9\"\u003e\u003ccode\u003eb69cfb3\u003c/code\u003e\u003c/a\u003e docs: Update README (GitHub Actions Bot)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eChores\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/e5c281ffd038a3a7a3e5364db0b9378e0ad83020\"\u003e\u003ccode\u003ee5c281f\u003c/code\u003e\u003c/a\u003e chore: updates for v9.39.3 release (Jenkins)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/8c3832adb77cd993b4a24891900d5eeaaf093cdc\"\u003e\u003ccode\u003e8c3832a\u003c/code\u003e\u003c/a\u003e chore: update \u003ccode\u003e@​typescript-eslint/parser\u003c/code\u003e to ^8.56.0 (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20514\"\u003e#20514\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/8330d238ae6adb68bb6a1c9381e38cfedd990d94\"\u003e\u003ccode\u003e8330d23\u003c/code\u003e\u003c/a\u003e test: add tests for config-api (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20493\"\u003e#20493\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/37d6e91e88fa6a2ca6d8726679096acff21ba6cc\"\u003e\u003ccode\u003e37d6e91\u003c/code\u003e\u003c/a\u003e chore: remove eslint v10 prereleases from eslint-config-eslint deps (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20494\"\u003e#20494\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/da7cd0e79197ad16e17052eef99df141de6dbfb1\"\u003e\u003ccode\u003eda7cd0e\u003c/code\u003e\u003c/a\u003e refactor: cleanup error message templates (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20479\"\u003e#20479\u003c/a\u003e) (Francesco Trotta)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/84fb885d49ac810e79a9491276b4828b53d913e5\"\u003e\u003ccode\u003e84fb885\u003c/code\u003e\u003c/a\u003e chore: package.json update for \u003ccode\u003e@​eslint/js\u003c/code\u003e release (Jenkins)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/1f667344b57c4c09b548d94bcfac1f91b6e5c63d\"\u003e\u003ccode\u003e1f66734\u003c/code\u003e\u003c/a\u003e chore: add \u003ccode\u003eeslint\u003c/code\u003e to \u003ccode\u003epeerDependencies\u003c/code\u003e of \u003ccode\u003e@eslint/js\u003c/code\u003e (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20467\"\u003e#20467\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev10.0.0\u003c/h2\u003e\n\u003ch2\u003eBreaking Changes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/f9e54f43a5e497cdfa179338b431093245cb787b\"\u003e\u003ccode\u003ef9e54f4\u003c/code\u003e\u003c/a\u003e feat!: estimate rule-tester failure location (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20420\"\u003e#20420\u003c/a\u003e) (ST-DDT)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/a176319d8ade1a7d9b2d7fb8f038f55a2662325f\"\u003e\u003ccode\u003ea176319\u003c/code\u003e\u003c/a\u003e feat!: replace \u003ccode\u003echalk\u003c/code\u003e with \u003ccode\u003estyleText\u003c/code\u003e and add \u003ccode\u003ecolor\u003c/code\u003e to \u003ccode\u003eResultsMeta\u003c/code\u003e (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20227\"\u003e#20227\u003c/a\u003e) (루밀LuMir)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/c7046e6c1e03c4ca0eee4888a1f2eba4c6454f84\"\u003e\u003ccode\u003ec7046e6\u003c/code\u003e\u003c/a\u003e feat!: enable JSX reference tracking (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20152\"\u003e#20152\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/fa31a608901684fbcd9906d1907e66561d16e5aa\"\u003e\u003ccode\u003efa31a60\u003c/code\u003e\u003c/a\u003e feat!: add \u003ccode\u003ename\u003c/code\u003e to configs (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20015\"\u003e#20015\u003c/a\u003e) (Kirk Waiblinger)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/3383e7ec9028166cafc8ea7986c2f7498d0049f0\"\u003e\u003ccode\u003e3383e7e\u003c/code\u003e\u003c/a\u003e fix!: remove deprecated \u003ccode\u003eSourceCode\u003c/code\u003e methods (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20137\"\u003e#20137\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/501abd0e916a35554c58b7c0365537f1fa3880ce\"\u003e\u003ccode\u003e501abd0\u003c/code\u003e\u003c/a\u003e feat!: update dependency minimatch to v10 (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20246\"\u003e#20246\u003c/a\u003e) (renovate[bot])\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/ca4d3b40085de47561f89656a2207d09946ed45e\"\u003e\u003ccode\u003eca4d3b4\u003c/code\u003e\u003c/a\u003e fix!: stricter rule tester assertions for valid test cases (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20125\"\u003e#20125\u003c/a\u003e) (唯然)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/96512a66c86402fb0538cdcb6cd30b9073f6bf3b\"\u003e\u003ccode\u003e96512a6\u003c/code\u003e\u003c/a\u003e fix!: Remove deprecated rule context methods (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20086\"\u003e#20086\u003c/a\u003e) (Nicholas C. Zakas)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/c69fdacdb2e886b9d965568a397aa8220db3fe90\"\u003e\u003ccode\u003ec69fdac\u003c/code\u003e\u003c/a\u003e feat!: remove eslintrc support (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20037\"\u003e#20037\u003c/a\u003e) (Francesco Trotta)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/208b5cc34a8374ff81412b5bec2e0800eebfbd04\"\u003e\u003ccode\u003e208b5cc\u003c/code\u003e\u003c/a\u003e feat!: Use \u003ccode\u003eScopeManager#addGlobals()\u003c/code\u003e (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20132\"\u003e#20132\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/a2ee188ea7a38a0c6155f3d39e2b00e1d0f36e14\"\u003e\u003ccode\u003ea2ee188\u003c/code\u003e\u003c/a\u003e fix!: add \u003ccode\u003euniqueItems: true\u003c/code\u003e in \u003ccode\u003eno-invalid-regexp\u003c/code\u003e option (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20155\"\u003e#20155\u003c/a\u003e) (Tanuj Kanti)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/a89059dbf2832d417dd493ee81483227ec44e4ab\"\u003e\u003ccode\u003ea89059d\u003c/code\u003e\u003c/a\u003e feat!: Program range span entire source text (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20133\"\u003e#20133\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/39a6424373d915fa9de0d7b0caba9a4dc3da9b53\"\u003e\u003ccode\u003e39a6424\u003c/code\u003e\u003c/a\u003e fix!: assert 'text' is a string across all RuleFixer methods (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20082\"\u003e#20082\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/f28fbf846244e043c92b355b224d121b06140b44\"\u003e\u003ccode\u003ef28fbf8\u003c/code\u003e\u003c/a\u003e fix!: Deprecate \u003ccode\u003e\u0026quot;always\u0026quot;\u003c/code\u003e and \u003ccode\u003e\u0026quot;as-needed\u0026quot;\u003c/code\u003e options of the \u003ccode\u003eradix\u003c/code\u003e rule (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20223\"\u003e#20223\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/aa3fb2b233e929b37220be940575f42c280e0b98\"\u003e\u003ccode\u003eaa3fb2b\u003c/code\u003e\u003c/a\u003e fix!: tighten \u003ccode\u003efunc-names\u003c/code\u003e schema (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20119\"\u003e#20119\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/f6c0ed0311dcfee853367d5068c765d066e6b756\"\u003e\u003ccode\u003ef6c0ed0\u003c/code\u003e\u003c/a\u003e feat!: report \u003ccode\u003eeslint-env\u003c/code\u003e comments as errors (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20128\"\u003e#20128\u003c/a\u003e) (Francesco Trotta)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/4bf739fb533e59f7f0a66b65f7bc80be0f37d8db\"\u003e\u003ccode\u003e4bf739f\u003c/code\u003e\u003c/a\u003e fix!: remove deprecated \u003ccode\u003eLintMessage#nodeType\u003c/code\u003e and \u003ccode\u003eTestCaseError#type\u003c/code\u003e (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20096\"\u003e#20096\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/523c076866400670fb2192a3f55dbf7ad3469247\"\u003e\u003ccode\u003e523c076\u003c/code\u003e\u003c/a\u003e feat!: drop support for jiti \u0026lt; 2.2.0 (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20016\"\u003e#20016\u003c/a\u003e) (michael faith)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/454a292c95f34dad232411ddac06408e6383bb64\"\u003e\u003ccode\u003e454a292\u003c/code\u003e\u003c/a\u003e feat!: update \u003ccode\u003eeslint:recommended\u003c/code\u003e configuration (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20210\"\u003e#20210\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/4f880ee02992e1bf0e96ebaba679985e2d1295f1\"\u003e\u003ccode\u003e4f880ee\u003c/code\u003e\u003c/a\u003e feat!: remove \u003ccode\u003ev10_*\u003c/code\u003e and inactive \u003ccode\u003eunstable_*\u003c/code\u003e flags (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20225\"\u003e#20225\u003c/a\u003e) (sethamus)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/f18115c363a4ac7671a4c7f30ee13d57ebba330f\"\u003e\u003ccode\u003ef18115c\u003c/code\u003e\u003c/a\u003e feat!: \u003ccode\u003eno-shadow-restricted-names\u003c/code\u003e report \u003ccode\u003eglobalThis\u003c/code\u003e by default (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20027\"\u003e#20027\u003c/a\u003e) (sethamus)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/c6358c31fbd3937b92d89be2618ffdf5a774604e\"\u003e\u003ccode\u003ec6358c3\u003c/code\u003e\u003c/a\u003e feat!: Require Node.js \u003ccode\u003e^20.19.0 || ^22.13.0 || \u0026gt;=24\u003c/code\u003e (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20160\"\u003e#20160\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eFeatures\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/bff9091927811497dbf066b0e3b85ecb37d43822\"\u003e\u003ccode\u003ebff9091\u003c/code\u003e\u003c/a\u003e feat: handle \u003ccode\u003eArray.fromAsync\u003c/code\u003e in \u003ccode\u003earray-callback-return\u003c/code\u003e (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20457\"\u003e#20457\u003c/a\u003e) (Francesco Trotta)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/290c594bb50c439fb71bc75521ee5360daa8c222\"\u003e\u003ccode\u003e290c594\u003c/code\u003e\u003c/a\u003e feat: add \u003ccode\u003eself\u003c/code\u003e to \u003ccode\u003eno-implied-eval\u003c/code\u003e rule (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20468\"\u003e#20468\u003c/a\u003e) (sethamus)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/43677de07ebd6e14bfac40a46ad749ba783c45f2\"\u003e\u003ccode\u003e43677de\u003c/code\u003e\u003c/a\u003e feat: fix handling of function and class expression names in \u003ccode\u003eno-shadow\u003c/code\u003e (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20432\"\u003e#20432\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/84fb885d49ac810e79a9491276b4828b53d913e5\"\u003e\u003ccode\u003e84fb885\u003c/code\u003e\u003c/a\u003e chore: package.json update for \u003ccode\u003e@​eslint/js\u003c/code\u003e release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/1f667344b57c4c09b548d94bcfac1f91b6e5c63d\"\u003e\u003ccode\u003e1f66734\u003c/code\u003e\u003c/a\u003e chore: add \u003ccode\u003eeslint\u003c/code\u003e to \u003ccode\u003epeerDependencies\u003c/code\u003e of \u003ccode\u003e@eslint/js\u003c/code\u003e (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20467\"\u003e#20467\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/f3fbc2f60cbe2c718364feb8c3fc0452c0df3c56\"\u003e\u003ccode\u003ef3fbc2f\u003c/code\u003e\u003c/a\u003e chore: set \u003ccode\u003e@eslint/js\u003c/code\u003e version to 10.0.0 to skip releasing it (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20466\"\u003e#20466\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/b4b3127f8542c599ce2dea804b6582ebc40c993d\"\u003e\u003ccode\u003eb4b3127\u003c/code\u003e\u003c/a\u003e chore: package.json update for \u003ccode\u003e@​eslint/js\u003c/code\u003e release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/0b14059491d830a49b3577931f4f68fbcfce6be5\"\u003e\u003ccode\u003e0b14059\u003c/code\u003e\u003c/a\u003e chore: package.json update for \u003ccode\u003e@​eslint/js\u003c/code\u003e release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/fa31a608901684fbcd9906d1907e66561d16e5aa\"\u003e\u003ccode\u003efa31a60\u003c/code\u003e\u003c/a\u003e feat!: add \u003ccode\u003ename\u003c/code\u003e to configs (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20015\"\u003e#20015\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/1e2cad5f6fa47ed6ed89d2a29798dda926d50990\"\u003e\u003ccode\u003e1e2cad5\u003c/code\u003e\u003c/a\u003e chore: package.json update for \u003ccode\u003e@​eslint/js\u003c/code\u003e release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/454a292c95f34dad232411ddac06408e6383bb64\"\u003e\u003ccode\u003e454a292\u003c/code\u003e\u003c/a\u003e feat!: update \u003ccode\u003eeslint:recommended\u003c/code\u003e configuration (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20210\"\u003e#20210\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/c6358c31fbd3937b92d89be2618ffdf5a774604e\"\u003e\u003ccode\u003ec6358c3\u003c/code\u003e\u003c/a\u003e feat!: Require Node.js \u003ccode\u003e^20.19.0 || ^22.13.0 || \u0026gt;=24\u003c/code\u003e (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20160\"\u003e#20160\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/eslint/eslint/commits/v10.0.1/packages/js\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@typescript-eslint/eslint-plugin` from 8.56.0 to 8.59.3\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases\"\u003e@​typescript-eslint/eslint-plugin's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev8.59.3\u003c/h2\u003e\n\u003ch2\u003e8.59.3 (2026-05-11)\u003c/h2\u003e\n\u003cp\u003eThis was a version bump only, there were no code changes.\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.3\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003ev8.59.2\u003c/h2\u003e\n\u003ch2\u003e8.59.2 (2026-05-04)\u003c/h2\u003e\n\u003ch3\u003e🩹 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unsafe-type-assertion] handle crash on recursive template literal types (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12150\"\u003e#12150\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-deprecated] object destructuring values should be treated as declarations (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12292\"\u003e#12292\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003erule-tester:\u003c/strong\u003e add TypeScript as a peer dependency (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12288\"\u003e#12288\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e❤️ Thank You\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eDariusz Czajkowski\u003c/li\u003e\n\u003cli\u003eDima Barabash\u003c/li\u003e\n\u003cli\u003eKirk Waiblinger \u003ca href=\"https://github.com/kirkwaiblinger\"\u003e\u003ccode\u003e@​kirkwaiblinger\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.2\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003ev8.59.1\u003c/h2\u003e\n\u003ch2\u003e8.59.1 (2026-04-27)\u003c/h2\u003e\n\u003ch3\u003e🩹 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-type-assertion] fix crash \u0026quot;TypeError: checker.getTypeArguments is not a function\u0026quot; (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12246\"\u003e#12246\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-type-assertion] preserve index signatures in undefined unions (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12257\"\u003e#12257\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-type-assertion] preserve phantom type arguments in generic inference (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12269\"\u003e#12269\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-type-assertion] avoid false positive in logical assignment assertions (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12278\"\u003e#12278\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-type-arguments] handle instantiation expressions (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12220\"\u003e#12220\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-condition] treat void as nullish in no-unnecessary-condition (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12241\"\u003e#12241\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e❤️ Thank You\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eanasm266 \u003ca href=\"https://github.com/anasm266\"\u003e\u003ccode\u003e@​anasm266\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAnshika Jain \u003ca href=\"https://github.com/Anshikakalpana\"\u003e\u003ccode\u003e@​Anshikakalpana\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUlrich Stark\u003c/li\u003e\n\u003cli\u003eyugo innami \u003ca href=\"https://github.com/nami8824\"\u003e\u003ccode\u003e@​nami8824\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.1\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/CHANGELOG.md\"\u003e@​typescript-eslint/eslint-plugin's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e8.59.3 (2026-05-11)\u003c/h2\u003e\n\u003cp\u003eThis was a version bump only for eslint-plugin to align it with other projects, there were no code changes.\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.3\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003e8.59.2 (2026-05-04)\u003c/h2\u003e\n\u003ch3\u003e🩹 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-deprecated] object destructuring values should be treated as declarations (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12292\"\u003e#12292\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unsafe-type-assertion] handle crash on recursive template literal types (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12150\"\u003e#12150\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e❤️ Thank You\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eDima Barabash\u003c/li\u003e\n\u003cli\u003eKirk Waiblinger \u003ca href=\"https://github.com/kirkwaiblinger\"\u003e\u003ccode\u003e@​kirkwaiblinger\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.2\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003e8.59.1 (2026-04-27)\u003c/h2\u003e\n\u003ch3\u003e🩹 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-condition] treat void as nullish in no-unnecessary-condition (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12241\"\u003e#12241\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-type-arguments] handle instantiation expressions (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12220\"\u003e#12220\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-type-assertion] avoid false positive in logical assignment assertions (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12278\"\u003e#12278\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-type-assertion] preserve phantom type arguments in generic inference (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12269\"\u003e#12269\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-type-assertion] preserve index signatures in undefined unions (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12257\"\u003e#12257\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-type-assertion] fix crash \u0026quot;TypeError: checker.getTypeArguments is not a function\u0026quot; (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12246\"\u003e#12246\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e❤️ Thank You\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eanasm266 \u003ca href=\"https://github.com/anasm266\"\u003e\u003ccode\u003e@​anasm266\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAnshika Jain \u003ca href=\"https://github.com/Anshikakalpana\"\u003e\u003ccode\u003e@​Anshikakalpana\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUlrich Stark\u003c/li\u003e\n\u003cli\u003eyugo innami \u003ca href=\"https://github.com/nami8824\"\u003e\u003ccode\u003e@​nami8824\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.1\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003e8.59.0 (2026-04-20)\u003c/h2\u003e\n\u003ch3\u003e🚀 Features\u003c/h3\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/48e13c0261e3cb1bf4f4dfaa462cdb3a56ef7383\"\u003e\u003ccode\u003e48e13c0\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.59.3\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/e26dc8003ababf078aad4df17765ee4cea30644c\"\u003e\u003ccode\u003ee26dc80\u003c/code\u003e\u003c/a\u003e docs: update stale links to latest (\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin/issues/12313\"\u003e#12313\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/44f9625336841a8ee3eb01a9e02e49b1d7b12648\"\u003e\u003ccode\u003e44f9625\u003c/code\u003e\u003c/a\u003e chore(deps): update vitest monorepo to v4.1.5 (\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin/issues/12307\"\u003e#12307\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/2ec35f1760aade4df4c631d76d78c7ed5e136333\"\u003e\u003ccode\u003e2ec35f1\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.59.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/ec3ef25390f7daf5a9ff33a60282bdbbb49ab0f3\"\u003e\u003ccode\u003eec3ef25\u003c/code\u003e\u003c/a\u003e test: make no-useless-empty-export tests fully static (\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin/issues/12260\"\u003e#12260\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/60d0a513870d833617374ff8ea256d86ca3cbbbb\"\u003e\u003ccode\u003e60d0a51\u003c/code\u003e\u003c/a\u003e chore(eslint-plugin): switch auto-generated test cases to hand-written in no-...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/5c53da230a70aba7d6f3d6474b5d249b430a95d0\"\u003e\u003ccode\u003e5c53da2\u003c/code\u003e\u003c/a\u003e fix(eslint-plugin): [no-deprecated] object destructuring values should be tre...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/80c28a1ada3f975a932a02587cefee632ccf6550\"\u003e\u003ccode\u003e80c28a1\u003c/code\u003e\u003c/a\u003e fix(eslint-plugin): [no-unsafe-type-assertion] handle crash on recursive temp...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/b7b2670123f76419630f88f3a807f85b7c535230\"\u003e\u003ccode\u003eb7b2670\u003c/code\u003e\u003c/a\u003e test: make no-this-alias tests fully static (\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin/issues/12258\"\u003e#12258\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/52457932e5507b5ca01e720a541f3f8d01e09b9d\"\u003e\u003ccode\u003e5245793\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.59.1\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commits/v8.59.3/packages/eslint-plugin\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@typescript-eslint/parser` from 8.56.0 to 8.59.3\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases\"\u003e@​typescript-eslint/parser's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev8.59.3\u003c/h2\u003e\n\u003ch2\u003e8.59.3 (2026-05-11)\u003c/h2\u003e\n\u003cp\u003eThis was a version bump only, there were no code changes.\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.3\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003ev8.59.2\u003c/h2\u003e\n\u003ch2\u003e8.59.2 (2026-05-04)\u003c/h2\u003e\n\u003ch3\u003e🩹 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unsafe-type-assertion] handle crash on recursive template literal types (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12150\"\u003e#12150\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-deprecated] object destructuring values should be treated as declarations (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12292\"\u003e#12292\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003erule-tester:\u003c/strong\u003e add TypeScript as a peer dependency (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12288\"\u003e#12288\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e❤️ Thank You\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eDariusz Czajkowski\u003c/li\u003e\n\u003cli\u003eDima Barabash\u003c/li\u003e\n\u003cli\u003eKirk Waiblinger \u003ca href=\"https://github.com/kirkwaiblinger\"\u003e\u003ccode\u003e@​kirkwaiblinger\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.2\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003ev8.59.1\u003c/h2\u003e\n\u003ch2\u003e8.59.1 (2026-04-27)\u003c/h2\u003e\n\u003ch3\u003e🩹 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-type-assertion] fix crash \u0026quot;TypeError: checker.getTypeArguments is not a function\u0026quot; (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12246\"\u003e#12246\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-type-assertion] preserve index signatures in undefined unions (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12257\"\u003e#12257\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-type-assertion] preserve phantom type arguments in generic inference (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12269\"\u003e#12269\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-type-assertion] avoid false positive in logical assignment assertions (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12278\"\u003e#12278\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-type-arguments] handle instantiation expressions (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12220\"\u003e#12220\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-condition] treat void as nullish in no-unnecessary-condition (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12241\"\u003e#12241\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e❤️ Thank You\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eanasm266 \u003ca href=\"https://github.com/anasm266\"\u003e\u003ccode\u003e@​anasm266\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAnshika Jain \u003ca href=\"https://github.com/Anshikakalpana\"\u003e\u003ccode\u003e@​Anshikakalpana\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUlrich Stark\u003c/li\u003e\n\u003cli\u003eyugo innami \u003ca href=\"https://github.com/nami8824\"\u003e\u003ccode\u003e@​nami8824\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.1\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/parser/CHANGELOG.md\"\u003e@​typescript-eslint/parser's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e8.59.3 (2026-05-11)\u003c/h2\u003e\n\u003cp\u003eThis was a version bump only for parser to align it with other projects, there were no code changes.\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.3\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003e8.59.2 (2026-05-04)\u003c/h2\u003e\n\u003cp\u003eThis was a version bump only for parser to align it with other projects, there were no code changes.\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.2\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003e8.59.1 (2026-04-27)\u003c/h2\u003e\n\u003cp\u003eThis was a version bump only for parser to align it with other projects, there were no code changes.\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.1\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003e8.59.0 (2026-04-20)\u003c/h2\u003e\n\u003cp\u003eThis was a version bump only for parser to align it with other projects, there were no code changes.\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.0\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003e8.58.2 (2026-04-13)\u003c/h2\u003e\n\u003ch3\u003e🩹 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eremove tsbuildinfo cache file from published packages (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12187\"\u003e#12187\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e❤️ Thank You\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAbhijeet Singh \u003ca href=\"https://github.com/cseas\"\u003e\u003ccode\u003e@​cseas\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.58.2\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003e8.58.1 (2026-04-08)\u003c/h2\u003e\n\u003cp\u003eThis was a version bump only for parser to align it with other projects, there were no code changes.\u003c/p\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/48e13c0261e3cb1bf4f4dfaa462cdb3a56ef7383\"\u003e\u003ccode\u003e48e13c0\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.59.3\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/44f9625336841a8ee3eb01a9e02e49b1d7b12648\"\u003e\u003ccode\u003e44f9625\u003c/code\u003e\u003c/a\u003e chore(deps): update vitest monorepo to v4.1.5 (\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/parser/issues/12307\"\u003e#12307\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/2ec35f1760aade4df4c631d76d78c7ed5e136333\"\u003e\u003ccode\u003e2ec35f1\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.59.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/52457932e5507b5ca01e720a541f3f8d01e09b9d\"\u003e\u003ccode\u003e5245793\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.59.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/ea9ae4f8817873480e3501145059f63e39e8d8a1\"\u003e\u003ccode\u003eea9ae4f\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.59.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/90c2803a4c250e0343598d41e973f95e743bf4ce\"\u003e\u003ccode\u003e90c2803\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.58.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/be6b49a02d68db9bdc8985e7e9e1598700fda2fa\"\u003e\u003ccode\u003ebe6b49a\u003c/code\u003e\u003c/a\u003e fix: remove tsbuildinfo cache file from published packages (\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/parser/issues/12187\"\u003e#12187\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/5311ed312eadf4e238324f2726ae0b1f3f2206e6\"\u003e\u003ccode\u003e5311ed3\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.58.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/493341709fe7d1d6433332b7bd2724e3332c7cdf\"\u003e\u003ccode\u003e4933417\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.58.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/8cde2d06fb9bc591a4c93452509ddbd600c76a35\"\u003e\u003ccode\u003e8cde2d0\u003c/code\u003e\u003c/a\u003e feat: support TypeScript 6 (\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/parser/issues/12124\"\u003e#12124\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commits/v8.59.3/packages/parser\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `eslint` from 9.39.2 to 10.4.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/eslint/eslint/releases\"\u003eeslint's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev10.4.0\u003c/h2\u003e\n\u003ch2\u003eFeatures\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/1a45ec596af1dd5f880e6874cb8f24dafb6a7ecf\"\u003e\u003ccode\u003e1a45ec5\u003c/code\u003e\u003c/a\u003e feat: check sequence expressions in \u003ccode\u003efor-direction\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20701\"\u003e#20701\u003c/a\u003e) (kuldeep kumar)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/450040bd89b989b3531824c6be45feb5fe3d936b\"\u003e\u003ccode\u003e450040b\u003c/code\u003e\u003c/a\u003e feat: add \u003ccode\u003eincludeIgnoreFile()\u003c/code\u003e to \u003ccode\u003eeslint/config\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20735\"\u003e#20735\u003c/a\u003e) (Kirk Waiblinger)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eBug Fixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/544c0c3da589166ad8e5d634f35d3d06701c57be\"\u003e\u003ccode\u003e544c0c3\u003c/code\u003e\u003c/a\u003e fix: escape code path DOT labels in debug output (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20866\"\u003e#20866\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/6799431203f2579632d0870f98ba132067f4040c\"\u003e\u003ccode\u003e6799431\u003c/code\u003e\u003c/a\u003e fix: update dependency \u003ccode\u003e@​eslint/config-helpers\u003c/code\u003e to ^0.6.0 (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20850\"\u003e#20850\u003c/a\u003e) (renovate[bot])\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/f078fef5005dceb14fc162aab7c7200e027688dd\"\u003e\u003ccode\u003ef078fef\u003c/code\u003e\u003c/a\u003e fix: handle non-array deprecated rule replacements (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20825\"\u003e#20825\u003c/a\u003e) (xbinaryx)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eDocumentation\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/7e52a7151fb92eec0e0f67fe4e5ddbd1ccce796f\"\u003e\u003ccode\u003e7e52a71\u003c/code\u003e\u003c/a\u003e docs: add mention of \u003ccode\u003e@eslint-react/eslint-plugin\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20869\"\u003e#20869\u003c/a\u003e) (Pavel)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/db3468ba746407d7f286f18f7ea9db6df0e3bc08\"\u003e\u003ccode\u003edb3468b\u003c/code\u003e\u003c/a\u003e docs: tweak wording around ambiguous CJS-vs-ESM config (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20865\"\u003e#20865\u003c/a\u003e) (Kirk Waiblinger)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/90846643ec6e97d447ae0d831fabe6d17b0a998a\"\u003e\u003ccode\u003e9084664\u003c/code\u003e\u003c/a\u003e docs: Update README (GitHub Actions Bot)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/9cc73875046e3c4b8313644cbb1e99e26b36bd3f\"\u003e\u003ccode\u003e9cc7387\u003c/code\u003e\u003c/a\u003e docs: Update README (GitHub Actions Bot)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/3d7b5484407403817aa9071a394d336d8ea96eb5\"\u003e\u003ccode\u003e3d7b548\u003c/code\u003e\u003c/a\u003e docs: Update README (GitHub Actions Bot)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/191ec3c0a3f94ce0f110df761f0b2b8949011ccb\"\u003e\u003ccode\u003e191ec3c\u003c/code\u003e\u003c/a\u003e docs: Update README (GitHub Actions Bot)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eChores\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/6616856f28fa514a30f87b5539fc100d739a94bf\"\u003e\u003ccode\u003e6616856\u003c/code\u003e\u003c/a\u003e chore: upgrade knip to v6 (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20875\"\u003e#20875\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/d13b084a3ad02f926e9addaa35fc383759ea5554\"\u003e\u003ccode\u003ed13b084\u003c/code\u003e\u003c/a\u003e ci: ensure auto-created PRs run CI (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20860\"\u003e#20860\u003c/a\u003e) (lumir)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/e71c7af86dce9acc1d18cb12d2184309f6841594\"\u003e\u003ccode\u003ee71c7af\u003c/code\u003e\u003c/a\u003e ci: bump pnpm/action-setup from 6.0.5 to 6.0.7 (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20862\"\u003e#20862\u003c/a\u003e) (dependabot[bot])\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/d84393dea170f54191fd20c8268b52c81c0ccd99\"\u003e\u003ccode\u003ed84393d\u003c/code\u003e\u003c/a\u003e test: add unit tests for SuppressionsService.applySuppressions() (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20863\"\u003e#20863\u003c/a\u003e) (kuldeep kumar)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/24db8cb8e6f07fba667121777a15b1785486be94\"\u003e\u003ccode\u003e24db8cb\u003c/code\u003e\u003c/a\u003e test: add tests for SuppressionsService.save() (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20802\"\u003e#20802\u003c/a\u003e) (kuldeep kumar)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/2ef0549cac4a9537e4c3a26b9f3edd4c99476bf6\"\u003e\u003ccode\u003e2ef0549\u003c/code\u003e\u003c/a\u003e chore: update ecosystem plugins (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20857\"\u003e#20857\u003c/a\u003e) (github-actions[bot])\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/a4297918d264d229a06cd96051ef9b91c7b86732\"\u003e\u003ccode\u003ea429791\u003c/code\u003e\u003c/a\u003e ci: remove \u003ccode\u003eeslint-webpack-plugin\u003c/code\u003e types integration test (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20668\"\u003e#20668\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/9e37386aa7f2ce220b2ef74a6afbac5f6b3527c5\"\u003e\u003ccode\u003e9e37386\u003c/code\u003e\u003c/a\u003e chore: replace \u003ccode\u003erecast\u003c/code\u003e with range approach in code-sample-minimizer (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20682\"\u003e#20682\u003c/a\u003e) (Copilot)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/0dd1f9ffc9a07704d46e2a4c8d4ccc0d0908b0c0\"\u003e\u003ccode\u003e0dd1f9f\u003c/code\u003e\u003c/a\u003e test: disable warning for \u003ccode\u003evm.constants.USE_MAIN_CONTEXT_DEFAULT_LOADER\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20845\"\u003e#20845\u003c/a\u003e) (Francesco Trotta)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/9da3c7bc92d9579f8db19ecb56e718538d09db2b\"\u003e\u003ccode\u003e9da3c7b\u003c/code\u003e\u003c/a\u003e refactor: remove deprecated \u003ccode\u003emeta.language\u003c/code\u003e and migrate \u003ccode\u003emeta.dialects\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20716\"\u003e#20716\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/2099ed12a0a74c3d7f0808514362af2499b4fe2b\"\u003e\u003ccode\u003e2099ed1\u003c/code\u003e\u003c/a\u003e refactor: add \u003ccode\u003emeta.defaultOptions\u003c/code\u003e to more rules, enable linting (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20800\"\u003e#20800\u003c/a\u003e) (xbinaryx)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/f1dfbc9ca57196de7092e1888cc99427bd6fe06e\"\u003e\u003ccode\u003ef1dfbc9\u003c/code\u003e\u003c/a\u003e chore: update ecosystem plugins (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20836\"\u003e#20836\u003c/a\u003e) (github-actions[bot])\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/c75941390c14728806cd4baef4f6072f6de78318\"\u003e\u003ccode\u003ec759413\u003c/code\u003e\u003c/a\u003e ci: bump pnpm/action-setup from 6.0.3 to 6.0.5 (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20843\"\u003e#20843\u003c/a\u003e) (dependabot[bot])\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/5b817d6fdc9ae2c35b528dc662b2eca8f40f64aa\"\u003e\u003ccode\u003e5b817d6\u003c/code\u003e\u003c/a\u003e test: add unit tests for lib/shared/ast-utils (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20838\"\u003e#20838\u003c/a\u003e) (kuldeep kumar)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/1c13ae3934c198c494e5958fa3a68b33244ff06a\"\u003e\u003ccode\u003e1c13ae3\u003c/code\u003e\u003c/a\u003e test: add unit tests for lib/shared/severity (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20835\"\u003e#20835\u003c/a\u003e) (kuldeep kumar)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev10.3.0\u003c/h2\u003e\n\u003ch2\u003eFeatures\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/379571a975f2b24d88037b9de2e72ec61d004130\"\u003e\u003ccode\u003e379571a\u003c/code\u003e\u003c/a\u003e feat: add suggestions for no-unused-private-class-members (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20773\"\u003e#20773\u003c/a\u003e) (sethamus)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eBug Fixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/b6ae5cf07b9b51802367539cb24b245b61eaa37c\"\u003e\u003ccode\u003eb6ae5cf\u003c/code\u003e\u003c/a\u003e fix: handle unavailable require cache (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20812\"\u003e#20812\u003c/a\u003e) (Simon Podlipsky)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/6fb3685bcbe9a6f72fd7dfb9129686b6fb96b0bd\"\u003e\u003ccode\u003e6fb3685\u003c/code\u003e\u003c/a\u003e fix: rule suggestions cause continuation in class body (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20787\"\u003e#20787\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eDocumentation\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/32cc7ab4ec653ce89da92deb5c40a9f4fc707fe5\"\u003e\u003ccode\u003e32cc7ab\u003c/code\u003e\u003c/a\u003e docs: fix typos in docs and comments (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20809\"\u003e#20809\u003c/a\u003e) (Tanuj Kanti)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/7f479376a2fa463d823ab762db6bb37ce8d2ee8f\"\u003e\u003ccode\u003e7f47937\u003c/code\u003e\u003c/a\u003e docs: Update README (GitHub Actions Bot)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eChores\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/d32235ec19ceea211fa86452afa383ca05f5c2f9\"\u003e\u003ccode\u003ed32235e\u003c/code\u003e\u003c/a\u003e ci: use pnpm in \u003ccode\u003eeslint-flat-config-utils\u003c/code\u003e type integration test (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20826\"\u003e#20826\u003c/a\u003e) (Francesco Trotta)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/3ffb14ea517de750ed1181579ef844af342e4096\"\u003e\u003ccode\u003e3ffb14e\u003c/code\u003e\u003c/a\u003e chore: clean up typos in comments and JSDoc (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20821\"\u003e#20821\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/452c4010c07dc2e36fe6ec6a8c48298878e86887\"\u003e\u003ccode\u003e452c401\u003c/code\u003e\u003c/a\u003e 10.4.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/b6417e8b55c9525070d6e168b485ce6ff21688ed\"\u003e\u003ccode\u003eb6417e8\u003c/code\u003e\u003c/a\u003e Build: changelog update for 10.4.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/6616856f28fa514a30f87b5539fc100d739a94bf\"\u003e\u003ccode\u003e6616856\u003c/code\u003e\u003c/a\u003e chore: upgrade knip to v6 (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20875\"\u003e#20875\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/d13b084a3ad02f926e9addaa35fc383759ea5554\"\u003e\u003ccode\u003ed13b084\u003c/code\u003e\u003c/a\u003e ci: ensure auto-created PRs run CI (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20860\"\u003e#20860\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/7e52a7151fb92eec0e0f67fe4e5ddbd1ccce796f\"\u003e\u003ccode\u003e7e52a71\u003c/code\u003e\u003c/a\u003e docs: add mention of \u003ccode\u003e@eslint-react/eslint-plugin\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20869\"\u003e#20869\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/e71c7af86dce9acc1d18cb12d2184309f6841594\"\u003e\u003ccode\u003ee71c7af\u003c/code\u003e\u003c/a\u003e ci: bump pnpm/action-setup from 6.0.5 to 6.0.7 (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20862\"\u003e#20862\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/544c0c3da589166ad8e5d634f35d3d06701c57be\"\u003e\u003ccode\u003e544c0c3\u003c/code\u003e\u003c/a\u003e fix: escape code path DOT labels in debug output (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20866\"\u003e#20866\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/db3468ba746407d7f286f18f7ea9db6df0e3bc08\"\u003e\u003ccode\u003edb3468b\u003c/code\u003e\u003c/a\u003e docs: tweak wording around ambiguous CJS-vs-ESM config (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20865\"\u003e#20865\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/d84393dea170f54191fd20c8268b52c81c0ccd99\"\u003e\u003ccode\u003ed84393d\u003c/code\u003e\u003c/a\u003e test: add unit tests for SuppressionsService.applySuppressions() (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20863\"\u003e#20863\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/90846643ec6e97d447ae0d831fabe6d17b0a998a\"\u003e\u003ccode\u003e9084664\u003c/code\u003e\u003c/a\u003e docs: Update README\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/eslint/eslint/compare/v9.39.2...v10.4.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `eslint-plugin-react-hooks` from 7.0.1 to 7.1.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/facebook/react/releases\"\u003eeslint-plugin-react-hooks's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eeslint-plugin-react-hooks@7.1.1 (April 17, 2026)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eNote:\u003c/strong\u003e 7.1.0 accidentally removed the \u003ccode\u003ecomponent-hook-factories\u003c/code\u003e rule, causing errors for users who referenced it in their ESLint config. This is now fixed.\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdd deprecated no-op \u003ccode\u003ecomponent-hook-factories\u003c/code\u003e rule for backwards compatibility. (\u003ca href=\"https://github.com/mofeiZ\"\u003e\u003ccode\u003e@​mofeiZ\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/36307\"\u003e#36307\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eeslint-plugin-react-hooks@7.1.0 (April 16, 2026)\u003c/h2\u003e\n\u003cp\u003eThis release adds ESLint v10 support, improves performance by skipping compilation for non-React files, and includes compiler lint improvements including better \u003ccode\u003eset-state-in-effect\u003c/code\u003e detection, improved ref validation, and more helpful error reporting.\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdd ESLint v10 support. (\u003ca href=\"https://github.com/azat-io\"\u003e\u003ccode\u003e@​azat-io\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/35720\"\u003e#35720\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSkip compilation for non-React files to improve performance. (\u003ca href=\"https://github.com/josephsavona\"\u003e\u003ccode\u003e@​josephsavona\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/35589\"\u003e#35589\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix exhaustive deps bug with Flow type casting. (\u003ca href=\"https://github.com/jorge-cab\"\u003e\u003ccode\u003e@​jorge-cab\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/35691\"\u003e#35691\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix \u003ccode\u003euseEffectEvent\u003c/code\u003e checks in component syntax. (\u003ca href=\"https://github.com/jbrown215\"\u003e\u003ccode\u003e@​jbrown215\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/35041\"\u003e#35041\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eImproved \u003ccode\u003eset-state-in-effect\u003c/code\u003e validation with fewer false negatives. (\u003ca href=\"https://github.com/jorge-cab\"\u003e\u003ccode\u003e@​jorge-cab\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/35134\"\u003e#35134\u003c/a\u003e, \u003ca href=\"https://github.com/josephsavona\"\u003e\u003ccode\u003e@​josephsavona\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/35147\"\u003e#35147\u003c/a\u003e, \u003ca href=\"https://github.com/jackpope\"\u003e\u003ccode\u003e@​jackpope\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/35214\"\u003e#35214\u003c/a\u003e, \u003ca href=\"https://github.com/chesnokov-tony\"\u003e\u003ccode\u003e@​chesnokov-tony\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/35419\"\u003e#35419\u003c/a\u003e, \u003ca href=\"https://github.com/jsleitor\"\u003e\u003ccode\u003e@​jsleitor\u003c/code...\n\n_Description has been truncated_","html_url":"https://github.com/nabashi404/saas-test/pull/3","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/nabashi404%2Fsaas-test/issues/3","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/3/packages"},{"uuid":"4466534852","node_id":"PR_kwDOSAvc287chMk6","number":6,"state":"closed","title":"deps(deps): bump the all-dependencies group across 1 directory with 65 updates","user":"dependabot[bot]","labels":[],"assignees":[],"locked":false,"comments_count":2,"pull_request":true,"closed_at":"2026-05-25T05:18:46.000Z","author_association":null,"state_reason":null,"created_at":"2026-05-18T05:35:46.000Z","updated_at":"2026-05-25T05:18:48.000Z","time_to_close":603780,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"deps(deps): bump","group_name":"all-dependencies","update_count":65,"packages":[{"name":"@eslint-react/eslint-plugin","old_version":"2.13.0","new_version":"5.8.1","repository_url":"https://github.com/Rel1cx/eslint-react"},{"name":"@eslint/js","old_version":"9.39.2","new_version":"10.0.1","repository_url":"https://github.com/eslint/eslint"},{"name":"@typescript-eslint/eslint-plugin","old_version":"8.56.0","new_version":"8.59.3","repository_url":"https://github.com/typescript-eslint/typescript-eslint"},{"name":"@typescript-eslint/parser","old_version":"8.56.0","new_version":"8.59.3","repository_url":"https://github.com/typescript-eslint/typescript-eslint"},{"name":"eslint","old_version":"9.39.2","new_version":"10.4.0","repository_url":"https://github.com/eslint/eslint"},{"name":"eslint-plugin-react-hooks","old_version":"7.0.1","new_version":"7.1.1","repository_url":"https://github.com/facebook/react"},{"name":"globals","old_version":"17.3.0","new_version":"17.6.0","repository_url":"https://github.com/sindresorhus/globals"},{"name":"graphql","old_version":"16.12.0","new_version":"16.14.0","repository_url":"https://github.com/graphql/graphql-js"},{"name":"happy-dom","old_version":"20.6.2","new_version":"20.9.0","repository_url":"https://github.com/capricorn86/happy-dom"},{"name":"jiti","old_version":"2.6.1","new_version":"2.7.0","repository_url":"https://github.com/unjs/jiti"},{"name":"lint-staged","old_version":"16.2.7","new_version":"17.0.5","repository_url":"https://github.com/lint-staged/lint-staged"},{"name":"mermaid","old_version":"11.12.3","new_version":"11.15.0","repository_url":"https://github.com/mermaid-js/mermaid"},{"name":"prettier","old_version":"3.8.1","new_version":"3.8.3","repository_url":"https://github.com/prettier/prettier"},{"name":"react","old_version":"19.2.4","new_version":"19.2.6","repository_url":"https://github.com/facebook/react"},{"name":"typescript","old_version":"5.9.3","new_version":"6.0.3","repository_url":"https://github.com/microsoft/TypeScript"},{"name":"typescript-eslint","old_version":"8.56.0","new_version":"8.59.3","repository_url":"https://github.com/typescript-eslint/typescript-eslint"},{"name":"typescript-language-server","old_version":"5.1.3","new_version":"5.2.0","repository_url":"https://github.com/typescript-language-server/typescript-language-server"},{"name":"vite","old_version":"7.3.1","new_version":"8.0.13","repository_url":"https://github.com/vitejs/vite"},{"name":"vitepress","old_version":"2.0.0-alpha.16","new_version":"2.0.0-alpha.17","repository_url":"https://github.com/vuejs/vitepress"},{"name":"vitepress-plugin-llms","old_version":"1.11.0","new_version":"1.12.2","repository_url":"https://github.com/okineadev/vitepress-plugin-llms"},{"name":"vitest","old_version":"4.0.18","new_version":"4.1.6","repository_url":"https://github.com/vitest-dev/vitest"},{"name":"wrangler","old_version":"4.66.0","new_version":"4.92.0","repository_url":"https://github.com/cloudflare/workers-sdk"},{"name":"@ai-sdk/openai","old_version":"3.0.29","new_version":"3.0.64","repository_url":"https://github.com/vercel/ai"},{"name":"@better-auth/passkey","old_version":"1.4.18","new_version":"1.6.11","repository_url":"https://github.com/better-auth/better-auth"},{"name":"@better-auth/stripe","old_version":"1.4.18","new_version":"1.6.11","repository_url":"https://github.com/better-auth/better-auth"},{"name":"@trpc/server","old_version":"11.10.0","new_version":"11.17.0","repository_url":"https://github.com/trpc/trpc"},{"name":"ai","old_version":"6.0.91","new_version":"6.0.184","repository_url":"https://github.com/vercel/ai"},{"name":"better-auth","old_version":"1.4.18","new_version":"1.6.11","repository_url":"https://github.com/better-auth/better-auth"},{"name":"drizzle-orm","old_version":"0.45.1","new_version":"0.45.2","repository_url":"https://github.com/drizzle-team/drizzle-orm"},{"name":"resend","old_version":"6.9.2","new_version":"6.12.3","repository_url":"https://github.com/resend/resend-node"},{"name":"stripe","old_version":"20.3.1","new_version":"22.1.1","repository_url":"https://github.com/stripe/stripe-node"},{"name":"@cloudflare/workers-types","old_version":"4.20260218.0","new_version":"4.20260518.1","repository_url":"https://github.com/cloudflare/workerd"},{"name":"@types/bun","old_version":"1.3.9","new_version":"1.3.14","repository_url":"https://github.com/DefinitelyTyped/DefinitelyTyped"},{"name":"hono","old_version":"4.11.10","new_version":"4.12.19","repository_url":"https://github.com/honojs/hono"},{"name":"@tanstack/react-query","old_version":"5.90.21","new_version":"5.100.10","repository_url":"https://github.com/TanStack/query"},{"name":"@tanstack/react-router","old_version":"1.161.1","new_version":"1.170.4","repository_url":"https://github.com/TanStack/router"},{"name":"@trpc/client","old_version":"11.10.0","new_version":"11.17.0","repository_url":"https://github.com/trpc/trpc"},{"name":"@trpc/tanstack-react-query","old_version":"11.10.0","new_version":"11.17.0","repository_url":"https://github.com/trpc/trpc"},{"name":"jotai","old_version":"2.17.1","new_version":"2.20.0","repository_url":"https://github.com/pmndrs/jotai"},{"name":"jotai-effect","old_version":"2.2.3","new_version":"2.3.1","repository_url":"https://github.com/jotaijs/jotai-effect"},{"name":"lucide-react","old_version":"0.574.0","new_version":"1.16.0","repository_url":"https://github.com/lucide-icons/lucide"},{"name":"react-dom","old_version":"19.2.4","new_version":"19.2.6","repository_url":"https://github.com/facebook/react"},{"name":"tailwind-merge","old_version":"3.4.1","new_version":"3.6.0","repository_url":"https://github.com/dcastil/tailwind-merge"},{"name":"@tailwindcss/postcss","old_version":"4.2.0","new_version":"4.3.0","repository_url":"https://github.com/tailwindlabs/tailwindcss"},{"name":"@tanstack/react-query-devtools","old_version":"5.91.3","new_version":"5.100.10","repository_url":"https://github.com/TanStack/query"},{"name":"@tanstack/react-router-devtools","old_version":"1.161.1","new_version":"1.167.0","repository_url":"https://github.com/TanStack/router"},{"name":"@tanstack/router-plugin","old_version":"1.161.1","new_version":"1.168.6","repository_url":"https://github.com/TanStack/router"},{"name":"@types/node","old_version":"25.2.3","new_version":"25.8.0","repository_url":"https://github.com/DefinitelyTyped/DefinitelyTyped"},{"name":"@vitejs/plugin-react","old_version":"5.1.4","new_version":"6.0.2","repository_url":"https://github.com/vitejs/vite-plugin-react"},{"name":"@vitejs/plugin-react-swc","old_version":"4.2.3","new_version":"4.3.1","repository_url":"https://github.com/vitejs/vite-plugin-react"},{"name":"autoprefixer","old_version":"10.4.24","new_version":"10.5.0","repository_url":"https://github.com/postcss/autoprefixer"},{"name":"globby","old_version":"16.1.1","new_version":"16.2.0","repository_url":"https://github.com/sindresorhus/globby"},{"name":"@react-email/components","old_version":"1.0.8","new_version":"1.0.12","repository_url":"https://github.com/resend/react-email"},{"name":"@react-email/render","old_version":"2.0.4","new_version":"2.0.8","repository_url":"https://github.com/resend/react-email"},{"name":"@react-email/preview-server","old_version":"5.2.8","new_version":"5.2.10","repository_url":"https://github.com/resend/react-email"},{"name":"react-email","old_version":"5.2.8","new_version":"6.1.4","repository_url":"https://github.com/resend/react-email"},{"name":"@astrojs/react","old_version":"4.4.2","new_version":"5.0.5","repository_url":"https://github.com/withastro/astro"},{"name":"astro","old_version":"5.17.2","new_version":"6.3.3","repository_url":"https://github.com/withastro/astro"},{"name":"dotenv","old_version":"17.3.1","new_version":"17.4.2","repository_url":"https://github.com/motdotla/dotenv"},{"name":"drizzle-kit","old_version":"0.31.9","new_version":"0.31.10","repository_url":"https://github.com/drizzle-team/drizzle-orm"},{"name":"@modelcontextprotocol/sdk","old_version":"1.26.0","new_version":"1.29.0","repository_url":"https://github.com/modelcontextprotocol/typescript-sdk"},{"name":"got","old_version":"14.6.6","new_version":"15.0.5","repository_url":"https://github.com/sindresorhus/got"}],"path":null,"ecosystem":"npm"},"body":"Bumps the all-dependencies group with 62 updates in the / directory:\n\n| Package | From | To |\n| --- | --- | --- |\n| [@eslint-react/eslint-plugin](https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin) | `2.13.0` | `5.8.1` |\n| [@eslint/js](https://github.com/eslint/eslint/tree/HEAD/packages/js) | `9.39.2` | `10.0.1` |\n| [@typescript-eslint/eslint-plugin](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin) | `8.56.0` | `8.59.3` |\n| [@typescript-eslint/parser](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/parser) | `8.56.0` | `8.59.3` |\n| [eslint](https://github.com/eslint/eslint) | `9.39.2` | `10.4.0` |\n| [eslint-plugin-react-hooks](https://github.com/facebook/react/tree/HEAD/packages/eslint-plugin-react-hooks) | `7.0.1` | `7.1.1` |\n| [globals](https://github.com/sindresorhus/globals) | `17.3.0` | `17.6.0` |\n| [graphql](https://github.com/graphql/graphql-js) | `16.12.0` | `16.14.0` |\n| [happy-dom](https://github.com/capricorn86/happy-dom) | `20.6.2` | `20.9.0` |\n| [jiti](https://github.com/unjs/jiti) | `2.6.1` | `2.7.0` |\n| [lint-staged](https://github.com/lint-staged/lint-staged) | `16.2.7` | `17.0.5` |\n| [mermaid](https://github.com/mermaid-js/mermaid) | `11.12.3` | `11.15.0` |\n| [prettier](https://github.com/prettier/prettier) | `3.8.1` | `3.8.3` |\n| [react](https://github.com/facebook/react/tree/HEAD/packages/react) | `19.2.4` | `19.2.6` |\n| [typescript](https://github.com/microsoft/TypeScript) | `5.9.3` | `6.0.3` |\n| [typescript-eslint](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/typescript-eslint) | `8.56.0` | `8.59.3` |\n| [typescript-language-server](https://github.com/typescript-language-server/typescript-language-server) | `5.1.3` | `5.2.0` |\n| [vite](https://github.com/vitejs/vite/tree/HEAD/packages/vite) | `7.3.1` | `8.0.13` |\n| [vitepress](https://github.com/vuejs/vitepress) | `2.0.0-alpha.16` | `2.0.0-alpha.17` |\n| [vitepress-plugin-llms](https://github.com/okineadev/vitepress-plugin-llms) | `1.11.0` | `1.12.2` |\n| [vitest](https://github.com/vitest-dev/vitest/tree/HEAD/packages/vitest) | `4.0.18` | `4.1.6` |\n| [wrangler](https://github.com/cloudflare/workers-sdk/tree/HEAD/packages/wrangler) | `4.66.0` | `4.92.0` |\n| [@ai-sdk/openai](https://github.com/vercel/ai/tree/HEAD/packages/openai) | `3.0.29` | `3.0.64` |\n| [@better-auth/passkey](https://github.com/better-auth/better-auth/tree/HEAD/packages/passkey) | `1.4.18` | `1.6.11` |\n| [@better-auth/stripe](https://github.com/better-auth/better-auth/tree/HEAD/packages/stripe) | `1.4.18` | `1.6.11` |\n| [@trpc/server](https://github.com/trpc/trpc/tree/HEAD/packages/server) | `11.10.0` | `11.17.0` |\n| [ai](https://github.com/vercel/ai/tree/HEAD/packages/ai) | `6.0.91` | `6.0.184` |\n| [better-auth](https://github.com/better-auth/better-auth/tree/HEAD/packages/better-auth) | `1.4.18` | `1.6.11` |\n| [drizzle-orm](https://github.com/drizzle-team/drizzle-orm) | `0.45.1` | `0.45.2` |\n| [resend](https://github.com/resend/resend-node) | `6.9.2` | `6.12.3` |\n| [stripe](https://github.com/stripe/stripe-node) | `20.3.1` | `22.1.1` |\n| [@cloudflare/workers-types](https://github.com/cloudflare/workerd) | `4.20260218.0` | `4.20260518.1` |\n| [@types/bun](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/bun) | `1.3.9` | `1.3.14` |\n| [hono](https://github.com/honojs/hono) | `4.11.10` | `4.12.19` |\n| [@tanstack/react-query](https://github.com/TanStack/query/tree/HEAD/packages/react-query) | `5.90.21` | `5.100.10` |\n| [@tanstack/react-router](https://github.com/TanStack/router/tree/HEAD/packages/react-router) | `1.161.1` | `1.170.4` |\n| [@trpc/client](https://github.com/trpc/trpc/tree/HEAD/packages/client) | `11.10.0` | `11.17.0` |\n| [@trpc/tanstack-react-query](https://github.com/trpc/trpc/tree/HEAD/packages/tanstack-react-query) | `11.10.0` | `11.17.0` |\n| [jotai](https://github.com/pmndrs/jotai) | `2.17.1` | `2.20.0` |\n| [jotai-effect](https://github.com/jotaijs/jotai-effect) | `2.2.3` | `2.3.1` |\n| [lucide-react](https://github.com/lucide-icons/lucide/tree/HEAD/packages/lucide-react) | `0.574.0` | `1.16.0` |\n| [react-dom](https://github.com/facebook/react/tree/HEAD/packages/react-dom) | `19.2.4` | `19.2.6` |\n| [tailwind-merge](https://github.com/dcastil/tailwind-merge) | `3.4.1` | `3.6.0` |\n| [@tailwindcss/postcss](https://github.com/tailwindlabs/tailwindcss/tree/HEAD/packages/@tailwindcss-postcss) | `4.2.0` | `4.3.0` |\n| [@tanstack/react-query-devtools](https://github.com/TanStack/query/tree/HEAD/packages/react-query-devtools) | `5.91.3` | `5.100.10` |\n| [@tanstack/react-router-devtools](https://github.com/TanStack/router/tree/HEAD/packages/react-router-devtools) | `1.161.1` | `1.167.0` |\n| [@tanstack/router-plugin](https://github.com/TanStack/router/tree/HEAD/packages/router-plugin) | `1.161.1` | `1.168.6` |\n| [@types/node](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/node) | `25.2.3` | `25.8.0` |\n| [@vitejs/plugin-react](https://github.com/vitejs/vite-plugin-react/tree/HEAD/packages/plugin-react) | `5.1.4` | `6.0.2` |\n| [@vitejs/plugin-react-swc](https://github.com/vitejs/vite-plugin-react/tree/HEAD/packages/plugin-react-swc) | `4.2.3` | `4.3.1` |\n| [autoprefixer](https://github.com/postcss/autoprefixer) | `10.4.24` | `10.5.0` |\n| [globby](https://github.com/sindresorhus/globby) | `16.1.1` | `16.2.0` |\n| [@react-email/components](https://github.com/resend/react-email/tree/HEAD/packages/components) | `1.0.8` | `1.0.12` |\n| [@react-email/render](https://github.com/resend/react-email/tree/HEAD/packages/render) | `2.0.4` | `2.0.8` |\n| [@react-email/preview-server](https://github.com/resend/react-email/tree/HEAD/packages/preview-server) | `5.2.8` | `5.2.10` |\n| [react-email](https://github.com/resend/react-email/tree/HEAD/packages/react-email) | `5.2.8` | `6.1.4` |\n| [@astrojs/react](https://github.com/withastro/astro/tree/HEAD/packages/integrations/react) | `4.4.2` | `5.0.5` |\n| [astro](https://github.com/withastro/astro/tree/HEAD/packages/astro) | `5.17.2` | `6.3.3` |\n| [dotenv](https://github.com/motdotla/dotenv) | `17.3.1` | `17.4.2` |\n| [drizzle-kit](https://github.com/drizzle-team/drizzle-orm) | `0.31.9` | `0.31.10` |\n| [@modelcontextprotocol/sdk](https://github.com/modelcontextprotocol/typescript-sdk) | `1.26.0` | `1.29.0` |\n| [got](https://github.com/sindresorhus/got) | `14.6.6` | `15.0.5` |\n\n\nUpdates `@eslint-react/eslint-plugin` from 2.13.0 to 5.8.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/Rel1cx/eslint-react/releases\"\u003e@​eslint-react/eslint-plugin's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev5.8.1 (2026-05-18)\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003ch3\u003e📝 Documentation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eRestructured rule documentation across all plugins from the \u003ccode\u003eCommon Violations / Invalid / Valid\u003c/code\u003e format to the new \u003ccode\u003eExamples / scenario-based / Troubleshooting / Further Reading\u003c/code\u003e format (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1784\"\u003e#1784\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eUpdated README tagline and description, removed the Benchmark section, and fixed migration guide links (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1783\"\u003e#1783\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eUpdated website recipe docs, FAQ, and third-party plugins page (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1783\"\u003e#1783\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🏗️ Internal\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpdated \u003ccode\u003escripts/scaffold-rule.ts\u003c/code\u003e and the rule request issue template to match the new documentation structure (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1782\"\u003e#1782\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/Rel1cx/eslint-react/compare/v5.8.0...v5.8.1\"\u003ehttps://github.com/Rel1cx/eslint-react/compare/v5.8.0...v5.8.1\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev5.8.0 (2026-05-17)\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003ch3\u003e🪄 Improvements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003e\u003ccode\u003ereact-jsx/no-children-prop\u003c/code\u003e\u003c/strong\u003e, \u003cstrong\u003e\u003ccode\u003ereact-jsx/no-children-prop-with-children\u003c/code\u003e\u003c/strong\u003e: Added support for \u003ccode\u003ecreateElement\u003c/code\u003e calls in addition to JSX elements (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1780\"\u003e#1780\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e📝 Documentation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdded \u003ccode\u003eeslint-plugin-perfectionist\u003c/code\u003e to the third-party plugins documentation page (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1778\"\u003e#1778\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🏗️ Internal\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eBumped \u003ccode\u003eimport-integrity-lint\u003c/code\u003e to 1.0.1.\u003c/li\u003e\n\u003cli\u003eFixed multiple versions of \u003ccode\u003etypescript-eslint\u003c/code\u003e and \u003ccode\u003eimport-integrity-lint\u003c/code\u003e in the workspace (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1776\"\u003e#1776\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eIncreased pnpm \u003ccode\u003eminimumReleaseAge\u003c/code\u003e to 3 days and updated lockfile (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1779\"\u003e#1779\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eRemoved \u003ccode\u003e.repos\u003c/code\u003e directory references from config files (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1773\"\u003e#1773\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eRemoved obsolete maintenance scripts (\u003ccode\u003ecreate-spec-alignment-issues.sh\u003c/code\u003e, \u003ccode\u003emigrate-labels.sh\u003c/code\u003e) (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1777\"\u003e#1777\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eReplaced \u003ccode\u003eeslint-plugin-fast-import\u003c/code\u003e with \u003ccode\u003eimport-integrity-lint\u003c/code\u003e (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1774\"\u003e#1774\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eSimplified the publish CI workflow by skipping install scripts and removing the lint step (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1775\"\u003e#1775\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/Rel1cx/eslint-react/compare/v5.7.10...v5.8.0\"\u003ehttps://github.com/Rel1cx/eslint-react/compare/v5.7.10...v5.8.0\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev5.7.10 (2026-05-16)\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003ch3\u003e🐞 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003e\u003ccode\u003ereact-x/no-leaked-conditional-rendering\u003c/code\u003e\u003c/strong\u003e, \u003cstrong\u003e\u003ccode\u003ereact-x/set-state-in-effect\u003c/code\u003e\u003c/strong\u003e: Added cycle detection to prevent stack overflow in recursive function analysis (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1769\"\u003e#1769\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e📝 Documentation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdded \u003ccode\u003ethird-party-plugins.mdx\u003c/code\u003e documentation page.\u003c/li\u003e\n\u003cli\u003eAdded spec diff and compiler test fixtures for \u003ccode\u003ereact-x/globals\u003c/code\u003e rule.\u003c/li\u003e\n\u003cli\u003eUpdated ESLint Stylistic link to rules anchor.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/Rel1cx/eslint-react/blob/main/CHANGELOG.md\"\u003e@​eslint-react/eslint-plugin's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev5.8.1 (2026-05-18)\u003c/h2\u003e\n\u003ch3\u003e📝 Documentation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eRestructured rule documentation across all plugins (\u003ccode\u003eeslint-plugin-react-x\u003c/code\u003e, \u003ccode\u003eeslint-plugin-react-dom\u003c/code\u003e, \u003ccode\u003eeslint-plugin-react-jsx\u003c/code\u003e, \u003ccode\u003eeslint-plugin-react-web-api\u003c/code\u003e, \u003ccode\u003eeslint-plugin-react-naming-convention\u003c/code\u003e, \u003ccode\u003eeslint-plugin-react-debug\u003c/code\u003e, \u003ccode\u003eeslint-plugin-react-rsc\u003c/code\u003e) from the \u003ccode\u003eCommon Violations / Invalid / Valid\u003c/code\u003e format to the new \u003ccode\u003eExamples / scenario-based / Troubleshooting / Further Reading\u003c/code\u003e format (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1784\"\u003e#1784\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eUpdated README tagline and description, removed the Benchmark section, and fixed migration guide links (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1783\"\u003e#1783\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eUpdated website recipe docs, FAQ, and third-party plugins page (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1783\"\u003e#1783\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🏗️ Internal\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpdated \u003ccode\u003escripts/scaffold-rule.ts\u003c/code\u003e and the rule request issue template to match the new documentation structure (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1782\"\u003e#1782\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/Rel1cx/eslint-react/compare/v5.8.0...v5.8.1\"\u003ehttps://github.com/Rel1cx/eslint-react/compare/v5.8.0...v5.8.1\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev5.8.0 (2026-05-17)\u003c/h2\u003e\n\u003ch3\u003e🪄 Improvements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003e\u003ccode\u003ereact-jsx/no-children-prop\u003c/code\u003e\u003c/strong\u003e, \u003cstrong\u003e\u003ccode\u003ereact-jsx/no-children-prop-with-children\u003c/code\u003e\u003c/strong\u003e: Added support for \u003ccode\u003ecreateElement\u003c/code\u003e calls in addition to JSX elements (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1780\"\u003e#1780\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e📝 Documentation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdded \u003ccode\u003eeslint-plugin-perfectionist\u003c/code\u003e to the third-party plugins documentation page (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1778\"\u003e#1778\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🏗️ Internal\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eBumped \u003ccode\u003eimport-integrity-lint\u003c/code\u003e to 1.0.1.\u003c/li\u003e\n\u003cli\u003eFixed multiple versions of \u003ccode\u003etypescript-eslint\u003c/code\u003e and \u003ccode\u003eimport-integrity-lint\u003c/code\u003e in the workspace (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1776\"\u003e#1776\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eIncreased pnpm \u003ccode\u003eminimumReleaseAge\u003c/code\u003e to 3 days and updated lockfile (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1779\"\u003e#1779\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eRemoved \u003ccode\u003e.repos\u003c/code\u003e directory references from config files (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1773\"\u003e#1773\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eRemoved obsolete maintenance scripts (\u003ccode\u003ecreate-spec-alignment-issues.sh\u003c/code\u003e, \u003ccode\u003emigrate-labels.sh\u003c/code\u003e) (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1777\"\u003e#1777\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eReplaced \u003ccode\u003eeslint-plugin-fast-import\u003c/code\u003e with \u003ccode\u003eimport-integrity-lint\u003c/code\u003e (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1774\"\u003e#1774\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eSimplified the publish CI workflow by skipping install scripts and removing the lint step (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1775\"\u003e#1775\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/Rel1cx/eslint-react/compare/v5.7.10...v5.8.0\"\u003ehttps://github.com/Rel1cx/eslint-react/compare/v5.7.10...v5.8.0\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev5.7.10 (2026-05-16)\u003c/h2\u003e\n\u003ch3\u003e🐞 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003e\u003ccode\u003ereact-x/no-leaked-conditional-rendering\u003c/code\u003e\u003c/strong\u003e, \u003cstrong\u003e\u003ccode\u003ereact-x/set-state-in-effect\u003c/code\u003e\u003c/strong\u003e: Added cycle detection to prevent stack overflow in recursive function analysis (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1769\"\u003e#1769\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e📝 Documentation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdded \u003ccode\u003ethird-party-plugins.mdx\u003c/code\u003e documentation page.\u003c/li\u003e\n\u003cli\u003eAdded spec diff and compiler test fixtures for \u003ccode\u003ereact-x/globals\u003c/code\u003e rule.\u003c/li\u003e\n\u003cli\u003eUpdated ESLint Stylistic link to rules anchor.\u003c/li\u003e\n\u003cli\u003eUpdated community projects (added Obsidian Copilot).\u003c/li\u003e\n\u003cli\u003eAdded redirects and simplified removed docs page.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/94549a1e3496d2ef3dff60b6332f17656469b2f0\"\u003e\u003ccode\u003e94549a1\u003c/code\u003e\u003c/a\u003e release: 5.8.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/2821bb11803f5ef8c8021d3deed84183ce136a24\"\u003e\u003ccode\u003e2821bb1\u003c/code\u003e\u003c/a\u003e docs: restructure rule documentation to new Examples-based format (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1784\"\u003e#1784\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/4317c311d29c5d0c9aa8b48d335172f60b4d4487\"\u003e\u003ccode\u003e4317c31\u003c/code\u003e\u003c/a\u003e release: 5.8.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/e060debd13fc873a83ed9ac143d559bf5e0c3fac\"\u003e\u003ccode\u003ee060deb\u003c/code\u003e\u003c/a\u003e release: 5.7.10\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/752585a5125e2d53c7ced0df2e58fe8960d3cbd2\"\u003e\u003ccode\u003e752585a\u003c/code\u003e\u003c/a\u003e release: 5.7.10-beta.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/24a9443a01f832ba3b960a3f67fbf38a3de490ca\"\u003e\u003ccode\u003e24a9443\u003c/code\u003e\u003c/a\u003e release: 5.7.10-next.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/50d7dc0bcfc01cfc9bf9d5190db218fb9719a869\"\u003e\u003ccode\u003e50d7dc0\u003c/code\u003e\u003c/a\u003e release: 5.7.8\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/be9e7865cac798b3111840ced8c81d38ec660f4d\"\u003e\u003ccode\u003ebe9e786\u003c/code\u003e\u003c/a\u003e release: 5.7.8-beta.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/e14aabca9a1ed01e08fdd3dd55627cb05f9c1c1f\"\u003e\u003ccode\u003ee14aabc\u003c/code\u003e\u003c/a\u003e release: 5.7.8-next.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/7be40890022163dfa1b8a40b5a1ac25354d2e7db\"\u003e\u003ccode\u003e7be4089\u003c/code\u003e\u003c/a\u003e release: 5.7.7\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/Rel1cx/eslint-react/commits/v5.8.1/plugins/eslint-plugin\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@eslint/js` from 9.39.2 to 10.0.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/eslint/eslint/releases\"\u003e@​eslint/js's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev10.0.1\u003c/h2\u003e\n\u003ch2\u003eBug Fixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/c87d5bded54c5cf491eb04c24c9d09bbbd42c23e\"\u003e\u003ccode\u003ec87d5bd\u003c/code\u003e\u003c/a\u003e fix: update eslint (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20531\"\u003e#20531\u003c/a\u003e) (renovate[bot])\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/d84100115c14691691058f00779c94e74fca946a\"\u003e\u003ccode\u003ed841001\u003c/code\u003e\u003c/a\u003e fix: update \u003ccode\u003eminimatch\u003c/code\u003e to \u003ccode\u003e10.2.1\u003c/code\u003e to address security vulnerabilities (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20519\"\u003e#20519\u003c/a\u003e) (루밀LuMir)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/04c21475b3004904948f02049f2888b401d82c78\"\u003e\u003ccode\u003e04c2147\u003c/code\u003e\u003c/a\u003e fix: update error message for unused suppressions (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20496\"\u003e#20496\u003c/a\u003e) (fnx)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/38b089c1726feac0e31a31d47941bd99e29ce003\"\u003e\u003ccode\u003e38b089c\u003c/code\u003e\u003c/a\u003e fix: update dependency \u003ccode\u003e@​eslint/config-array\u003c/code\u003e to ^0.23.1 (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20484\"\u003e#20484\u003c/a\u003e) (renovate[bot])\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eDocumentation\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/5b3dbce50a1404a9f118afe810cefeee79388a2a\"\u003e\u003ccode\u003e5b3dbce\u003c/code\u003e\u003c/a\u003e docs: add AI acknowledgement section to templates (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20431\"\u003e#20431\u003c/a\u003e) (루밀LuMir)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/6f23076037d5879f20fb3be2ef094293b1e8d38c\"\u003e\u003ccode\u003e6f23076\u003c/code\u003e\u003c/a\u003e docs: toggle nav in no-JS mode (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20476\"\u003e#20476\u003c/a\u003e) (Tanuj Kanti)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/b69cfb32a16c5d5e9986390d484fae1d21e406f9\"\u003e\u003ccode\u003eb69cfb3\u003c/code\u003e\u003c/a\u003e docs: Update README (GitHub Actions Bot)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eChores\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/e5c281ffd038a3a7a3e5364db0b9378e0ad83020\"\u003e\u003ccode\u003ee5c281f\u003c/code\u003e\u003c/a\u003e chore: updates for v9.39.3 release (Jenkins)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/8c3832adb77cd993b4a24891900d5eeaaf093cdc\"\u003e\u003ccode\u003e8c3832a\u003c/code\u003e\u003c/a\u003e chore: update \u003ccode\u003e@​typescript-eslint/parser\u003c/code\u003e to ^8.56.0 (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20514\"\u003e#20514\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/8330d238ae6adb68bb6a1c9381e38cfedd990d94\"\u003e\u003ccode\u003e8330d23\u003c/code\u003e\u003c/a\u003e test: add tests for config-api (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20493\"\u003e#20493\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/37d6e91e88fa6a2ca6d8726679096acff21ba6cc\"\u003e\u003ccode\u003e37d6e91\u003c/code\u003e\u003c/a\u003e chore: remove eslint v10 prereleases from eslint-config-eslint deps (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20494\"\u003e#20494\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/da7cd0e79197ad16e17052eef99df141de6dbfb1\"\u003e\u003ccode\u003eda7cd0e\u003c/code\u003e\u003c/a\u003e refactor: cleanup error message templates (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20479\"\u003e#20479\u003c/a\u003e) (Francesco Trotta)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/84fb885d49ac810e79a9491276b4828b53d913e5\"\u003e\u003ccode\u003e84fb885\u003c/code\u003e\u003c/a\u003e chore: package.json update for \u003ccode\u003e@​eslint/js\u003c/code\u003e release (Jenkins)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/1f667344b57c4c09b548d94bcfac1f91b6e5c63d\"\u003e\u003ccode\u003e1f66734\u003c/code\u003e\u003c/a\u003e chore: add \u003ccode\u003eeslint\u003c/code\u003e to \u003ccode\u003epeerDependencies\u003c/code\u003e of \u003ccode\u003e@eslint/js\u003c/code\u003e (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20467\"\u003e#20467\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev10.0.0\u003c/h2\u003e\n\u003ch2\u003eBreaking Changes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/f9e54f43a5e497cdfa179338b431093245cb787b\"\u003e\u003ccode\u003ef9e54f4\u003c/code\u003e\u003c/a\u003e feat!: estimate rule-tester failure location (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20420\"\u003e#20420\u003c/a\u003e) (ST-DDT)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/a176319d8ade1a7d9b2d7fb8f038f55a2662325f\"\u003e\u003ccode\u003ea176319\u003c/code\u003e\u003c/a\u003e feat!: replace \u003ccode\u003echalk\u003c/code\u003e with \u003ccode\u003estyleText\u003c/code\u003e and add \u003ccode\u003ecolor\u003c/code\u003e to \u003ccode\u003eResultsMeta\u003c/code\u003e (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20227\"\u003e#20227\u003c/a\u003e) (루밀LuMir)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/c7046e6c1e03c4ca0eee4888a1f2eba4c6454f84\"\u003e\u003ccode\u003ec7046e6\u003c/code\u003e\u003c/a\u003e feat!: enable JSX reference tracking (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20152\"\u003e#20152\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/fa31a608901684fbcd9906d1907e66561d16e5aa\"\u003e\u003ccode\u003efa31a60\u003c/code\u003e\u003c/a\u003e feat!: add \u003ccode\u003ename\u003c/code\u003e to configs (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20015\"\u003e#20015\u003c/a\u003e) (Kirk Waiblinger)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/3383e7ec9028166cafc8ea7986c2f7498d0049f0\"\u003e\u003ccode\u003e3383e7e\u003c/code\u003e\u003c/a\u003e fix!: remove deprecated \u003ccode\u003eSourceCode\u003c/code\u003e methods (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20137\"\u003e#20137\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/501abd0e916a35554c58b7c0365537f1fa3880ce\"\u003e\u003ccode\u003e501abd0\u003c/code\u003e\u003c/a\u003e feat!: update dependency minimatch to v10 (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20246\"\u003e#20246\u003c/a\u003e) (renovate[bot])\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/ca4d3b40085de47561f89656a2207d09946ed45e\"\u003e\u003ccode\u003eca4d3b4\u003c/code\u003e\u003c/a\u003e fix!: stricter rule tester assertions for valid test cases (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20125\"\u003e#20125\u003c/a\u003e) (唯然)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/96512a66c86402fb0538cdcb6cd30b9073f6bf3b\"\u003e\u003ccode\u003e96512a6\u003c/code\u003e\u003c/a\u003e fix!: Remove deprecated rule context methods (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20086\"\u003e#20086\u003c/a\u003e) (Nicholas C. Zakas)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/c69fdacdb2e886b9d965568a397aa8220db3fe90\"\u003e\u003ccode\u003ec69fdac\u003c/code\u003e\u003c/a\u003e feat!: remove eslintrc support (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20037\"\u003e#20037\u003c/a\u003e) (Francesco Trotta)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/208b5cc34a8374ff81412b5bec2e0800eebfbd04\"\u003e\u003ccode\u003e208b5cc\u003c/code\u003e\u003c/a\u003e feat!: Use \u003ccode\u003eScopeManager#addGlobals()\u003c/code\u003e (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20132\"\u003e#20132\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/a2ee188ea7a38a0c6155f3d39e2b00e1d0f36e14\"\u003e\u003ccode\u003ea2ee188\u003c/code\u003e\u003c/a\u003e fix!: add \u003ccode\u003euniqueItems: true\u003c/code\u003e in \u003ccode\u003eno-invalid-regexp\u003c/code\u003e option (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20155\"\u003e#20155\u003c/a\u003e) (Tanuj Kanti)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/a89059dbf2832d417dd493ee81483227ec44e4ab\"\u003e\u003ccode\u003ea89059d\u003c/code\u003e\u003c/a\u003e feat!: Program range span entire source text (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20133\"\u003e#20133\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/39a6424373d915fa9de0d7b0caba9a4dc3da9b53\"\u003e\u003ccode\u003e39a6424\u003c/code\u003e\u003c/a\u003e fix!: assert 'text' is a string across all RuleFixer methods (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20082\"\u003e#20082\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/f28fbf846244e043c92b355b224d121b06140b44\"\u003e\u003ccode\u003ef28fbf8\u003c/code\u003e\u003c/a\u003e fix!: Deprecate \u003ccode\u003e\u0026quot;always\u0026quot;\u003c/code\u003e and \u003ccode\u003e\u0026quot;as-needed\u0026quot;\u003c/code\u003e options of the \u003ccode\u003eradix\u003c/code\u003e rule (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20223\"\u003e#20223\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/aa3fb2b233e929b37220be940575f42c280e0b98\"\u003e\u003ccode\u003eaa3fb2b\u003c/code\u003e\u003c/a\u003e fix!: tighten \u003ccode\u003efunc-names\u003c/code\u003e schema (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20119\"\u003e#20119\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/f6c0ed0311dcfee853367d5068c765d066e6b756\"\u003e\u003ccode\u003ef6c0ed0\u003c/code\u003e\u003c/a\u003e feat!: report \u003ccode\u003eeslint-env\u003c/code\u003e comments as errors (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20128\"\u003e#20128\u003c/a\u003e) (Francesco Trotta)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/4bf739fb533e59f7f0a66b65f7bc80be0f37d8db\"\u003e\u003ccode\u003e4bf739f\u003c/code\u003e\u003c/a\u003e fix!: remove deprecated \u003ccode\u003eLintMessage#nodeType\u003c/code\u003e and \u003ccode\u003eTestCaseError#type\u003c/code\u003e (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20096\"\u003e#20096\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/523c076866400670fb2192a3f55dbf7ad3469247\"\u003e\u003ccode\u003e523c076\u003c/code\u003e\u003c/a\u003e feat!: drop support for jiti \u0026lt; 2.2.0 (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20016\"\u003e#20016\u003c/a\u003e) (michael faith)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/454a292c95f34dad232411ddac06408e6383bb64\"\u003e\u003ccode\u003e454a292\u003c/code\u003e\u003c/a\u003e feat!: update \u003ccode\u003eeslint:recommended\u003c/code\u003e configuration (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20210\"\u003e#20210\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/4f880ee02992e1bf0e96ebaba679985e2d1295f1\"\u003e\u003ccode\u003e4f880ee\u003c/code\u003e\u003c/a\u003e feat!: remove \u003ccode\u003ev10_*\u003c/code\u003e and inactive \u003ccode\u003eunstable_*\u003c/code\u003e flags (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20225\"\u003e#20225\u003c/a\u003e) (sethamus)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/f18115c363a4ac7671a4c7f30ee13d57ebba330f\"\u003e\u003ccode\u003ef18115c\u003c/code\u003e\u003c/a\u003e feat!: \u003ccode\u003eno-shadow-restricted-names\u003c/code\u003e report \u003ccode\u003eglobalThis\u003c/code\u003e by default (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20027\"\u003e#20027\u003c/a\u003e) (sethamus)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/c6358c31fbd3937b92d89be2618ffdf5a774604e\"\u003e\u003ccode\u003ec6358c3\u003c/code\u003e\u003c/a\u003e feat!: Require Node.js \u003ccode\u003e^20.19.0 || ^22.13.0 || \u0026gt;=24\u003c/code\u003e (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20160\"\u003e#20160\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eFeatures\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/bff9091927811497dbf066b0e3b85ecb37d43822\"\u003e\u003ccode\u003ebff9091\u003c/code\u003e\u003c/a\u003e feat: handle \u003ccode\u003eArray.fromAsync\u003c/code\u003e in \u003ccode\u003earray-callback-return\u003c/code\u003e (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20457\"\u003e#20457\u003c/a\u003e) (Francesco Trotta)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/290c594bb50c439fb71bc75521ee5360daa8c222\"\u003e\u003ccode\u003e290c594\u003c/code\u003e\u003c/a\u003e feat: add \u003ccode\u003eself\u003c/code\u003e to \u003ccode\u003eno-implied-eval\u003c/code\u003e rule (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20468\"\u003e#20468\u003c/a\u003e) (sethamus)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/43677de07ebd6e14bfac40a46ad749ba783c45f2\"\u003e\u003ccode\u003e43677de\u003c/code\u003e\u003c/a\u003e feat: fix handling of function and class expression names in \u003ccode\u003eno-shadow\u003c/code\u003e (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20432\"\u003e#20432\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/84fb885d49ac810e79a9491276b4828b53d913e5\"\u003e\u003ccode\u003e84fb885\u003c/code\u003e\u003c/a\u003e chore: package.json update for \u003ccode\u003e@​eslint/js\u003c/code\u003e release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/1f667344b57c4c09b548d94bcfac1f91b6e5c63d\"\u003e\u003ccode\u003e1f66734\u003c/code\u003e\u003c/a\u003e chore: add \u003ccode\u003eeslint\u003c/code\u003e to \u003ccode\u003epeerDependencies\u003c/code\u003e of \u003ccode\u003e@eslint/js\u003c/code\u003e (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20467\"\u003e#20467\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/f3fbc2f60cbe2c718364feb8c3fc0452c0df3c56\"\u003e\u003ccode\u003ef3fbc2f\u003c/code\u003e\u003c/a\u003e chore: set \u003ccode\u003e@eslint/js\u003c/code\u003e version to 10.0.0 to skip releasing it (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20466\"\u003e#20466\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/b4b3127f8542c599ce2dea804b6582ebc40c993d\"\u003e\u003ccode\u003eb4b3127\u003c/code\u003e\u003c/a\u003e chore: package.json update for \u003ccode\u003e@​eslint/js\u003c/code\u003e release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/0b14059491d830a49b3577931f4f68fbcfce6be5\"\u003e\u003ccode\u003e0b14059\u003c/code\u003e\u003c/a\u003e chore: package.json update for \u003ccode\u003e@​eslint/js\u003c/code\u003e release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/fa31a608901684fbcd9906d1907e66561d16e5aa\"\u003e\u003ccode\u003efa31a60\u003c/code\u003e\u003c/a\u003e feat!: add \u003ccode\u003ename\u003c/code\u003e to configs (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20015\"\u003e#20015\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/1e2cad5f6fa47ed6ed89d2a29798dda926d50990\"\u003e\u003ccode\u003e1e2cad5\u003c/code\u003e\u003c/a\u003e chore: package.json update for \u003ccode\u003e@​eslint/js\u003c/code\u003e release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/454a292c95f34dad232411ddac06408e6383bb64\"\u003e\u003ccode\u003e454a292\u003c/code\u003e\u003c/a\u003e feat!: update \u003ccode\u003eeslint:recommended\u003c/code\u003e configuration (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20210\"\u003e#20210\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/c6358c31fbd3937b92d89be2618ffdf5a774604e\"\u003e\u003ccode\u003ec6358c3\u003c/code\u003e\u003c/a\u003e feat!: Require Node.js \u003ccode\u003e^20.19.0 || ^22.13.0 || \u0026gt;=24\u003c/code\u003e (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20160\"\u003e#20160\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/eslint/eslint/commits/v10.0.1/packages/js\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@typescript-eslint/eslint-plugin` from 8.56.0 to 8.59.3\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases\"\u003e@​typescript-eslint/eslint-plugin's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev8.59.3\u003c/h2\u003e\n\u003ch2\u003e8.59.3 (2026-05-11)\u003c/h2\u003e\n\u003cp\u003eThis was a version bump only, there were no code changes.\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.3\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003ev8.59.2\u003c/h2\u003e\n\u003ch2\u003e8.59.2 (2026-05-04)\u003c/h2\u003e\n\u003ch3\u003e🩹 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unsafe-type-assertion] handle crash on recursive template literal types (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12150\"\u003e#12150\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-deprecated] object destructuring values should be treated as declarations (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12292\"\u003e#12292\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003erule-tester:\u003c/strong\u003e add TypeScript as a peer dependency (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12288\"\u003e#12288\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e❤️ Thank You\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eDariusz Czajkowski\u003c/li\u003e\n\u003cli\u003eDima Barabash\u003c/li\u003e\n\u003cli\u003eKirk Waiblinger \u003ca href=\"https://github.com/kirkwaiblinger\"\u003e\u003ccode\u003e@​kirkwaiblinger\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.2\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003ev8.59.1\u003c/h2\u003e\n\u003ch2\u003e8.59.1 (2026-04-27)\u003c/h2\u003e\n\u003ch3\u003e🩹 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-type-assertion] fix crash \u0026quot;TypeError: checker.getTypeArguments is not a function\u0026quot; (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12246\"\u003e#12246\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-type-assertion] preserve index signatures in undefined unions (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12257\"\u003e#12257\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-type-assertion] preserve phantom type arguments in generic inference (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12269\"\u003e#12269\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-type-assertion] avoid false positive in logical assignment assertions (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12278\"\u003e#12278\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-type-arguments] handle instantiation expressions (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12220\"\u003e#12220\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-condition] treat void as nullish in no-unnecessary-condition (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12241\"\u003e#12241\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e❤️ Thank You\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eanasm266 \u003ca href=\"https://github.com/anasm266\"\u003e\u003ccode\u003e@​anasm266\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAnshika Jain \u003ca href=\"https://github.com/Anshikakalpana\"\u003e\u003ccode\u003e@​Anshikakalpana\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUlrich Stark\u003c/li\u003e\n\u003cli\u003eyugo innami \u003ca href=\"https://github.com/nami8824\"\u003e\u003ccode\u003e@​nami8824\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.1\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/CHANGELOG.md\"\u003e@​typescript-eslint/eslint-plugin's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e8.59.3 (2026-05-11)\u003c/h2\u003e\n\u003cp\u003eThis was a version bump only for eslint-plugin to align it with other projects, there were no code changes.\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.3\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003e8.59.2 (2026-05-04)\u003c/h2\u003e\n\u003ch3\u003e🩹 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-deprecated] object destructuring values should be treated as declarations (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12292\"\u003e#12292\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unsafe-type-assertion] handle crash on recursive template literal types (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12150\"\u003e#12150\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e❤️ Thank You\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eDima Barabash\u003c/li\u003e\n\u003cli\u003eKirk Waiblinger \u003ca href=\"https://github.com/kirkwaiblinger\"\u003e\u003ccode\u003e@​kirkwaiblinger\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.2\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003e8.59.1 (2026-04-27)\u003c/h2\u003e\n\u003ch3\u003e🩹 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-condition] treat void as nullish in no-unnecessary-condition (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12241\"\u003e#12241\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-type-arguments] handle instantiation expressions (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12220\"\u003e#12220\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-type-assertion] avoid false positive in logical assignment assertions (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12278\"\u003e#12278\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-type-assertion] preserve phantom type arguments in generic inference (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12269\"\u003e#12269\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-type-assertion] preserve index signatures in undefined unions (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12257\"\u003e#12257\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-type-assertion] fix crash \u0026quot;TypeError: checker.getTypeArguments is not a function\u0026quot; (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12246\"\u003e#12246\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e❤️ Thank You\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eanasm266 \u003ca href=\"https://github.com/anasm266\"\u003e\u003ccode\u003e@​anasm266\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAnshika Jain \u003ca href=\"https://github.com/Anshikakalpana\"\u003e\u003ccode\u003e@​Anshikakalpana\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUlrich Stark\u003c/li\u003e\n\u003cli\u003eyugo innami \u003ca href=\"https://github.com/nami8824\"\u003e\u003ccode\u003e@​nami8824\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.1\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003e8.59.0 (2026-04-20)\u003c/h2\u003e\n\u003ch3\u003e🚀 Features\u003c/h3\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/48e13c0261e3cb1bf4f4dfaa462cdb3a56ef7383\"\u003e\u003ccode\u003e48e13c0\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.59.3\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/e26dc8003ababf078aad4df17765ee4cea30644c\"\u003e\u003ccode\u003ee26dc80\u003c/code\u003e\u003c/a\u003e docs: update stale links to latest (\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin/issues/12313\"\u003e#12313\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/44f9625336841a8ee3eb01a9e02e49b1d7b12648\"\u003e\u003ccode\u003e44f9625\u003c/code\u003e\u003c/a\u003e chore(deps): update vitest monorepo to v4.1.5 (\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin/issues/12307\"\u003e#12307\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/2ec35f1760aade4df4c631d76d78c7ed5e136333\"\u003e\u003ccode\u003e2ec35f1\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.59.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/ec3ef25390f7daf5a9ff33a60282bdbbb49ab0f3\"\u003e\u003ccode\u003eec3ef25\u003c/code\u003e\u003c/a\u003e test: make no-useless-empty-export tests fully static (\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin/issues/12260\"\u003e#12260\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/60d0a513870d833617374ff8ea256d86ca3cbbbb\"\u003e\u003ccode\u003e60d0a51\u003c/code\u003e\u003c/a\u003e chore(eslint-plugin): switch auto-generated test cases to hand-written in no-...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/5c53da230a70aba7d6f3d6474b5d249b430a95d0\"\u003e\u003ccode\u003e5c53da2\u003c/code\u003e\u003c/a\u003e fix(eslint-plugin): [no-deprecated] object destructuring values should be tre...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/80c28a1ada3f975a932a02587cefee632ccf6550\"\u003e\u003ccode\u003e80c28a1\u003c/code\u003e\u003c/a\u003e fix(eslint-plugin): [no-unsafe-type-assertion] handle crash on recursive temp...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/b7b2670123f76419630f88f3a807f85b7c535230\"\u003e\u003ccode\u003eb7b2670\u003c/code\u003e\u003c/a\u003e test: make no-this-alias tests fully static (\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin/issues/12258\"\u003e#12258\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/52457932e5507b5ca01e720a541f3f8d01e09b9d\"\u003e\u003ccode\u003e5245793\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.59.1\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commits/v8.59.3/packages/eslint-plugin\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@typescript-eslint/parser` from 8.56.0 to 8.59.3\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases\"\u003e@​typescript-eslint/parser's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev8.59.3\u003c/h2\u003e\n\u003ch2\u003e8.59.3 (2026-05-11)\u003c/h2\u003e\n\u003cp\u003eThis was a version bump only, there were no code changes.\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.3\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003ev8.59.2\u003c/h2\u003e\n\u003ch2\u003e8.59.2 (2026-05-04)\u003c/h2\u003e\n\u003ch3\u003e🩹 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unsafe-type-assertion] handle crash on recursive template literal types (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12150\"\u003e#12150\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-deprecated] object destructuring values should be treated as declarations (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12292\"\u003e#12292\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003erule-tester:\u003c/strong\u003e add TypeScript as a peer dependency (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12288\"\u003e#12288\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e❤️ Thank You\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eDariusz Czajkowski\u003c/li\u003e\n\u003cli\u003eDima Barabash\u003c/li\u003e\n\u003cli\u003eKirk Waiblinger \u003ca href=\"https://github.com/kirkwaiblinger\"\u003e\u003ccode\u003e@​kirkwaiblinger\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.2\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003ev8.59.1\u003c/h2\u003e\n\u003ch2\u003e8.59.1 (2026-04-27)\u003c/h2\u003e\n\u003ch3\u003e🩹 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-type-assertion] fix crash \u0026quot;TypeError: checker.getTypeArguments is not a function\u0026quot; (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12246\"\u003e#12246\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-type-assertion] preserve index signatures in undefined unions (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12257\"\u003e#12257\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-type-assertion] preserve phantom type arguments in generic inference (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12269\"\u003e#12269\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-type-assertion] avoid false positive in logical assignment assertions (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12278\"\u003e#12278\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-type-arguments] handle instantiation expressions (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12220\"\u003e#12220\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-condition] treat void as nullish in no-unnecessary-condition (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12241\"\u003e#12241\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e❤️ Thank You\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eanasm266 \u003ca href=\"https://github.com/anasm266\"\u003e\u003ccode\u003e@​anasm266\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAnshika Jain \u003ca href=\"https://github.com/Anshikakalpana\"\u003e\u003ccode\u003e@​Anshikakalpana\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUlrich Stark\u003c/li\u003e\n\u003cli\u003eyugo innami \u003ca href=\"https://github.com/nami8824\"\u003e\u003ccode\u003e@​nami8824\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.1\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/parser/CHANGELOG.md\"\u003e@​typescript-eslint/parser's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e8.59.3 (2026-05-11)\u003c/h2\u003e\n\u003cp\u003eThis was a version bump only for parser to align it with other projects, there were no code changes.\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.3\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003e8.59.2 (2026-05-04)\u003c/h2\u003e\n\u003cp\u003eThis was a version bump only for parser to align it with other projects, there were no code changes.\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.2\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003e8.59.1 (2026-04-27)\u003c/h2\u003e\n\u003cp\u003eThis was a version bump only for parser to align it with other projects, there were no code changes.\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.1\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003e8.59.0 (2026-04-20)\u003c/h2\u003e\n\u003cp\u003eThis was a version bump only for parser to align it with other projects, there were no code changes.\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.0\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003e8.58.2 (2026-04-13)\u003c/h2\u003e\n\u003ch3\u003e🩹 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eremove tsbuildinfo cache file from published packages (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12187\"\u003e#12187\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e❤️ Thank You\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAbhijeet Singh \u003ca href=\"https://github.com/cseas\"\u003e\u003ccode\u003e@​cseas\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.58.2\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003e8.58.1 (2026-04-08)\u003c/h2\u003e\n\u003cp\u003eThis was a version bump only for parser to align it with other projects, there were no code changes.\u003c/p\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/48e13c0261e3cb1bf4f4dfaa462cdb3a56ef7383\"\u003e\u003ccode\u003e48e13c0\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.59.3\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/44f9625336841a8ee3eb01a9e02e49b1d7b12648\"\u003e\u003ccode\u003e44f9625\u003c/code\u003e\u003c/a\u003e chore(deps): update vitest monorepo to v4.1.5 (\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/parser/issues/12307\"\u003e#12307\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/2ec35f1760aade4df4c631d76d78c7ed5e136333\"\u003e\u003ccode\u003e2ec35f1\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.59.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/52457932e5507b5ca01e720a541f3f8d01e09b9d\"\u003e\u003ccode\u003e5245793\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.59.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/ea9ae4f8817873480e3501145059f63e39e8d8a1\"\u003e\u003ccode\u003eea9ae4f\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.59.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/90c2803a4c250e0343598d41e973f95e743bf4ce\"\u003e\u003ccode\u003e90c2803\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.58.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/be6b49a02d68db9bdc8985e7e9e1598700fda2fa\"\u003e\u003ccode\u003ebe6b49a\u003c/code\u003e\u003c/a\u003e fix: remove tsbuildinfo cache file from published packages (\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/parser/issues/12187\"\u003e#12187\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/5311ed312eadf4e238324f2726ae0b1f3f2206e6\"\u003e\u003ccode\u003e5311ed3\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.58.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/493341709fe7d1d6433332b7bd2724e3332c7cdf\"\u003e\u003ccode\u003e4933417\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.58.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/8cde2d06fb9bc591a4c93452509ddbd600c76a35\"\u003e\u003ccode\u003e8cde2d0\u003c/code\u003e\u003c/a\u003e feat: support TypeScript 6 (\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/parser/issues/12124\"\u003e#12124\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commits/v8.59.3/packages/parser\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `eslint` from 9.39.2 to 10.4.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/eslint/eslint/releases\"\u003eeslint's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev10.4.0\u003c/h2\u003e\n\u003ch2\u003eFeatures\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/1a45ec596af1dd5f880e6874cb8f24dafb6a7ecf\"\u003e\u003ccode\u003e1a45ec5\u003c/code\u003e\u003c/a\u003e feat: check sequence expressions in \u003ccode\u003efor-direction\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20701\"\u003e#20701\u003c/a\u003e) (kuldeep kumar)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/450040bd89b989b3531824c6be45feb5fe3d936b\"\u003e\u003ccode\u003e450040b\u003c/code\u003e\u003c/a\u003e feat: add \u003ccode\u003eincludeIgnoreFile()\u003c/code\u003e to \u003ccode\u003eeslint/config\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20735\"\u003e#20735\u003c/a\u003e) (Kirk Waiblinger)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eBug Fixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/544c0c3da589166ad8e5d634f35d3d06701c57be\"\u003e\u003ccode\u003e544c0c3\u003c/code\u003e\u003c/a\u003e fix: escape code path DOT labels in debug output (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20866\"\u003e#20866\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/6799431203f2579632d0870f98ba132067f4040c\"\u003e\u003ccode\u003e6799431\u003c/code\u003e\u003c/a\u003e fix: update dependency \u003ccode\u003e@​eslint/config-helpers\u003c/code\u003e to ^0.6.0 (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20850\"\u003e#20850\u003c/a\u003e) (renovate[bot])\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/f078fef5005dceb14fc162aab7c7200e027688dd\"\u003e\u003ccode\u003ef078fef\u003c/code\u003e\u003c/a\u003e fix: handle non-array deprecated rule replacements (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20825\"\u003e#20825\u003c/a\u003e) (xbinaryx)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eDocumentation\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/7e52a7151fb92eec0e0f67fe4e5ddbd1ccce796f\"\u003e\u003ccode\u003e7e52a71\u003c/code\u003e\u003c/a\u003e docs: add mention of \u003ccode\u003e@eslint-react/eslint-plugin\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20869\"\u003e#20869\u003c/a\u003e) (Pavel)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/db3468ba746407d7f286f18f7ea9db6df0e3bc08\"\u003e\u003ccode\u003edb3468b\u003c/code\u003e\u003c/a\u003e docs: tweak wording around ambiguous CJS-vs-ESM config (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20865\"\u003e#20865\u003c/a\u003e) (Kirk Waiblinger)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/90846643ec6e97d447ae0d831fabe6d17b0a998a\"\u003e\u003ccode\u003e9084664\u003c/code\u003e\u003c/a\u003e docs: Update README (GitHub Actions Bot)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/9cc73875046e3c4b8313644cbb1e99e26b36bd3f\"\u003e\u003ccode\u003e9cc7387\u003c/code\u003e\u003c/a\u003e docs: Update README (GitHub Actions Bot)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/3d7b5484407403817aa9071a394d336d8ea96eb5\"\u003e\u003ccode\u003e3d7b548\u003c/code\u003e\u003c/a\u003e docs: Update README (GitHub Actions Bot)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/191ec3c0a3f94ce0f110df761f0b2b8949011ccb\"\u003e\u003ccode\u003e191ec3c\u003c/code\u003e\u003c/a\u003e docs: Update README (GitHub Actions Bot)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eChores\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/6616856f28fa514a30f87b5539fc100d739a94bf\"\u003e\u003ccode\u003e6616856\u003c/code\u003e\u003c/a\u003e chore: upgrade knip to v6 (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20875\"\u003e#20875\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/d13b084a3ad02f926e9addaa35fc383759ea5554\"\u003e\u003ccode\u003ed13b084\u003c/code\u003e\u003c/a\u003e ci: ensure auto-created PRs run CI (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20860\"\u003e#20860\u003c/a\u003e) (lumir)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/e71c7af86dce9acc1d18cb12d2184309f6841594\"\u003e\u003ccode\u003ee71c7af\u003c/code\u003e\u003c/a\u003e ci: bump pnpm/action-setup from 6.0.5 to 6.0.7 (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20862\"\u003e#20862\u003c/a\u003e) (dependabot[bot])\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/d84393dea170f54191fd20c8268b52c81c0ccd99\"\u003e\u003ccode\u003ed84393d\u003c/code\u003e\u003c/a\u003e test: add unit tests for SuppressionsService.applySuppressions() (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20863\"\u003e#20863\u003c/a\u003e) (kuldeep kumar)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/24db8cb8e6f07fba667121777a15b1785486be94\"\u003e\u003ccode\u003e24db8cb\u003c/code\u003e\u003c/a\u003e test: add tests for SuppressionsService.save() (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20802\"\u003e#20802\u003c/a\u003e) (kuldeep kumar)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/2ef0549cac4a9537e4c3a26b9f3edd4c99476bf6\"\u003e\u003ccode\u003e2ef0549\u003c/code\u003e\u003c/a\u003e chore: update ecosystem plugins (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20857\"\u003e#20857\u003c/a\u003e) (github-actions[bot])\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/a4297918d264d229a06cd96051ef9b91c7b86732\"\u003e\u003ccode\u003ea429791\u003c/code\u003e\u003c/a\u003e ci: remove \u003ccode\u003eeslint-webpack-plugin\u003c/code\u003e types integration test (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20668\"\u003e#20668\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/9e37386aa7f2ce220b2ef74a6afbac5f6b3527c5\"\u003e\u003ccode\u003e9e37386\u003c/code\u003e\u003c/a\u003e chore: replace \u003ccode\u003erecast\u003c/code\u003e with range approach in code-sample-minimizer (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20682\"\u003e#20682\u003c/a\u003e) (Copilot)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/0dd1f9ffc9a07704d46e2a4c8d4ccc0d0908b0c0\"\u003e\u003ccode\u003e0dd1f9f\u003c/code\u003e\u003c/a\u003e test: disable warning for \u003ccode\u003evm.constants.USE_MAIN_CONTEXT_DEFAULT_LOADER\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20845\"\u003e#20845\u003c/a\u003e) (Francesco Trotta)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/9da3c7bc92d9579f8db19ecb56e718538d09db2b\"\u003e\u003ccode\u003e9da3c7b\u003c/code\u003e\u003c/a\u003e refactor: remove deprecated \u003ccode\u003emeta.language\u003c/code\u003e and migrate \u003ccode\u003emeta.dialects\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20716\"\u003e#20716\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/2099ed12a0a74c3d7f0808514362af2499b4fe2b\"\u003e\u003ccode\u003e2099ed1\u003c/code\u003e\u003c/a\u003e refactor: add \u003ccode\u003emeta.defaultOptions\u003c/code\u003e to more rules, enable linting (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20800\"\u003e#20800\u003c/a\u003e) (xbinaryx)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/f1dfbc9ca57196de7092e1888cc99427bd6fe06e\"\u003e\u003ccode\u003ef1dfbc9\u003c/code\u003e\u003c/a\u003e chore: update ecosystem plugins (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20836\"\u003e#20836\u003c/a\u003e) (github-actions[bot])\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/c75941390c14728806cd4baef4f6072f6de78318\"\u003e\u003ccode\u003ec759413\u003c/code\u003e\u003c/a\u003e ci: bump pnpm/action-setup from 6.0.3 to 6.0.5 (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20843\"\u003e#20843\u003c/a\u003e) (dependabot[bot])\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/5b817d6fdc9ae2c35b528dc662b2eca8f40f64aa\"\u003e\u003ccode\u003e5b817d6\u003c/code\u003e\u003c/a\u003e test: add unit tests for lib/shared/ast-utils (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20838\"\u003e#20838\u003c/a\u003e) (kuldeep kumar)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/1c13ae3934c198c494e5958fa3a68b33244ff06a\"\u003e\u003ccode\u003e1c13ae3\u003c/code\u003e\u003c/a\u003e test: add unit tests for lib/shared/severity (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20835\"\u003e#20835\u003c/a\u003e) (kuldeep kumar)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev10.3.0\u003c/h2\u003e\n\u003ch2\u003eFeatures\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/379571a975f2b24d88037b9de2e72ec61d004130\"\u003e\u003ccode\u003e379571a\u003c/code\u003e\u003c/a\u003e feat: add suggestions for no-unused-private-class-members (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20773\"\u003e#20773\u003c/a\u003e) (sethamus)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eBug Fixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/b6ae5cf07b9b51802367539cb24b245b61eaa37c\"\u003e\u003ccode\u003eb6ae5cf\u003c/code\u003e\u003c/a\u003e fix: handle unavailable require cache (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20812\"\u003e#20812\u003c/a\u003e) (Simon Podlipsky)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/6fb3685bcbe9a6f72fd7dfb9129686b6fb96b0bd\"\u003e\u003ccode\u003e6fb3685\u003c/code\u003e\u003c/a\u003e fix: rule suggestions cause continuation in class body (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20787\"\u003e#20787\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eDocumentation\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/32cc7ab4ec653ce89da92deb5c40a9f4fc707fe5\"\u003e\u003ccode\u003e32cc7ab\u003c/code\u003e\u003c/a\u003e docs: fix typos in docs and comments (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20809\"\u003e#20809\u003c/a\u003e) (Tanuj Kanti)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/7f479376a2fa463d823ab762db6bb37ce8d2ee8f\"\u003e\u003ccode\u003e7f47937\u003c/code\u003e\u003c/a\u003e docs: Update README (GitHub Actions Bot)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eChores\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/d32235ec19ceea211fa86452afa383ca05f5c2f9\"\u003e\u003ccode\u003ed32235e\u003c/code\u003e\u003c/a\u003e ci: use pnpm in \u003ccode\u003eeslint-flat-config-utils\u003c/code\u003e type integration test (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20826\"\u003e#20826\u003c/a\u003e) (Francesco Trotta)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/3ffb14ea517de750ed1181579ef844af342e4096\"\u003e\u003ccode\u003e3ffb14e\u003c/code\u003e\u003c/a\u003e chore: clean up typos in comments and JSDoc (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20821\"\u003e#20821\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/452c4010c07dc2e36fe6ec6a8c48298878e86887\"\u003e\u003ccode\u003e452c401\u003c/code\u003e\u003c/a\u003e 10.4.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/b6417e8b55c9525070d6e168b485ce6ff21688ed\"\u003e\u003ccode\u003eb6417e8\u003c/code\u003e\u003c/a\u003e Build: changelog update for 10.4.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/6616856f28fa514a30f87b5539fc100d739a94bf\"\u003e\u003ccode\u003e6616856\u003c/code\u003e\u003c/a\u003e chore: upgrade knip to v6 (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20875\"\u003e#20875\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/d13b084a3ad02f926e9addaa35fc383759ea5554\"\u003e\u003ccode\u003ed13b084\u003c/code\u003e\u003c/a\u003e ci: ensure auto-created PRs run CI (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20860\"\u003e#20860\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/7e52a7151fb92eec0e0f67fe4e5ddbd1ccce796f\"\u003e\u003ccode\u003e7e52a71\u003c/code\u003e\u003c/a\u003e docs: add mention of \u003ccode\u003e@eslint-react/eslint-plugin\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20869\"\u003e#20869\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/e71c7af86dce9acc1d18cb12d2184309f6841594\"\u003e\u003ccode\u003ee71c7af\u003c/code\u003e\u003c/a\u003e ci: bump pnpm/action-setup from 6.0.5 to 6.0.7 (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20862\"\u003e#20862\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/544c0c3da589166ad8e5d634f35d3d06701c57be\"\u003e\u003ccode\u003e544c0c3\u003c/code\u003e\u003c/a\u003e fix: escape code path DOT labels in debug output (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20866\"\u003e#20866\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/db3468ba746407d7f286f18f7ea9db6df0e3bc08\"\u003e\u003ccode\u003edb3468b\u003c/code\u003e\u003c/a\u003e docs: tweak wording around ambiguous CJS-vs-ESM config (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20865\"\u003e#20865\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/d84393dea170f54191fd20c8268b52c81c0ccd99\"\u003e\u003ccode\u003ed84393d\u003c/code\u003e\u003c/a\u003e test: add unit tests for SuppressionsService.applySuppressions() (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20863\"\u003e#20863\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/90846643ec6e97d447ae0d831fabe6d17b0a998a\"\u003e\u003ccode\u003e9084664\u003c/code\u003e\u003c/a\u003e docs: Update README\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/eslint/eslint/compare/v9.39.2...v10.4.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `eslint-plugin-react-hooks` from 7.0.1 to 7.1.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/facebook/react/releases\"\u003eeslint-plugin-react-hooks's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eeslint-plugin-react-hooks@7.1.1 (April 17, 2026)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eNote:\u003c/strong\u003e 7.1.0 accidentally removed the \u003ccode\u003ecomponent-hook-factories\u003c/code\u003e rule, causing errors for users who referenced it in their ESLint config. This is now fixed.\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdd deprecated no-op \u003ccode\u003ecomponent-hook-factories\u003c/code\u003e rule for backwards compatibility. (\u003ca href=\"https://github.com/mofeiZ\"\u003e\u003ccode\u003e@​mofeiZ\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/36307\"\u003e#36307\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eeslint-plugin-react-hooks@7.1.0 (April 16, 2026)\u003c/h2\u003e\n\u003cp\u003eThis release adds ESLint v10 support, improves performance by skipping compilation for non-React files, and includes compiler lint improvements including better \u003ccode\u003eset-state-in-effect\u003c/code\u003e detection, improved ref validation, and more helpful error reporting.\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdd ESLint v10 support. (\u003ca href=\"https://github.com/azat-io\"\u003e\u003ccode\u003e@​azat-io\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/35720\"\u003e#35720\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSkip compilation for non-React files to improve performance. (\u003ca href=\"https://github.com/josephsavona\"\u003e\u003ccode\u003e@​josephsavona\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/35589\"\u003e#35589\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix exhaustive deps bug with Flow type casting. (\u003ca href=\"https://github.com/jorge-cab\"\u003e\u003ccode\u003e@​jorge-cab\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/35691\"\u003e#35691\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix \u003ccode\u003euseEffectEvent\u003c/code\u003e checks in component syntax. (\u003ca href=\"https://github.com/jbrown215\"\u003e\u003ccode\u003e@​jbrown215\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/35041\"\u003e#35041\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eImproved \u003ccode\u003eset-state-in-effect\u003c/code\u003e validation with fewer false negatives. (\u003ca href=\"https://github.com/jorge-cab\"\u003e\u003ccode\u003e@​jorge-cab\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/35134\"\u003e#35134\u003c/a\u003e, \u003ca href=\"https://github.com/josephsavona\"\u003e\u003ccode\u003e@​josephsavona\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/35147\"\u003e#35147\u003c/a\u003e, \u003ca href=\"https://github.com/jackpope\"\u003e\u003ccode\u003e@​jackpope\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/35214\"\u003e#35214\u003c/a\u003e, \u003ca href=\"https://github.com/chesnokov-tony\"\u003e\u003ccode\u003e@​chesnokov-tony\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/35419\"\u003e#35419\u003c/a\u003e, \u003ca href=\"https://github.com/jsleitor\"\u003e\u003ccode\u003e@​jsleitor\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/36107\"\u003e...\n\n_Description has been truncated_","html_url":"https://github.com/BrianJVarley/react-19-starter/pull/6","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/BrianJVarley%2Freact-19-starter/issues/6","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/6/packages"},{"uuid":"4466527722","node_id":"PR_kwDORyuJzM7chLIK","number":7,"state":"closed","title":"deps(deps): bump the all-dependencies group across 1 directory with 66 updates","user":"dependabot[bot]","labels":[],"assignees":[],"locked":false,"comments_count":2,"pull_request":true,"closed_at":"2026-05-25T05:16:20.000Z","author_association":null,"state_reason":null,"created_at":"2026-05-18T05:34:21.000Z","updated_at":"2026-05-25T05:16:22.000Z","time_to_close":603719,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"deps(deps): bump","group_name":"all-dependencies","update_count":66,"packages":[{"name":"@eslint-react/eslint-plugin","old_version":"2.13.0","new_version":"5.8.1","repository_url":"https://github.com/Rel1cx/eslint-react"},{"name":"@eslint/js","old_version":"9.39.2","new_version":"10.0.1","repository_url":"https://github.com/eslint/eslint"},{"name":"@typescript-eslint/eslint-plugin","old_version":"8.56.0","new_version":"8.59.3","repository_url":"https://github.com/typescript-eslint/typescript-eslint"},{"name":"@typescript-eslint/parser","old_version":"8.56.0","new_version":"8.59.3","repository_url":"https://github.com/typescript-eslint/typescript-eslint"},{"name":"eslint","old_version":"9.39.2","new_version":"10.4.0","repository_url":"https://github.com/eslint/eslint"},{"name":"eslint-plugin-react-hooks","old_version":"7.0.1","new_version":"7.1.1","repository_url":"https://github.com/facebook/react"},{"name":"globals","old_version":"17.3.0","new_version":"17.6.0","repository_url":"https://github.com/sindresorhus/globals"},{"name":"graphql","old_version":"16.12.0","new_version":"16.14.0","repository_url":"https://github.com/graphql/graphql-js"},{"name":"happy-dom","old_version":"20.6.2","new_version":"20.9.0","repository_url":"https://github.com/capricorn86/happy-dom"},{"name":"jiti","old_version":"2.6.1","new_version":"2.7.0","repository_url":"https://github.com/unjs/jiti"},{"name":"lint-staged","old_version":"16.2.7","new_version":"17.0.5","repository_url":"https://github.com/lint-staged/lint-staged"},{"name":"mermaid","old_version":"11.12.3","new_version":"11.15.0","repository_url":"https://github.com/mermaid-js/mermaid"},{"name":"prettier","old_version":"3.8.1","new_version":"3.8.3","repository_url":"https://github.com/prettier/prettier"},{"name":"react","old_version":"19.2.4","new_version":"19.2.6","repository_url":"https://github.com/facebook/react"},{"name":"typescript","old_version":"5.9.3","new_version":"6.0.3","repository_url":"https://github.com/microsoft/TypeScript"},{"name":"typescript-eslint","old_version":"8.56.0","new_version":"8.59.3","repository_url":"https://github.com/typescript-eslint/typescript-eslint"},{"name":"typescript-language-server","old_version":"5.1.3","new_version":"5.2.0","repository_url":"https://github.com/typescript-language-server/typescript-language-server"},{"name":"vite","old_version":"7.3.1","new_version":"8.0.13","repository_url":"https://github.com/vitejs/vite"},{"name":"vitepress","old_version":"2.0.0-alpha.16","new_version":"2.0.0-alpha.17","repository_url":"https://github.com/vuejs/vitepress"},{"name":"vitepress-plugin-llms","old_version":"1.11.0","new_version":"1.12.2","repository_url":"https://github.com/okineadev/vitepress-plugin-llms"},{"name":"vitest","old_version":"4.0.18","new_version":"4.1.6","repository_url":"https://github.com/vitest-dev/vitest"},{"name":"wrangler","old_version":"4.66.0","new_version":"4.92.0","repository_url":"https://github.com/cloudflare/workers-sdk"},{"name":"@ai-sdk/openai","old_version":"3.0.29","new_version":"3.0.64","repository_url":"https://github.com/vercel/ai"},{"name":"@better-auth/passkey","old_version":"1.4.18","new_version":"1.6.11","repository_url":"https://github.com/better-auth/better-auth"},{"name":"@better-auth/stripe","old_version":"1.4.18","new_version":"1.6.11","repository_url":"https://github.com/better-auth/better-auth"},{"name":"@trpc/server","old_version":"11.10.0","new_version":"11.17.0","repository_url":"https://github.com/trpc/trpc"},{"name":"ai","old_version":"6.0.91","new_version":"6.0.184","repository_url":"https://github.com/vercel/ai"},{"name":"better-auth","old_version":"1.4.18","new_version":"1.6.11","repository_url":"https://github.com/better-auth/better-auth"},{"name":"drizzle-orm","old_version":"0.45.1","new_version":"0.45.2","repository_url":"https://github.com/drizzle-team/drizzle-orm"},{"name":"postgres","old_version":"3.4.8","new_version":"3.4.9","repository_url":"https://github.com/porsager/postgres"},{"name":"resend","old_version":"6.9.2","new_version":"6.12.3","repository_url":"https://github.com/resend/resend-node"},{"name":"stripe","old_version":"20.3.1","new_version":"22.1.1","repository_url":"https://github.com/stripe/stripe-node"},{"name":"@cloudflare/workers-types","old_version":"4.20260218.0","new_version":"4.20260518.1","repository_url":"https://github.com/cloudflare/workerd"},{"name":"@types/bun","old_version":"1.3.9","new_version":"1.3.14","repository_url":"https://github.com/DefinitelyTyped/DefinitelyTyped"},{"name":"hono","old_version":"4.11.10","new_version":"4.12.19","repository_url":"https://github.com/honojs/hono"},{"name":"@tanstack/react-query","old_version":"5.90.21","new_version":"5.100.10","repository_url":"https://github.com/TanStack/query"},{"name":"@tanstack/react-router","old_version":"1.161.1","new_version":"1.170.4","repository_url":"https://github.com/TanStack/router"},{"name":"@trpc/client","old_version":"11.10.0","new_version":"11.17.0","repository_url":"https://github.com/trpc/trpc"},{"name":"@trpc/tanstack-react-query","old_version":"11.10.0","new_version":"11.17.0","repository_url":"https://github.com/trpc/trpc"},{"name":"jotai","old_version":"2.17.1","new_version":"2.20.0","repository_url":"https://github.com/pmndrs/jotai"},{"name":"jotai-effect","old_version":"2.2.3","new_version":"2.3.1","repository_url":"https://github.com/jotaijs/jotai-effect"},{"name":"lucide-react","old_version":"0.574.0","new_version":"1.16.0","repository_url":"https://github.com/lucide-icons/lucide"},{"name":"react-dom","old_version":"19.2.4","new_version":"19.2.6","repository_url":"https://github.com/facebook/react"},{"name":"tailwind-merge","old_version":"3.4.1","new_version":"3.6.0","repository_url":"https://github.com/dcastil/tailwind-merge"},{"name":"@tailwindcss/postcss","old_version":"4.2.0","new_version":"4.3.0","repository_url":"https://github.com/tailwindlabs/tailwindcss"},{"name":"@tanstack/react-query-devtools","old_version":"5.91.3","new_version":"5.100.10","repository_url":"https://github.com/TanStack/query"},{"name":"@tanstack/react-router-devtools","old_version":"1.161.1","new_version":"1.167.0","repository_url":"https://github.com/TanStack/router"},{"name":"@tanstack/router-plugin","old_version":"1.161.1","new_version":"1.168.6","repository_url":"https://github.com/TanStack/router"},{"name":"@types/node","old_version":"25.2.3","new_version":"25.8.0","repository_url":"https://github.com/DefinitelyTyped/DefinitelyTyped"},{"name":"@vitejs/plugin-react","old_version":"5.1.4","new_version":"6.0.2","repository_url":"https://github.com/vitejs/vite-plugin-react"},{"name":"@vitejs/plugin-react-swc","old_version":"4.2.3","new_version":"4.3.1","repository_url":"https://github.com/vitejs/vite-plugin-react"},{"name":"autoprefixer","old_version":"10.4.24","new_version":"10.5.0","repository_url":"https://github.com/postcss/autoprefixer"},{"name":"globby","old_version":"16.1.1","new_version":"16.2.0","repository_url":"https://github.com/sindresorhus/globby"},{"name":"@react-email/components","old_version":"1.0.8","new_version":"1.0.12","repository_url":"https://github.com/resend/react-email"},{"name":"@react-email/render","old_version":"2.0.4","new_version":"2.0.8","repository_url":"https://github.com/resend/react-email"},{"name":"@react-email/preview-server","old_version":"5.2.8","new_version":"5.2.10","repository_url":"https://github.com/resend/react-email"},{"name":"react-email","old_version":"5.2.8","new_version":"6.1.4","repository_url":"https://github.com/resend/react-email"},{"name":"@astrojs/react","old_version":"4.4.2","new_version":"5.0.5","repository_url":"https://github.com/withastro/astro"},{"name":"astro","old_version":"5.17.2","new_version":"6.3.3","repository_url":"https://github.com/withastro/astro"},{"name":"dotenv","old_version":"17.3.1","new_version":"17.4.2","repository_url":"https://github.com/motdotla/dotenv"},{"name":"drizzle-kit","old_version":"0.31.9","new_version":"0.31.10","repository_url":"https://github.com/drizzle-team/drizzle-orm"},{"name":"@modelcontextprotocol/sdk","old_version":"1.26.0","new_version":"1.29.0","repository_url":"https://github.com/modelcontextprotocol/typescript-sdk"},{"name":"got","old_version":"14.6.6","new_version":"15.0.5","repository_url":"https://github.com/sindresorhus/got"}],"path":null,"ecosystem":"npm"},"body":"Bumps the all-dependencies group with 63 updates in the / directory:\n\n| Package | From | To |\n| --- | --- | --- |\n| [@eslint-react/eslint-plugin](https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin) | `2.13.0` | `5.8.1` |\n| [@eslint/js](https://github.com/eslint/eslint/tree/HEAD/packages/js) | `9.39.2` | `10.0.1` |\n| [@typescript-eslint/eslint-plugin](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin) | `8.56.0` | `8.59.3` |\n| [@typescript-eslint/parser](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/parser) | `8.56.0` | `8.59.3` |\n| [eslint](https://github.com/eslint/eslint) | `9.39.2` | `10.4.0` |\n| [eslint-plugin-react-hooks](https://github.com/facebook/react/tree/HEAD/packages/eslint-plugin-react-hooks) | `7.0.1` | `7.1.1` |\n| [globals](https://github.com/sindresorhus/globals) | `17.3.0` | `17.6.0` |\n| [graphql](https://github.com/graphql/graphql-js) | `16.12.0` | `16.14.0` |\n| [happy-dom](https://github.com/capricorn86/happy-dom) | `20.6.2` | `20.9.0` |\n| [jiti](https://github.com/unjs/jiti) | `2.6.1` | `2.7.0` |\n| [lint-staged](https://github.com/lint-staged/lint-staged) | `16.2.7` | `17.0.5` |\n| [mermaid](https://github.com/mermaid-js/mermaid) | `11.12.3` | `11.15.0` |\n| [prettier](https://github.com/prettier/prettier) | `3.8.1` | `3.8.3` |\n| [react](https://github.com/facebook/react/tree/HEAD/packages/react) | `19.2.4` | `19.2.6` |\n| [typescript](https://github.com/microsoft/TypeScript) | `5.9.3` | `6.0.3` |\n| [typescript-eslint](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/typescript-eslint) | `8.56.0` | `8.59.3` |\n| [typescript-language-server](https://github.com/typescript-language-server/typescript-language-server) | `5.1.3` | `5.2.0` |\n| [vite](https://github.com/vitejs/vite/tree/HEAD/packages/vite) | `7.3.1` | `8.0.13` |\n| [vitepress](https://github.com/vuejs/vitepress) | `2.0.0-alpha.16` | `2.0.0-alpha.17` |\n| [vitepress-plugin-llms](https://github.com/okineadev/vitepress-plugin-llms) | `1.11.0` | `1.12.2` |\n| [vitest](https://github.com/vitest-dev/vitest/tree/HEAD/packages/vitest) | `4.0.18` | `4.1.6` |\n| [wrangler](https://github.com/cloudflare/workers-sdk/tree/HEAD/packages/wrangler) | `4.66.0` | `4.92.0` |\n| [@ai-sdk/openai](https://github.com/vercel/ai/tree/HEAD/packages/openai) | `3.0.29` | `3.0.64` |\n| [@better-auth/passkey](https://github.com/better-auth/better-auth/tree/HEAD/packages/passkey) | `1.4.18` | `1.6.11` |\n| [@better-auth/stripe](https://github.com/better-auth/better-auth/tree/HEAD/packages/stripe) | `1.4.18` | `1.6.11` |\n| [@trpc/server](https://github.com/trpc/trpc/tree/HEAD/packages/server) | `11.10.0` | `11.17.0` |\n| [ai](https://github.com/vercel/ai/tree/HEAD/packages/ai) | `6.0.91` | `6.0.184` |\n| [better-auth](https://github.com/better-auth/better-auth/tree/HEAD/packages/better-auth) | `1.4.18` | `1.6.11` |\n| [drizzle-orm](https://github.com/drizzle-team/drizzle-orm) | `0.45.1` | `0.45.2` |\n| [postgres](https://github.com/porsager/postgres) | `3.4.8` | `3.4.9` |\n| [resend](https://github.com/resend/resend-node) | `6.9.2` | `6.12.3` |\n| [stripe](https://github.com/stripe/stripe-node) | `20.3.1` | `22.1.1` |\n| [@cloudflare/workers-types](https://github.com/cloudflare/workerd) | `4.20260218.0` | `4.20260518.1` |\n| [@types/bun](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/bun) | `1.3.9` | `1.3.14` |\n| [hono](https://github.com/honojs/hono) | `4.11.10` | `4.12.19` |\n| [@tanstack/react-query](https://github.com/TanStack/query/tree/HEAD/packages/react-query) | `5.90.21` | `5.100.10` |\n| [@tanstack/react-router](https://github.com/TanStack/router/tree/HEAD/packages/react-router) | `1.161.1` | `1.170.4` |\n| [@trpc/client](https://github.com/trpc/trpc/tree/HEAD/packages/client) | `11.10.0` | `11.17.0` |\n| [@trpc/tanstack-react-query](https://github.com/trpc/trpc/tree/HEAD/packages/tanstack-react-query) | `11.10.0` | `11.17.0` |\n| [jotai](https://github.com/pmndrs/jotai) | `2.17.1` | `2.20.0` |\n| [jotai-effect](https://github.com/jotaijs/jotai-effect) | `2.2.3` | `2.3.1` |\n| [lucide-react](https://github.com/lucide-icons/lucide/tree/HEAD/packages/lucide-react) | `0.574.0` | `1.16.0` |\n| [react-dom](https://github.com/facebook/react/tree/HEAD/packages/react-dom) | `19.2.4` | `19.2.6` |\n| [tailwind-merge](https://github.com/dcastil/tailwind-merge) | `3.4.1` | `3.6.0` |\n| [@tailwindcss/postcss](https://github.com/tailwindlabs/tailwindcss/tree/HEAD/packages/@tailwindcss-postcss) | `4.2.0` | `4.3.0` |\n| [@tanstack/react-query-devtools](https://github.com/TanStack/query/tree/HEAD/packages/react-query-devtools) | `5.91.3` | `5.100.10` |\n| [@tanstack/react-router-devtools](https://github.com/TanStack/router/tree/HEAD/packages/react-router-devtools) | `1.161.1` | `1.167.0` |\n| [@tanstack/router-plugin](https://github.com/TanStack/router/tree/HEAD/packages/router-plugin) | `1.161.1` | `1.168.6` |\n| [@types/node](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/node) | `25.2.3` | `25.8.0` |\n| [@vitejs/plugin-react](https://github.com/vitejs/vite-plugin-react/tree/HEAD/packages/plugin-react) | `5.1.4` | `6.0.2` |\n| [@vitejs/plugin-react-swc](https://github.com/vitejs/vite-plugin-react/tree/HEAD/packages/plugin-react-swc) | `4.2.3` | `4.3.1` |\n| [autoprefixer](https://github.com/postcss/autoprefixer) | `10.4.24` | `10.5.0` |\n| [globby](https://github.com/sindresorhus/globby) | `16.1.1` | `16.2.0` |\n| [@react-email/components](https://github.com/resend/react-email/tree/HEAD/packages/components) | `1.0.8` | `1.0.12` |\n| [@react-email/render](https://github.com/resend/react-email/tree/HEAD/packages/render) | `2.0.4` | `2.0.8` |\n| [@react-email/preview-server](https://github.com/resend/react-email/tree/HEAD/packages/preview-server) | `5.2.8` | `5.2.10` |\n| [react-email](https://github.com/resend/react-email/tree/HEAD/packages/react-email) | `5.2.8` | `6.1.4` |\n| [@astrojs/react](https://github.com/withastro/astro/tree/HEAD/packages/integrations/react) | `4.4.2` | `5.0.5` |\n| [astro](https://github.com/withastro/astro/tree/HEAD/packages/astro) | `5.17.2` | `6.3.3` |\n| [dotenv](https://github.com/motdotla/dotenv) | `17.3.1` | `17.4.2` |\n| [drizzle-kit](https://github.com/drizzle-team/drizzle-orm) | `0.31.9` | `0.31.10` |\n| [@modelcontextprotocol/sdk](https://github.com/modelcontextprotocol/typescript-sdk) | `1.26.0` | `1.29.0` |\n| [got](https://github.com/sindresorhus/got) | `14.6.6` | `15.0.5` |\n\n\nUpdates `@eslint-react/eslint-plugin` from 2.13.0 to 5.8.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/Rel1cx/eslint-react/releases\"\u003e@​eslint-react/eslint-plugin's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev5.8.1 (2026-05-18)\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003ch3\u003e📝 Documentation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eRestructured rule documentation across all plugins from the \u003ccode\u003eCommon Violations / Invalid / Valid\u003c/code\u003e format to the new \u003ccode\u003eExamples / scenario-based / Troubleshooting / Further Reading\u003c/code\u003e format (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1784\"\u003e#1784\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eUpdated README tagline and description, removed the Benchmark section, and fixed migration guide links (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1783\"\u003e#1783\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eUpdated website recipe docs, FAQ, and third-party plugins page (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1783\"\u003e#1783\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🏗️ Internal\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpdated \u003ccode\u003escripts/scaffold-rule.ts\u003c/code\u003e and the rule request issue template to match the new documentation structure (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1782\"\u003e#1782\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/Rel1cx/eslint-react/compare/v5.8.0...v5.8.1\"\u003ehttps://github.com/Rel1cx/eslint-react/compare/v5.8.0...v5.8.1\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev5.8.0 (2026-05-17)\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003ch3\u003e🪄 Improvements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003e\u003ccode\u003ereact-jsx/no-children-prop\u003c/code\u003e\u003c/strong\u003e, \u003cstrong\u003e\u003ccode\u003ereact-jsx/no-children-prop-with-children\u003c/code\u003e\u003c/strong\u003e: Added support for \u003ccode\u003ecreateElement\u003c/code\u003e calls in addition to JSX elements (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1780\"\u003e#1780\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e📝 Documentation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdded \u003ccode\u003eeslint-plugin-perfectionist\u003c/code\u003e to the third-party plugins documentation page (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1778\"\u003e#1778\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🏗️ Internal\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eBumped \u003ccode\u003eimport-integrity-lint\u003c/code\u003e to 1.0.1.\u003c/li\u003e\n\u003cli\u003eFixed multiple versions of \u003ccode\u003etypescript-eslint\u003c/code\u003e and \u003ccode\u003eimport-integrity-lint\u003c/code\u003e in the workspace (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1776\"\u003e#1776\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eIncreased pnpm \u003ccode\u003eminimumReleaseAge\u003c/code\u003e to 3 days and updated lockfile (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1779\"\u003e#1779\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eRemoved \u003ccode\u003e.repos\u003c/code\u003e directory references from config files (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1773\"\u003e#1773\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eRemoved obsolete maintenance scripts (\u003ccode\u003ecreate-spec-alignment-issues.sh\u003c/code\u003e, \u003ccode\u003emigrate-labels.sh\u003c/code\u003e) (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1777\"\u003e#1777\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eReplaced \u003ccode\u003eeslint-plugin-fast-import\u003c/code\u003e with \u003ccode\u003eimport-integrity-lint\u003c/code\u003e (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1774\"\u003e#1774\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eSimplified the publish CI workflow by skipping install scripts and removing the lint step (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1775\"\u003e#1775\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/Rel1cx/eslint-react/compare/v5.7.10...v5.8.0\"\u003ehttps://github.com/Rel1cx/eslint-react/compare/v5.7.10...v5.8.0\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev5.7.10 (2026-05-16)\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003ch3\u003e🐞 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003e\u003ccode\u003ereact-x/no-leaked-conditional-rendering\u003c/code\u003e\u003c/strong\u003e, \u003cstrong\u003e\u003ccode\u003ereact-x/set-state-in-effect\u003c/code\u003e\u003c/strong\u003e: Added cycle detection to prevent stack overflow in recursive function analysis (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1769\"\u003e#1769\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e📝 Documentation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdded \u003ccode\u003ethird-party-plugins.mdx\u003c/code\u003e documentation page.\u003c/li\u003e\n\u003cli\u003eAdded spec diff and compiler test fixtures for \u003ccode\u003ereact-x/globals\u003c/code\u003e rule.\u003c/li\u003e\n\u003cli\u003eUpdated ESLint Stylistic link to rules anchor.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/Rel1cx/eslint-react/blob/main/CHANGELOG.md\"\u003e@​eslint-react/eslint-plugin's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev5.8.1 (2026-05-18)\u003c/h2\u003e\n\u003ch3\u003e📝 Documentation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eRestructured rule documentation across all plugins (\u003ccode\u003eeslint-plugin-react-x\u003c/code\u003e, \u003ccode\u003eeslint-plugin-react-dom\u003c/code\u003e, \u003ccode\u003eeslint-plugin-react-jsx\u003c/code\u003e, \u003ccode\u003eeslint-plugin-react-web-api\u003c/code\u003e, \u003ccode\u003eeslint-plugin-react-naming-convention\u003c/code\u003e, \u003ccode\u003eeslint-plugin-react-debug\u003c/code\u003e, \u003ccode\u003eeslint-plugin-react-rsc\u003c/code\u003e) from the \u003ccode\u003eCommon Violations / Invalid / Valid\u003c/code\u003e format to the new \u003ccode\u003eExamples / scenario-based / Troubleshooting / Further Reading\u003c/code\u003e format (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1784\"\u003e#1784\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eUpdated README tagline and description, removed the Benchmark section, and fixed migration guide links (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1783\"\u003e#1783\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eUpdated website recipe docs, FAQ, and third-party plugins page (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1783\"\u003e#1783\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🏗️ Internal\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpdated \u003ccode\u003escripts/scaffold-rule.ts\u003c/code\u003e and the rule request issue template to match the new documentation structure (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1782\"\u003e#1782\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/Rel1cx/eslint-react/compare/v5.8.0...v5.8.1\"\u003ehttps://github.com/Rel1cx/eslint-react/compare/v5.8.0...v5.8.1\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev5.8.0 (2026-05-17)\u003c/h2\u003e\n\u003ch3\u003e🪄 Improvements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003e\u003ccode\u003ereact-jsx/no-children-prop\u003c/code\u003e\u003c/strong\u003e, \u003cstrong\u003e\u003ccode\u003ereact-jsx/no-children-prop-with-children\u003c/code\u003e\u003c/strong\u003e: Added support for \u003ccode\u003ecreateElement\u003c/code\u003e calls in addition to JSX elements (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1780\"\u003e#1780\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e📝 Documentation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdded \u003ccode\u003eeslint-plugin-perfectionist\u003c/code\u003e to the third-party plugins documentation page (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1778\"\u003e#1778\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🏗️ Internal\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eBumped \u003ccode\u003eimport-integrity-lint\u003c/code\u003e to 1.0.1.\u003c/li\u003e\n\u003cli\u003eFixed multiple versions of \u003ccode\u003etypescript-eslint\u003c/code\u003e and \u003ccode\u003eimport-integrity-lint\u003c/code\u003e in the workspace (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1776\"\u003e#1776\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eIncreased pnpm \u003ccode\u003eminimumReleaseAge\u003c/code\u003e to 3 days and updated lockfile (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1779\"\u003e#1779\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eRemoved \u003ccode\u003e.repos\u003c/code\u003e directory references from config files (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1773\"\u003e#1773\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eRemoved obsolete maintenance scripts (\u003ccode\u003ecreate-spec-alignment-issues.sh\u003c/code\u003e, \u003ccode\u003emigrate-labels.sh\u003c/code\u003e) (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1777\"\u003e#1777\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eReplaced \u003ccode\u003eeslint-plugin-fast-import\u003c/code\u003e with \u003ccode\u003eimport-integrity-lint\u003c/code\u003e (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1774\"\u003e#1774\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eSimplified the publish CI workflow by skipping install scripts and removing the lint step (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1775\"\u003e#1775\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/Rel1cx/eslint-react/compare/v5.7.10...v5.8.0\"\u003ehttps://github.com/Rel1cx/eslint-react/compare/v5.7.10...v5.8.0\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev5.7.10 (2026-05-16)\u003c/h2\u003e\n\u003ch3\u003e🐞 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003e\u003ccode\u003ereact-x/no-leaked-conditional-rendering\u003c/code\u003e\u003c/strong\u003e, \u003cstrong\u003e\u003ccode\u003ereact-x/set-state-in-effect\u003c/code\u003e\u003c/strong\u003e: Added cycle detection to prevent stack overflow in recursive function analysis (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1769\"\u003e#1769\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e📝 Documentation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdded \u003ccode\u003ethird-party-plugins.mdx\u003c/code\u003e documentation page.\u003c/li\u003e\n\u003cli\u003eAdded spec diff and compiler test fixtures for \u003ccode\u003ereact-x/globals\u003c/code\u003e rule.\u003c/li\u003e\n\u003cli\u003eUpdated ESLint Stylistic link to rules anchor.\u003c/li\u003e\n\u003cli\u003eUpdated community projects (added Obsidian Copilot).\u003c/li\u003e\n\u003cli\u003eAdded redirects and simplified removed docs page.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/94549a1e3496d2ef3dff60b6332f17656469b2f0\"\u003e\u003ccode\u003e94549a1\u003c/code\u003e\u003c/a\u003e release: 5.8.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/2821bb11803f5ef8c8021d3deed84183ce136a24\"\u003e\u003ccode\u003e2821bb1\u003c/code\u003e\u003c/a\u003e docs: restructure rule documentation to new Examples-based format (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1784\"\u003e#1784\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/4317c311d29c5d0c9aa8b48d335172f60b4d4487\"\u003e\u003ccode\u003e4317c31\u003c/code\u003e\u003c/a\u003e release: 5.8.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/e060debd13fc873a83ed9ac143d559bf5e0c3fac\"\u003e\u003ccode\u003ee060deb\u003c/code\u003e\u003c/a\u003e release: 5.7.10\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/752585a5125e2d53c7ced0df2e58fe8960d3cbd2\"\u003e\u003ccode\u003e752585a\u003c/code\u003e\u003c/a\u003e release: 5.7.10-beta.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/24a9443a01f832ba3b960a3f67fbf38a3de490ca\"\u003e\u003ccode\u003e24a9443\u003c/code\u003e\u003c/a\u003e release: 5.7.10-next.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/50d7dc0bcfc01cfc9bf9d5190db218fb9719a869\"\u003e\u003ccode\u003e50d7dc0\u003c/code\u003e\u003c/a\u003e release: 5.7.8\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/be9e7865cac798b3111840ced8c81d38ec660f4d\"\u003e\u003ccode\u003ebe9e786\u003c/code\u003e\u003c/a\u003e release: 5.7.8-beta.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/e14aabca9a1ed01e08fdd3dd55627cb05f9c1c1f\"\u003e\u003ccode\u003ee14aabc\u003c/code\u003e\u003c/a\u003e release: 5.7.8-next.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/7be40890022163dfa1b8a40b5a1ac25354d2e7db\"\u003e\u003ccode\u003e7be4089\u003c/code\u003e\u003c/a\u003e release: 5.7.7\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/Rel1cx/eslint-react/commits/v5.8.1/plugins/eslint-plugin\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@eslint/js` from 9.39.2 to 10.0.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/eslint/eslint/releases\"\u003e@​eslint/js's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev10.0.1\u003c/h2\u003e\n\u003ch2\u003eBug Fixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/c87d5bded54c5cf491eb04c24c9d09bbbd42c23e\"\u003e\u003ccode\u003ec87d5bd\u003c/code\u003e\u003c/a\u003e fix: update eslint (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20531\"\u003e#20531\u003c/a\u003e) (renovate[bot])\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/d84100115c14691691058f00779c94e74fca946a\"\u003e\u003ccode\u003ed841001\u003c/code\u003e\u003c/a\u003e fix: update \u003ccode\u003eminimatch\u003c/code\u003e to \u003ccode\u003e10.2.1\u003c/code\u003e to address security vulnerabilities (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20519\"\u003e#20519\u003c/a\u003e) (루밀LuMir)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/04c21475b3004904948f02049f2888b401d82c78\"\u003e\u003ccode\u003e04c2147\u003c/code\u003e\u003c/a\u003e fix: update error message for unused suppressions (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20496\"\u003e#20496\u003c/a\u003e) (fnx)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/38b089c1726feac0e31a31d47941bd99e29ce003\"\u003e\u003ccode\u003e38b089c\u003c/code\u003e\u003c/a\u003e fix: update dependency \u003ccode\u003e@​eslint/config-array\u003c/code\u003e to ^0.23.1 (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20484\"\u003e#20484\u003c/a\u003e) (renovate[bot])\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eDocumentation\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/5b3dbce50a1404a9f118afe810cefeee79388a2a\"\u003e\u003ccode\u003e5b3dbce\u003c/code\u003e\u003c/a\u003e docs: add AI acknowledgement section to templates (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20431\"\u003e#20431\u003c/a\u003e) (루밀LuMir)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/6f23076037d5879f20fb3be2ef094293b1e8d38c\"\u003e\u003ccode\u003e6f23076\u003c/code\u003e\u003c/a\u003e docs: toggle nav in no-JS mode (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20476\"\u003e#20476\u003c/a\u003e) (Tanuj Kanti)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/b69cfb32a16c5d5e9986390d484fae1d21e406f9\"\u003e\u003ccode\u003eb69cfb3\u003c/code\u003e\u003c/a\u003e docs: Update README (GitHub Actions Bot)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eChores\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/e5c281ffd038a3a7a3e5364db0b9378e0ad83020\"\u003e\u003ccode\u003ee5c281f\u003c/code\u003e\u003c/a\u003e chore: updates for v9.39.3 release (Jenkins)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/8c3832adb77cd993b4a24891900d5eeaaf093cdc\"\u003e\u003ccode\u003e8c3832a\u003c/code\u003e\u003c/a\u003e chore: update \u003ccode\u003e@​typescript-eslint/parser\u003c/code\u003e to ^8.56.0 (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20514\"\u003e#20514\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/8330d238ae6adb68bb6a1c9381e38cfedd990d94\"\u003e\u003ccode\u003e8330d23\u003c/code\u003e\u003c/a\u003e test: add tests for config-api (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20493\"\u003e#20493\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/37d6e91e88fa6a2ca6d8726679096acff21ba6cc\"\u003e\u003ccode\u003e37d6e91\u003c/code\u003e\u003c/a\u003e chore: remove eslint v10 prereleases from eslint-config-eslint deps (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20494\"\u003e#20494\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/da7cd0e79197ad16e17052eef99df141de6dbfb1\"\u003e\u003ccode\u003eda7cd0e\u003c/code\u003e\u003c/a\u003e refactor: cleanup error message templates (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20479\"\u003e#20479\u003c/a\u003e) (Francesco Trotta)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/84fb885d49ac810e79a9491276b4828b53d913e5\"\u003e\u003ccode\u003e84fb885\u003c/code\u003e\u003c/a\u003e chore: package.json update for \u003ccode\u003e@​eslint/js\u003c/code\u003e release (Jenkins)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/1f667344b57c4c09b548d94bcfac1f91b6e5c63d\"\u003e\u003ccode\u003e1f66734\u003c/code\u003e\u003c/a\u003e chore: add \u003ccode\u003eeslint\u003c/code\u003e to \u003ccode\u003epeerDependencies\u003c/code\u003e of \u003ccode\u003e@eslint/js\u003c/code\u003e (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20467\"\u003e#20467\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev10.0.0\u003c/h2\u003e\n\u003ch2\u003eBreaking Changes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/f9e54f43a5e497cdfa179338b431093245cb787b\"\u003e\u003ccode\u003ef9e54f4\u003c/code\u003e\u003c/a\u003e feat!: estimate rule-tester failure location (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20420\"\u003e#20420\u003c/a\u003e) (ST-DDT)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/a176319d8ade1a7d9b2d7fb8f038f55a2662325f\"\u003e\u003ccode\u003ea176319\u003c/code\u003e\u003c/a\u003e feat!: replace \u003ccode\u003echalk\u003c/code\u003e with \u003ccode\u003estyleText\u003c/code\u003e and add \u003ccode\u003ecolor\u003c/code\u003e to \u003ccode\u003eResultsMeta\u003c/code\u003e (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20227\"\u003e#20227\u003c/a\u003e) (루밀LuMir)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/c7046e6c1e03c4ca0eee4888a1f2eba4c6454f84\"\u003e\u003ccode\u003ec7046e6\u003c/code\u003e\u003c/a\u003e feat!: enable JSX reference tracking (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20152\"\u003e#20152\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/fa31a608901684fbcd9906d1907e66561d16e5aa\"\u003e\u003ccode\u003efa31a60\u003c/code\u003e\u003c/a\u003e feat!: add \u003ccode\u003ename\u003c/code\u003e to configs (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20015\"\u003e#20015\u003c/a\u003e) (Kirk Waiblinger)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/3383e7ec9028166cafc8ea7986c2f7498d0049f0\"\u003e\u003ccode\u003e3383e7e\u003c/code\u003e\u003c/a\u003e fix!: remove deprecated \u003ccode\u003eSourceCode\u003c/code\u003e methods (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20137\"\u003e#20137\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/501abd0e916a35554c58b7c0365537f1fa3880ce\"\u003e\u003ccode\u003e501abd0\u003c/code\u003e\u003c/a\u003e feat!: update dependency minimatch to v10 (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20246\"\u003e#20246\u003c/a\u003e) (renovate[bot])\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/ca4d3b40085de47561f89656a2207d09946ed45e\"\u003e\u003ccode\u003eca4d3b4\u003c/code\u003e\u003c/a\u003e fix!: stricter rule tester assertions for valid test cases (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20125\"\u003e#20125\u003c/a\u003e) (唯然)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/96512a66c86402fb0538cdcb6cd30b9073f6bf3b\"\u003e\u003ccode\u003e96512a6\u003c/code\u003e\u003c/a\u003e fix!: Remove deprecated rule context methods (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20086\"\u003e#20086\u003c/a\u003e) (Nicholas C. Zakas)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/c69fdacdb2e886b9d965568a397aa8220db3fe90\"\u003e\u003ccode\u003ec69fdac\u003c/code\u003e\u003c/a\u003e feat!: remove eslintrc support (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20037\"\u003e#20037\u003c/a\u003e) (Francesco Trotta)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/208b5cc34a8374ff81412b5bec2e0800eebfbd04\"\u003e\u003ccode\u003e208b5cc\u003c/code\u003e\u003c/a\u003e feat!: Use \u003ccode\u003eScopeManager#addGlobals()\u003c/code\u003e (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20132\"\u003e#20132\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/a2ee188ea7a38a0c6155f3d39e2b00e1d0f36e14\"\u003e\u003ccode\u003ea2ee188\u003c/code\u003e\u003c/a\u003e fix!: add \u003ccode\u003euniqueItems: true\u003c/code\u003e in \u003ccode\u003eno-invalid-regexp\u003c/code\u003e option (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20155\"\u003e#20155\u003c/a\u003e) (Tanuj Kanti)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/a89059dbf2832d417dd493ee81483227ec44e4ab\"\u003e\u003ccode\u003ea89059d\u003c/code\u003e\u003c/a\u003e feat!: Program range span entire source text (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20133\"\u003e#20133\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/39a6424373d915fa9de0d7b0caba9a4dc3da9b53\"\u003e\u003ccode\u003e39a6424\u003c/code\u003e\u003c/a\u003e fix!: assert 'text' is a string across all RuleFixer methods (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20082\"\u003e#20082\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/f28fbf846244e043c92b355b224d121b06140b44\"\u003e\u003ccode\u003ef28fbf8\u003c/code\u003e\u003c/a\u003e fix!: Deprecate \u003ccode\u003e\u0026quot;always\u0026quot;\u003c/code\u003e and \u003ccode\u003e\u0026quot;as-needed\u0026quot;\u003c/code\u003e options of the \u003ccode\u003eradix\u003c/code\u003e rule (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20223\"\u003e#20223\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/aa3fb2b233e929b37220be940575f42c280e0b98\"\u003e\u003ccode\u003eaa3fb2b\u003c/code\u003e\u003c/a\u003e fix!: tighten \u003ccode\u003efunc-names\u003c/code\u003e schema (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20119\"\u003e#20119\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/f6c0ed0311dcfee853367d5068c765d066e6b756\"\u003e\u003ccode\u003ef6c0ed0\u003c/code\u003e\u003c/a\u003e feat!: report \u003ccode\u003eeslint-env\u003c/code\u003e comments as errors (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20128\"\u003e#20128\u003c/a\u003e) (Francesco Trotta)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/4bf739fb533e59f7f0a66b65f7bc80be0f37d8db\"\u003e\u003ccode\u003e4bf739f\u003c/code\u003e\u003c/a\u003e fix!: remove deprecated \u003ccode\u003eLintMessage#nodeType\u003c/code\u003e and \u003ccode\u003eTestCaseError#type\u003c/code\u003e (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20096\"\u003e#20096\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/523c076866400670fb2192a3f55dbf7ad3469247\"\u003e\u003ccode\u003e523c076\u003c/code\u003e\u003c/a\u003e feat!: drop support for jiti \u0026lt; 2.2.0 (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20016\"\u003e#20016\u003c/a\u003e) (michael faith)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/454a292c95f34dad232411ddac06408e6383bb64\"\u003e\u003ccode\u003e454a292\u003c/code\u003e\u003c/a\u003e feat!: update \u003ccode\u003eeslint:recommended\u003c/code\u003e configuration (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20210\"\u003e#20210\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/4f880ee02992e1bf0e96ebaba679985e2d1295f1\"\u003e\u003ccode\u003e4f880ee\u003c/code\u003e\u003c/a\u003e feat!: remove \u003ccode\u003ev10_*\u003c/code\u003e and inactive \u003ccode\u003eunstable_*\u003c/code\u003e flags (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20225\"\u003e#20225\u003c/a\u003e) (sethamus)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/f18115c363a4ac7671a4c7f30ee13d57ebba330f\"\u003e\u003ccode\u003ef18115c\u003c/code\u003e\u003c/a\u003e feat!: \u003ccode\u003eno-shadow-restricted-names\u003c/code\u003e report \u003ccode\u003eglobalThis\u003c/code\u003e by default (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20027\"\u003e#20027\u003c/a\u003e) (sethamus)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/c6358c31fbd3937b92d89be2618ffdf5a774604e\"\u003e\u003ccode\u003ec6358c3\u003c/code\u003e\u003c/a\u003e feat!: Require Node.js \u003ccode\u003e^20.19.0 || ^22.13.0 || \u0026gt;=24\u003c/code\u003e (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20160\"\u003e#20160\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eFeatures\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/bff9091927811497dbf066b0e3b85ecb37d43822\"\u003e\u003ccode\u003ebff9091\u003c/code\u003e\u003c/a\u003e feat: handle \u003ccode\u003eArray.fromAsync\u003c/code\u003e in \u003ccode\u003earray-callback-return\u003c/code\u003e (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20457\"\u003e#20457\u003c/a\u003e) (Francesco Trotta)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/290c594bb50c439fb71bc75521ee5360daa8c222\"\u003e\u003ccode\u003e290c594\u003c/code\u003e\u003c/a\u003e feat: add \u003ccode\u003eself\u003c/code\u003e to \u003ccode\u003eno-implied-eval\u003c/code\u003e rule (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20468\"\u003e#20468\u003c/a\u003e) (sethamus)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/43677de07ebd6e14bfac40a46ad749ba783c45f2\"\u003e\u003ccode\u003e43677de\u003c/code\u003e\u003c/a\u003e feat: fix handling of function and class expression names in \u003ccode\u003eno-shadow\u003c/code\u003e (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20432\"\u003e#20432\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/84fb885d49ac810e79a9491276b4828b53d913e5\"\u003e\u003ccode\u003e84fb885\u003c/code\u003e\u003c/a\u003e chore: package.json update for \u003ccode\u003e@​eslint/js\u003c/code\u003e release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/1f667344b57c4c09b548d94bcfac1f91b6e5c63d\"\u003e\u003ccode\u003e1f66734\u003c/code\u003e\u003c/a\u003e chore: add \u003ccode\u003eeslint\u003c/code\u003e to \u003ccode\u003epeerDependencies\u003c/code\u003e of \u003ccode\u003e@eslint/js\u003c/code\u003e (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20467\"\u003e#20467\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/f3fbc2f60cbe2c718364feb8c3fc0452c0df3c56\"\u003e\u003ccode\u003ef3fbc2f\u003c/code\u003e\u003c/a\u003e chore: set \u003ccode\u003e@eslint/js\u003c/code\u003e version to 10.0.0 to skip releasing it (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20466\"\u003e#20466\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/b4b3127f8542c599ce2dea804b6582ebc40c993d\"\u003e\u003ccode\u003eb4b3127\u003c/code\u003e\u003c/a\u003e chore: package.json update for \u003ccode\u003e@​eslint/js\u003c/code\u003e release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/0b14059491d830a49b3577931f4f68fbcfce6be5\"\u003e\u003ccode\u003e0b14059\u003c/code\u003e\u003c/a\u003e chore: package.json update for \u003ccode\u003e@​eslint/js\u003c/code\u003e release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/fa31a608901684fbcd9906d1907e66561d16e5aa\"\u003e\u003ccode\u003efa31a60\u003c/code\u003e\u003c/a\u003e feat!: add \u003ccode\u003ename\u003c/code\u003e to configs (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20015\"\u003e#20015\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/1e2cad5f6fa47ed6ed89d2a29798dda926d50990\"\u003e\u003ccode\u003e1e2cad5\u003c/code\u003e\u003c/a\u003e chore: package.json update for \u003ccode\u003e@​eslint/js\u003c/code\u003e release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/454a292c95f34dad232411ddac06408e6383bb64\"\u003e\u003ccode\u003e454a292\u003c/code\u003e\u003c/a\u003e feat!: update \u003ccode\u003eeslint:recommended\u003c/code\u003e configuration (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20210\"\u003e#20210\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/c6358c31fbd3937b92d89be2618ffdf5a774604e\"\u003e\u003ccode\u003ec6358c3\u003c/code\u003e\u003c/a\u003e feat!: Require Node.js \u003ccode\u003e^20.19.0 || ^22.13.0 || \u0026gt;=24\u003c/code\u003e (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20160\"\u003e#20160\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/eslint/eslint/commits/v10.0.1/packages/js\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@typescript-eslint/eslint-plugin` from 8.56.0 to 8.59.3\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases\"\u003e@​typescript-eslint/eslint-plugin's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev8.59.3\u003c/h2\u003e\n\u003ch2\u003e8.59.3 (2026-05-11)\u003c/h2\u003e\n\u003cp\u003eThis was a version bump only, there were no code changes.\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.3\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003ev8.59.2\u003c/h2\u003e\n\u003ch2\u003e8.59.2 (2026-05-04)\u003c/h2\u003e\n\u003ch3\u003e🩹 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unsafe-type-assertion] handle crash on recursive template literal types (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12150\"\u003e#12150\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-deprecated] object destructuring values should be treated as declarations (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12292\"\u003e#12292\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003erule-tester:\u003c/strong\u003e add TypeScript as a peer dependency (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12288\"\u003e#12288\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e❤️ Thank You\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eDariusz Czajkowski\u003c/li\u003e\n\u003cli\u003eDima Barabash\u003c/li\u003e\n\u003cli\u003eKirk Waiblinger \u003ca href=\"https://github.com/kirkwaiblinger\"\u003e\u003ccode\u003e@​kirkwaiblinger\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.2\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003ev8.59.1\u003c/h2\u003e\n\u003ch2\u003e8.59.1 (2026-04-27)\u003c/h2\u003e\n\u003ch3\u003e🩹 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-type-assertion] fix crash \u0026quot;TypeError: checker.getTypeArguments is not a function\u0026quot; (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12246\"\u003e#12246\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-type-assertion] preserve index signatures in undefined unions (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12257\"\u003e#12257\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-type-assertion] preserve phantom type arguments in generic inference (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12269\"\u003e#12269\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-type-assertion] avoid false positive in logical assignment assertions (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12278\"\u003e#12278\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-type-arguments] handle instantiation expressions (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12220\"\u003e#12220\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-condition] treat void as nullish in no-unnecessary-condition (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12241\"\u003e#12241\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e❤️ Thank You\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eanasm266 \u003ca href=\"https://github.com/anasm266\"\u003e\u003ccode\u003e@​anasm266\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAnshika Jain \u003ca href=\"https://github.com/Anshikakalpana\"\u003e\u003ccode\u003e@​Anshikakalpana\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUlrich Stark\u003c/li\u003e\n\u003cli\u003eyugo innami \u003ca href=\"https://github.com/nami8824\"\u003e\u003ccode\u003e@​nami8824\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.1\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/CHANGELOG.md\"\u003e@​typescript-eslint/eslint-plugin's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e8.59.3 (2026-05-11)\u003c/h2\u003e\n\u003cp\u003eThis was a version bump only for eslint-plugin to align it with other projects, there were no code changes.\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.3\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003e8.59.2 (2026-05-04)\u003c/h2\u003e\n\u003ch3\u003e🩹 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-deprecated] object destructuring values should be treated as declarations (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12292\"\u003e#12292\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unsafe-type-assertion] handle crash on recursive template literal types (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12150\"\u003e#12150\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e❤️ Thank You\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eDima Barabash\u003c/li\u003e\n\u003cli\u003eKirk Waiblinger \u003ca href=\"https://github.com/kirkwaiblinger\"\u003e\u003ccode\u003e@​kirkwaiblinger\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.2\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003e8.59.1 (2026-04-27)\u003c/h2\u003e\n\u003ch3\u003e🩹 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-condition] treat void as nullish in no-unnecessary-condition (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12241\"\u003e#12241\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-type-arguments] handle instantiation expressions (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12220\"\u003e#12220\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-type-assertion] avoid false positive in logical assignment assertions (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12278\"\u003e#12278\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-type-assertion] preserve phantom type arguments in generic inference (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12269\"\u003e#12269\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-type-assertion] preserve index signatures in undefined unions (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12257\"\u003e#12257\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-type-assertion] fix crash \u0026quot;TypeError: checker.getTypeArguments is not a function\u0026quot; (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12246\"\u003e#12246\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e❤️ Thank You\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eanasm266 \u003ca href=\"https://github.com/anasm266\"\u003e\u003ccode\u003e@​anasm266\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAnshika Jain \u003ca href=\"https://github.com/Anshikakalpana\"\u003e\u003ccode\u003e@​Anshikakalpana\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUlrich Stark\u003c/li\u003e\n\u003cli\u003eyugo innami \u003ca href=\"https://github.com/nami8824\"\u003e\u003ccode\u003e@​nami8824\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.1\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003e8.59.0 (2026-04-20)\u003c/h2\u003e\n\u003ch3\u003e🚀 Features\u003c/h3\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/48e13c0261e3cb1bf4f4dfaa462cdb3a56ef7383\"\u003e\u003ccode\u003e48e13c0\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.59.3\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/e26dc8003ababf078aad4df17765ee4cea30644c\"\u003e\u003ccode\u003ee26dc80\u003c/code\u003e\u003c/a\u003e docs: update stale links to latest (\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin/issues/12313\"\u003e#12313\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/44f9625336841a8ee3eb01a9e02e49b1d7b12648\"\u003e\u003ccode\u003e44f9625\u003c/code\u003e\u003c/a\u003e chore(deps): update vitest monorepo to v4.1.5 (\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin/issues/12307\"\u003e#12307\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/2ec35f1760aade4df4c631d76d78c7ed5e136333\"\u003e\u003ccode\u003e2ec35f1\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.59.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/ec3ef25390f7daf5a9ff33a60282bdbbb49ab0f3\"\u003e\u003ccode\u003eec3ef25\u003c/code\u003e\u003c/a\u003e test: make no-useless-empty-export tests fully static (\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin/issues/12260\"\u003e#12260\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/60d0a513870d833617374ff8ea256d86ca3cbbbb\"\u003e\u003ccode\u003e60d0a51\u003c/code\u003e\u003c/a\u003e chore(eslint-plugin): switch auto-generated test cases to hand-written in no-...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/5c53da230a70aba7d6f3d6474b5d249b430a95d0\"\u003e\u003ccode\u003e5c53da2\u003c/code\u003e\u003c/a\u003e fix(eslint-plugin): [no-deprecated] object destructuring values should be tre...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/80c28a1ada3f975a932a02587cefee632ccf6550\"\u003e\u003ccode\u003e80c28a1\u003c/code\u003e\u003c/a\u003e fix(eslint-plugin): [no-unsafe-type-assertion] handle crash on recursive temp...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/b7b2670123f76419630f88f3a807f85b7c535230\"\u003e\u003ccode\u003eb7b2670\u003c/code\u003e\u003c/a\u003e test: make no-this-alias tests fully static (\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin/issues/12258\"\u003e#12258\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/52457932e5507b5ca01e720a541f3f8d01e09b9d\"\u003e\u003ccode\u003e5245793\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.59.1\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commits/v8.59.3/packages/eslint-plugin\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@typescript-eslint/parser` from 8.56.0 to 8.59.3\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases\"\u003e@​typescript-eslint/parser's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev8.59.3\u003c/h2\u003e\n\u003ch2\u003e8.59.3 (2026-05-11)\u003c/h2\u003e\n\u003cp\u003eThis was a version bump only, there were no code changes.\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.3\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003ev8.59.2\u003c/h2\u003e\n\u003ch2\u003e8.59.2 (2026-05-04)\u003c/h2\u003e\n\u003ch3\u003e🩹 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unsafe-type-assertion] handle crash on recursive template literal types (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12150\"\u003e#12150\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-deprecated] object destructuring values should be treated as declarations (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12292\"\u003e#12292\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003erule-tester:\u003c/strong\u003e add TypeScript as a peer dependency (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12288\"\u003e#12288\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e❤️ Thank You\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eDariusz Czajkowski\u003c/li\u003e\n\u003cli\u003eDima Barabash\u003c/li\u003e\n\u003cli\u003eKirk Waiblinger \u003ca href=\"https://github.com/kirkwaiblinger\"\u003e\u003ccode\u003e@​kirkwaiblinger\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.2\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003ev8.59.1\u003c/h2\u003e\n\u003ch2\u003e8.59.1 (2026-04-27)\u003c/h2\u003e\n\u003ch3\u003e🩹 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-type-assertion] fix crash \u0026quot;TypeError: checker.getTypeArguments is not a function\u0026quot; (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12246\"\u003e#12246\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-type-assertion] preserve index signatures in undefined unions (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12257\"\u003e#12257\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-type-assertion] preserve phantom type arguments in generic inference (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12269\"\u003e#12269\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-type-assertion] avoid false positive in logical assignment assertions (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12278\"\u003e#12278\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-type-arguments] handle instantiation expressions (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12220\"\u003e#12220\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-condition] treat void as nullish in no-unnecessary-condition (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12241\"\u003e#12241\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e❤️ Thank You\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eanasm266 \u003ca href=\"https://github.com/anasm266\"\u003e\u003ccode\u003e@​anasm266\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAnshika Jain \u003ca href=\"https://github.com/Anshikakalpana\"\u003e\u003ccode\u003e@​Anshikakalpana\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUlrich Stark\u003c/li\u003e\n\u003cli\u003eyugo innami \u003ca href=\"https://github.com/nami8824\"\u003e\u003ccode\u003e@​nami8824\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.1\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/parser/CHANGELOG.md\"\u003e@​typescript-eslint/parser's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e8.59.3 (2026-05-11)\u003c/h2\u003e\n\u003cp\u003eThis was a version bump only for parser to align it with other projects, there were no code changes.\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.3\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003e8.59.2 (2026-05-04)\u003c/h2\u003e\n\u003cp\u003eThis was a version bump only for parser to align it with other projects, there were no code changes.\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.2\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003e8.59.1 (2026-04-27)\u003c/h2\u003e\n\u003cp\u003eThis was a version bump only for parser to align it with other projects, there were no code changes.\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.1\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003e8.59.0 (2026-04-20)\u003c/h2\u003e\n\u003cp\u003eThis was a version bump only for parser to align it with other projects, there were no code changes.\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.0\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003e8.58.2 (2026-04-13)\u003c/h2\u003e\n\u003ch3\u003e🩹 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eremove tsbuildinfo cache file from published packages (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12187\"\u003e#12187\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e❤️ Thank You\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAbhijeet Singh \u003ca href=\"https://github.com/cseas\"\u003e\u003ccode\u003e@​cseas\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.58.2\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003e8.58.1 (2026-04-08)\u003c/h2\u003e\n\u003cp\u003eThis was a version bump only for parser to align it with other projects, there were no code changes.\u003c/p\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/48e13c0261e3cb1bf4f4dfaa462cdb3a56ef7383\"\u003e\u003ccode\u003e48e13c0\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.59.3\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/44f9625336841a8ee3eb01a9e02e49b1d7b12648\"\u003e\u003ccode\u003e44f9625\u003c/code\u003e\u003c/a\u003e chore(deps): update vitest monorepo to v4.1.5 (\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/parser/issues/12307\"\u003e#12307\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/2ec35f1760aade4df4c631d76d78c7ed5e136333\"\u003e\u003ccode\u003e2ec35f1\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.59.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/52457932e5507b5ca01e720a541f3f8d01e09b9d\"\u003e\u003ccode\u003e5245793\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.59.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/ea9ae4f8817873480e3501145059f63e39e8d8a1\"\u003e\u003ccode\u003eea9ae4f\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.59.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/90c2803a4c250e0343598d41e973f95e743bf4ce\"\u003e\u003ccode\u003e90c2803\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.58.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/be6b49a02d68db9bdc8985e7e9e1598700fda2fa\"\u003e\u003ccode\u003ebe6b49a\u003c/code\u003e\u003c/a\u003e fix: remove tsbuildinfo cache file from published packages (\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/parser/issues/12187\"\u003e#12187\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/5311ed312eadf4e238324f2726ae0b1f3f2206e6\"\u003e\u003ccode\u003e5311ed3\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.58.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/493341709fe7d1d6433332b7bd2724e3332c7cdf\"\u003e\u003ccode\u003e4933417\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.58.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/8cde2d06fb9bc591a4c93452509ddbd600c76a35\"\u003e\u003ccode\u003e8cde2d0\u003c/code\u003e\u003c/a\u003e feat: support TypeScript 6 (\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/parser/issues/12124\"\u003e#12124\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commits/v8.59.3/packages/parser\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `eslint` from 9.39.2 to 10.4.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/eslint/eslint/releases\"\u003eeslint's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev10.4.0\u003c/h2\u003e\n\u003ch2\u003eFeatures\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/1a45ec596af1dd5f880e6874cb8f24dafb6a7ecf\"\u003e\u003ccode\u003e1a45ec5\u003c/code\u003e\u003c/a\u003e feat: check sequence expressions in \u003ccode\u003efor-direction\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20701\"\u003e#20701\u003c/a\u003e) (kuldeep kumar)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/450040bd89b989b3531824c6be45feb5fe3d936b\"\u003e\u003ccode\u003e450040b\u003c/code\u003e\u003c/a\u003e feat: add \u003ccode\u003eincludeIgnoreFile()\u003c/code\u003e to \u003ccode\u003eeslint/config\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20735\"\u003e#20735\u003c/a\u003e) (Kirk Waiblinger)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eBug Fixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/544c0c3da589166ad8e5d634f35d3d06701c57be\"\u003e\u003ccode\u003e544c0c3\u003c/code\u003e\u003c/a\u003e fix: escape code path DOT labels in debug output (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20866\"\u003e#20866\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/6799431203f2579632d0870f98ba132067f4040c\"\u003e\u003ccode\u003e6799431\u003c/code\u003e\u003c/a\u003e fix: update dependency \u003ccode\u003e@​eslint/config-helpers\u003c/code\u003e to ^0.6.0 (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20850\"\u003e#20850\u003c/a\u003e) (renovate[bot])\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/f078fef5005dceb14fc162aab7c7200e027688dd\"\u003e\u003ccode\u003ef078fef\u003c/code\u003e\u003c/a\u003e fix: handle non-array deprecated rule replacements (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20825\"\u003e#20825\u003c/a\u003e) (xbinaryx)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eDocumentation\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/7e52a7151fb92eec0e0f67fe4e5ddbd1ccce796f\"\u003e\u003ccode\u003e7e52a71\u003c/code\u003e\u003c/a\u003e docs: add mention of \u003ccode\u003e@eslint-react/eslint-plugin\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20869\"\u003e#20869\u003c/a\u003e) (Pavel)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/db3468ba746407d7f286f18f7ea9db6df0e3bc08\"\u003e\u003ccode\u003edb3468b\u003c/code\u003e\u003c/a\u003e docs: tweak wording around ambiguous CJS-vs-ESM config (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20865\"\u003e#20865\u003c/a\u003e) (Kirk Waiblinger)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/90846643ec6e97d447ae0d831fabe6d17b0a998a\"\u003e\u003ccode\u003e9084664\u003c/code\u003e\u003c/a\u003e docs: Update README (GitHub Actions Bot)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/9cc73875046e3c4b8313644cbb1e99e26b36bd3f\"\u003e\u003ccode\u003e9cc7387\u003c/code\u003e\u003c/a\u003e docs: Update README (GitHub Actions Bot)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/3d7b5484407403817aa9071a394d336d8ea96eb5\"\u003e\u003ccode\u003e3d7b548\u003c/code\u003e\u003c/a\u003e docs: Update README (GitHub Actions Bot)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/191ec3c0a3f94ce0f110df761f0b2b8949011ccb\"\u003e\u003ccode\u003e191ec3c\u003c/code\u003e\u003c/a\u003e docs: Update README (GitHub Actions Bot)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eChores\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/6616856f28fa514a30f87b5539fc100d739a94bf\"\u003e\u003ccode\u003e6616856\u003c/code\u003e\u003c/a\u003e chore: upgrade knip to v6 (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20875\"\u003e#20875\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/d13b084a3ad02f926e9addaa35fc383759ea5554\"\u003e\u003ccode\u003ed13b084\u003c/code\u003e\u003c/a\u003e ci: ensure auto-created PRs run CI (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20860\"\u003e#20860\u003c/a\u003e) (lumir)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/e71c7af86dce9acc1d18cb12d2184309f6841594\"\u003e\u003ccode\u003ee71c7af\u003c/code\u003e\u003c/a\u003e ci: bump pnpm/action-setup from 6.0.5 to 6.0.7 (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20862\"\u003e#20862\u003c/a\u003e) (dependabot[bot])\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/d84393dea170f54191fd20c8268b52c81c0ccd99\"\u003e\u003ccode\u003ed84393d\u003c/code\u003e\u003c/a\u003e test: add unit tests for SuppressionsService.applySuppressions() (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20863\"\u003e#20863\u003c/a\u003e) (kuldeep kumar)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/24db8cb8e6f07fba667121777a15b1785486be94\"\u003e\u003ccode\u003e24db8cb\u003c/code\u003e\u003c/a\u003e test: add tests for SuppressionsService.save() (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20802\"\u003e#20802\u003c/a\u003e) (kuldeep kumar)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/2ef0549cac4a9537e4c3a26b9f3edd4c99476bf6\"\u003e\u003ccode\u003e2ef0549\u003c/code\u003e\u003c/a\u003e chore: update ecosystem plugins (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20857\"\u003e#20857\u003c/a\u003e) (github-actions[bot])\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/a4297918d264d229a06cd96051ef9b91c7b86732\"\u003e\u003ccode\u003ea429791\u003c/code\u003e\u003c/a\u003e ci: remove \u003ccode\u003eeslint-webpack-plugin\u003c/code\u003e types integration test (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20668\"\u003e#20668\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/9e37386aa7f2ce220b2ef74a6afbac5f6b3527c5\"\u003e\u003ccode\u003e9e37386\u003c/code\u003e\u003c/a\u003e chore: replace \u003ccode\u003erecast\u003c/code\u003e with range approach in code-sample-minimizer (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20682\"\u003e#20682\u003c/a\u003e) (Copilot)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/0dd1f9ffc9a07704d46e2a4c8d4ccc0d0908b0c0\"\u003e\u003ccode\u003e0dd1f9f\u003c/code\u003e\u003c/a\u003e test: disable warning for \u003ccode\u003evm.constants.USE_MAIN_CONTEXT_DEFAULT_LOADER\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20845\"\u003e#20845\u003c/a\u003e) (Francesco Trotta)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/9da3c7bc92d9579f8db19ecb56e718538d09db2b\"\u003e\u003ccode\u003e9da3c7b\u003c/code\u003e\u003c/a\u003e refactor: remove deprecated \u003ccode\u003emeta.language\u003c/code\u003e and migrate \u003ccode\u003emeta.dialects\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20716\"\u003e#20716\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/2099ed12a0a74c3d7f0808514362af2499b4fe2b\"\u003e\u003ccode\u003e2099ed1\u003c/code\u003e\u003c/a\u003e refactor: add \u003ccode\u003emeta.defaultOptions\u003c/code\u003e to more rules, enable linting (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20800\"\u003e#20800\u003c/a\u003e) (xbinaryx)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/f1dfbc9ca57196de7092e1888cc99427bd6fe06e\"\u003e\u003ccode\u003ef1dfbc9\u003c/code\u003e\u003c/a\u003e chore: update ecosystem plugins (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20836\"\u003e#20836\u003c/a\u003e) (github-actions[bot])\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/c75941390c14728806cd4baef4f6072f6de78318\"\u003e\u003ccode\u003ec759413\u003c/code\u003e\u003c/a\u003e ci: bump pnpm/action-setup from 6.0.3 to 6.0.5 (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20843\"\u003e#20843\u003c/a\u003e) (dependabot[bot])\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/5b817d6fdc9ae2c35b528dc662b2eca8f40f64aa\"\u003e\u003ccode\u003e5b817d6\u003c/code\u003e\u003c/a\u003e test: add unit tests for lib/shared/ast-utils (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20838\"\u003e#20838\u003c/a\u003e) (kuldeep kumar)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/1c13ae3934c198c494e5958fa3a68b33244ff06a\"\u003e\u003ccode\u003e1c13ae3\u003c/code\u003e\u003c/a\u003e test: add unit tests for lib/shared/severity (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20835\"\u003e#20835\u003c/a\u003e) (kuldeep kumar)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev10.3.0\u003c/h2\u003e\n\u003ch2\u003eFeatures\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/379571a975f2b24d88037b9de2e72ec61d004130\"\u003e\u003ccode\u003e379571a\u003c/code\u003e\u003c/a\u003e feat: add suggestions for no-unused-private-class-members (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20773\"\u003e#20773\u003c/a\u003e) (sethamus)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eBug Fixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/b6ae5cf07b9b51802367539cb24b245b61eaa37c\"\u003e\u003ccode\u003eb6ae5cf\u003c/code\u003e\u003c/a\u003e fix: handle unavailable require cache (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20812\"\u003e#20812\u003c/a\u003e) (Simon Podlipsky)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/6fb3685bcbe9a6f72fd7dfb9129686b6fb96b0bd\"\u003e\u003ccode\u003e6fb3685\u003c/code\u003e\u003c/a\u003e fix: rule suggestions cause continuation in class body (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20787\"\u003e#20787\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eDocumentation\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/32cc7ab4ec653ce89da92deb5c40a9f4fc707fe5\"\u003e\u003ccode\u003e32cc7ab\u003c/code\u003e\u003c/a\u003e docs: fix typos in docs and comments (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20809\"\u003e#20809\u003c/a\u003e) (Tanuj Kanti)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/7f479376a2fa463d823ab762db6bb37ce8d2ee8f\"\u003e\u003ccode\u003e7f47937\u003c/code\u003e\u003c/a\u003e docs: Update README (GitHub Actions Bot)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eChores\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/d32235ec19ceea211fa86452afa383ca05f5c2f9\"\u003e\u003ccode\u003ed32235e\u003c/code\u003e\u003c/a\u003e ci: use pnpm in \u003ccode\u003eeslint-flat-config-utils\u003c/code\u003e type integration test (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20826\"\u003e#20826\u003c/a\u003e) (Francesco Trotta)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/3ffb14ea517de750ed1181579ef844af342e4096\"\u003e\u003ccode\u003e3ffb14e\u003c/code\u003e\u003c/a\u003e chore: clean up typos in comments and JSDoc (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20821\"\u003e#20821\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/452c4010c07dc2e36fe6ec6a8c48298878e86887\"\u003e\u003ccode\u003e452c401\u003c/code\u003e\u003c/a\u003e 10.4.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/b6417e8b55c9525070d6e168b485ce6ff21688ed\"\u003e\u003ccode\u003eb6417e8\u003c/code\u003e\u003c/a\u003e Build: changelog update for 10.4.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/6616856f28fa514a30f87b5539fc100d739a94bf\"\u003e\u003ccode\u003e6616856\u003c/code\u003e\u003c/a\u003e chore: upgrade knip to v6 (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20875\"\u003e#20875\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/d13b084a3ad02f926e9addaa35fc383759ea5554\"\u003e\u003ccode\u003ed13b084\u003c/code\u003e\u003c/a\u003e ci: ensure auto-created PRs run CI (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20860\"\u003e#20860\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/7e52a7151fb92eec0e0f67fe4e5ddbd1ccce796f\"\u003e\u003ccode\u003e7e52a71\u003c/code\u003e\u003c/a\u003e docs: add mention of \u003ccode\u003e@eslint-react/eslint-plugin\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20869\"\u003e#20869\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/e71c7af86dce9acc1d18cb12d2184309f6841594\"\u003e\u003ccode\u003ee71c7af\u003c/code\u003e\u003c/a\u003e ci: bump pnpm/action-setup from 6.0.5 to 6.0.7 (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20862\"\u003e#20862\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/544c0c3da589166ad8e5d634f35d3d06701c57be\"\u003e\u003ccode\u003e544c0c3\u003c/code\u003e\u003c/a\u003e fix: escape code path DOT labels in debug output (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20866\"\u003e#20866\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/db3468ba746407d7f286f18f7ea9db6df0e3bc08\"\u003e\u003ccode\u003edb3468b\u003c/code\u003e\u003c/a\u003e docs: tweak wording around ambiguous CJS-vs-ESM config (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20865\"\u003e#20865\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/d84393dea170f54191fd20c8268b52c81c0ccd99\"\u003e\u003ccode\u003ed84393d\u003c/code\u003e\u003c/a\u003e test: add unit tests for SuppressionsService.applySuppressions() (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20863\"\u003e#20863\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/90846643ec6e97d447ae0d831fabe6d17b0a998a\"\u003e\u003ccode\u003e9084664\u003c/code\u003e\u003c/a\u003e docs: Update README\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/eslint/eslint/compare/v9.39.2...v10.4.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `eslint-plugin-react-hooks` from 7.0.1 to 7.1.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/facebook/react/releases\"\u003eeslint-plugin-react-hooks's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eeslint-plugin-react-hooks@7.1.1 (April 17, 2026)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eNote:\u003c/strong\u003e 7.1.0 accidentally removed the \u003ccode\u003ecomponent-hook-factories\u003c/code\u003e rule, causing errors for users who referenced it in their ESLint config. This is now fixed.\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdd deprecated no-op \u003ccode\u003ecomponent-hook-factories\u003c/code\u003e rule for backwards compatibility. (\u003ca href=\"https://github.com/mofeiZ\"\u003e\u003ccode\u003e@​mofeiZ\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/36307\"\u003e#36307\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eeslint-plugin-react-hooks@7.1.0 (April 16, 2026)\u003c/h2\u003e\n\u003cp\u003eThis release adds ESLint v10 support, improves performance by skipping compilation for non-React files, and includes compiler lint improvements including better \u003ccode\u003eset-state-in-effect\u003c/code\u003e detection, improved ref validation, and more helpful error reporting.\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdd ESLint v10 support. (\u003ca href=\"https://github.com/azat-io\"\u003e\u003ccode\u003e@​azat-io\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/35720\"\u003e#35720\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSkip compilation for non-React files to improve performance. (\u003ca href=\"https://github.com/josephsavona\"\u003e\u003ccode\u003e@​josephsavona\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/35589\"\u003e#35589\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix exhaustive deps bug with Flow type casting. (\u003ca href=\"https://github.com/jorge-cab\"\u003e\u003ccode\u003e@​jorge-cab\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/35691\"\u003e#35691\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix \u003ccode\u003euseEffectEvent\u003c/code\u003e checks in component syntax. (\u003ca href=\"https://github.com/jbrown215\"\u003e\u003ccode\u003e@​jbrown215\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/35041\"\u003e#35041\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eImproved \u003ccode\u003eset-state-in-effect\u003c/code\u003e validation with fewer false negatives. (\u003ca href=\"https://github.com/jorge-cab\"\u003e\u003ccode\u003e@​jorge-cab\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/35134\"\u003e#35134\u003c/a\u003e, \u003ca href=\"https://github.com/josephsavona\"\u003e\u003ccode\u003e@​josephsavona\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/35147\"\u003e#35147\u003c/a\u003e, \u003ca href=\"https://github.com/jackpope\"\u003e\u003ccode\u003e@​jackpope\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/35214\"\u003e#35214\u003c/a\u003e, \u003ca href=\"https://github.com/chesnokov-tony\"\u003e\u003ccode\u003e@​chesnokov-tony\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/35419\"\u003e#35419\u003c/a\u003e, \u003ca href=\"https://github.com/jsleitor\"\u003e\u003ccode\u003e@​jsleitor\u003c/code...\n\n_Description has been truncated_","html_url":"https://github.com/mr-ElAmine/test-1/pull/7","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/mr-ElAmine%2Ftest-1/issues/7","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/7/packages"},{"uuid":"4466518025","node_id":"PR_kwDOR1uAnc7chJO1","number":7,"state":"closed","title":"deps(deps): bump the all-dependencies group across 1 directory with 66 updates","user":"dependabot[bot]","labels":[],"assignees":[],"locked":false,"comments_count":2,"pull_request":true,"closed_at":"2026-05-25T05:16:59.000Z","author_association":null,"state_reason":null,"created_at":"2026-05-18T05:32:37.000Z","updated_at":"2026-05-25T05:17:01.000Z","time_to_close":603862,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"deps(deps): bump","group_name":"all-dependencies","update_count":66,"packages":[{"name":"@eslint-react/eslint-plugin","old_version":"2.13.0","new_version":"5.8.1","repository_url":"https://github.com/Rel1cx/eslint-react"},{"name":"@eslint/js","old_version":"9.39.2","new_version":"10.0.1","repository_url":"https://github.com/eslint/eslint"},{"name":"@typescript-eslint/eslint-plugin","old_version":"8.56.0","new_version":"8.59.3","repository_url":"https://github.com/typescript-eslint/typescript-eslint"},{"name":"@typescript-eslint/parser","old_version":"8.56.0","new_version":"8.59.3","repository_url":"https://github.com/typescript-eslint/typescript-eslint"},{"name":"eslint","old_version":"9.39.2","new_version":"10.4.0","repository_url":"https://github.com/eslint/eslint"},{"name":"eslint-plugin-react-hooks","old_version":"7.0.1","new_version":"7.1.1","repository_url":"https://github.com/facebook/react"},{"name":"globals","old_version":"17.3.0","new_version":"17.6.0","repository_url":"https://github.com/sindresorhus/globals"},{"name":"graphql","old_version":"16.12.0","new_version":"16.14.0","repository_url":"https://github.com/graphql/graphql-js"},{"name":"happy-dom","old_version":"20.6.2","new_version":"20.9.0","repository_url":"https://github.com/capricorn86/happy-dom"},{"name":"jiti","old_version":"2.6.1","new_version":"2.7.0","repository_url":"https://github.com/unjs/jiti"},{"name":"lint-staged","old_version":"16.2.7","new_version":"17.0.5","repository_url":"https://github.com/lint-staged/lint-staged"},{"name":"mermaid","old_version":"11.12.3","new_version":"11.15.0","repository_url":"https://github.com/mermaid-js/mermaid"},{"name":"prettier","old_version":"3.8.1","new_version":"3.8.3","repository_url":"https://github.com/prettier/prettier"},{"name":"react","old_version":"19.2.4","new_version":"19.2.6","repository_url":"https://github.com/facebook/react"},{"name":"typescript","old_version":"5.9.3","new_version":"6.0.3","repository_url":"https://github.com/microsoft/TypeScript"},{"name":"typescript-eslint","old_version":"8.56.0","new_version":"8.59.3","repository_url":"https://github.com/typescript-eslint/typescript-eslint"},{"name":"typescript-language-server","old_version":"5.1.3","new_version":"5.2.0","repository_url":"https://github.com/typescript-language-server/typescript-language-server"},{"name":"vite","old_version":"7.3.1","new_version":"8.0.13","repository_url":"https://github.com/vitejs/vite"},{"name":"vitepress","old_version":"2.0.0-alpha.16","new_version":"2.0.0-alpha.17","repository_url":"https://github.com/vuejs/vitepress"},{"name":"vitepress-plugin-llms","old_version":"1.11.0","new_version":"1.12.2","repository_url":"https://github.com/okineadev/vitepress-plugin-llms"},{"name":"vitest","old_version":"4.0.18","new_version":"4.1.6","repository_url":"https://github.com/vitest-dev/vitest"},{"name":"wrangler","old_version":"4.66.0","new_version":"4.92.0","repository_url":"https://github.com/cloudflare/workers-sdk"},{"name":"@ai-sdk/openai","old_version":"3.0.29","new_version":"3.0.64","repository_url":"https://github.com/vercel/ai"},{"name":"@better-auth/passkey","old_version":"1.4.18","new_version":"1.6.11","repository_url":"https://github.com/better-auth/better-auth"},{"name":"@better-auth/stripe","old_version":"1.4.18","new_version":"1.6.11","repository_url":"https://github.com/better-auth/better-auth"},{"name":"@trpc/server","old_version":"11.10.0","new_version":"11.17.0","repository_url":"https://github.com/trpc/trpc"},{"name":"ai","old_version":"6.0.91","new_version":"6.0.184","repository_url":"https://github.com/vercel/ai"},{"name":"better-auth","old_version":"1.4.18","new_version":"1.6.11","repository_url":"https://github.com/better-auth/better-auth"},{"name":"drizzle-orm","old_version":"0.45.1","new_version":"0.45.2","repository_url":"https://github.com/drizzle-team/drizzle-orm"},{"name":"postgres","old_version":"3.4.8","new_version":"3.4.9","repository_url":"https://github.com/porsager/postgres"},{"name":"resend","old_version":"6.9.2","new_version":"6.12.3","repository_url":"https://github.com/resend/resend-node"},{"name":"stripe","old_version":"20.3.1","new_version":"22.1.1","repository_url":"https://github.com/stripe/stripe-node"},{"name":"@cloudflare/workers-types","old_version":"4.20260218.0","new_version":"4.20260518.1","repository_url":"https://github.com/cloudflare/workerd"},{"name":"@types/bun","old_version":"1.3.9","new_version":"1.3.14","repository_url":"https://github.com/DefinitelyTyped/DefinitelyTyped"},{"name":"hono","old_version":"4.11.10","new_version":"4.12.19","repository_url":"https://github.com/honojs/hono"},{"name":"@tanstack/react-query","old_version":"5.90.21","new_version":"5.100.10","repository_url":"https://github.com/TanStack/query"},{"name":"@tanstack/react-router","old_version":"1.161.1","new_version":"1.170.4","repository_url":"https://github.com/TanStack/router"},{"name":"@trpc/client","old_version":"11.10.0","new_version":"11.17.0","repository_url":"https://github.com/trpc/trpc"},{"name":"@trpc/tanstack-react-query","old_version":"11.10.0","new_version":"11.17.0","repository_url":"https://github.com/trpc/trpc"},{"name":"jotai","old_version":"2.17.1","new_version":"2.20.0","repository_url":"https://github.com/pmndrs/jotai"},{"name":"jotai-effect","old_version":"2.2.3","new_version":"2.3.1","repository_url":"https://github.com/jotaijs/jotai-effect"},{"name":"lucide-react","old_version":"0.574.0","new_version":"1.16.0","repository_url":"https://github.com/lucide-icons/lucide"},{"name":"react-dom","old_version":"19.2.4","new_version":"19.2.6","repository_url":"https://github.com/facebook/react"},{"name":"tailwind-merge","old_version":"3.4.1","new_version":"3.6.0","repository_url":"https://github.com/dcastil/tailwind-merge"},{"name":"@tailwindcss/postcss","old_version":"4.2.0","new_version":"4.3.0","repository_url":"https://github.com/tailwindlabs/tailwindcss"},{"name":"@tanstack/react-query-devtools","old_version":"5.91.3","new_version":"5.100.10","repository_url":"https://github.com/TanStack/query"},{"name":"@tanstack/react-router-devtools","old_version":"1.161.1","new_version":"1.167.0","repository_url":"https://github.com/TanStack/router"},{"name":"@tanstack/router-plugin","old_version":"1.161.1","new_version":"1.168.6","repository_url":"https://github.com/TanStack/router"},{"name":"@types/node","old_version":"25.2.3","new_version":"25.8.0","repository_url":"https://github.com/DefinitelyTyped/DefinitelyTyped"},{"name":"@vitejs/plugin-react","old_version":"5.1.4","new_version":"6.0.2","repository_url":"https://github.com/vitejs/vite-plugin-react"},{"name":"@vitejs/plugin-react-swc","old_version":"4.2.3","new_version":"4.3.1","repository_url":"https://github.com/vitejs/vite-plugin-react"},{"name":"autoprefixer","old_version":"10.4.24","new_version":"10.5.0","repository_url":"https://github.com/postcss/autoprefixer"},{"name":"globby","old_version":"16.1.1","new_version":"16.2.0","repository_url":"https://github.com/sindresorhus/globby"},{"name":"@react-email/components","old_version":"1.0.8","new_version":"1.0.12","repository_url":"https://github.com/resend/react-email"},{"name":"@react-email/render","old_version":"2.0.4","new_version":"2.0.8","repository_url":"https://github.com/resend/react-email"},{"name":"@react-email/preview-server","old_version":"5.2.8","new_version":"5.2.10","repository_url":"https://github.com/resend/react-email"},{"name":"react-email","old_version":"5.2.8","new_version":"6.1.4","repository_url":"https://github.com/resend/react-email"},{"name":"@astrojs/react","old_version":"4.4.2","new_version":"5.0.5","repository_url":"https://github.com/withastro/astro"},{"name":"astro","old_version":"5.17.2","new_version":"6.3.3","repository_url":"https://github.com/withastro/astro"},{"name":"dotenv","old_version":"17.3.1","new_version":"17.4.2","repository_url":"https://github.com/motdotla/dotenv"},{"name":"drizzle-kit","old_version":"0.31.9","new_version":"0.31.10","repository_url":"https://github.com/drizzle-team/drizzle-orm"},{"name":"@modelcontextprotocol/sdk","old_version":"1.26.0","new_version":"1.29.0","repository_url":"https://github.com/modelcontextprotocol/typescript-sdk"},{"name":"got","old_version":"14.6.6","new_version":"15.0.5","repository_url":"https://github.com/sindresorhus/got"}],"path":null,"ecosystem":"npm"},"body":"Bumps the all-dependencies group with 63 updates in the / directory:\n\n| Package | From | To |\n| --- | --- | --- |\n| [@eslint-react/eslint-plugin](https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin) | `2.13.0` | `5.8.1` |\n| [@eslint/js](https://github.com/eslint/eslint/tree/HEAD/packages/js) | `9.39.2` | `10.0.1` |\n| [@typescript-eslint/eslint-plugin](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin) | `8.56.0` | `8.59.3` |\n| [@typescript-eslint/parser](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/parser) | `8.56.0` | `8.59.3` |\n| [eslint](https://github.com/eslint/eslint) | `9.39.2` | `10.4.0` |\n| [eslint-plugin-react-hooks](https://github.com/facebook/react/tree/HEAD/packages/eslint-plugin-react-hooks) | `7.0.1` | `7.1.1` |\n| [globals](https://github.com/sindresorhus/globals) | `17.3.0` | `17.6.0` |\n| [graphql](https://github.com/graphql/graphql-js) | `16.12.0` | `16.14.0` |\n| [happy-dom](https://github.com/capricorn86/happy-dom) | `20.6.2` | `20.9.0` |\n| [jiti](https://github.com/unjs/jiti) | `2.6.1` | `2.7.0` |\n| [lint-staged](https://github.com/lint-staged/lint-staged) | `16.2.7` | `17.0.5` |\n| [mermaid](https://github.com/mermaid-js/mermaid) | `11.12.3` | `11.15.0` |\n| [prettier](https://github.com/prettier/prettier) | `3.8.1` | `3.8.3` |\n| [react](https://github.com/facebook/react/tree/HEAD/packages/react) | `19.2.4` | `19.2.6` |\n| [typescript](https://github.com/microsoft/TypeScript) | `5.9.3` | `6.0.3` |\n| [typescript-eslint](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/typescript-eslint) | `8.56.0` | `8.59.3` |\n| [typescript-language-server](https://github.com/typescript-language-server/typescript-language-server) | `5.1.3` | `5.2.0` |\n| [vite](https://github.com/vitejs/vite/tree/HEAD/packages/vite) | `7.3.1` | `8.0.13` |\n| [vitepress](https://github.com/vuejs/vitepress) | `2.0.0-alpha.16` | `2.0.0-alpha.17` |\n| [vitepress-plugin-llms](https://github.com/okineadev/vitepress-plugin-llms) | `1.11.0` | `1.12.2` |\n| [vitest](https://github.com/vitest-dev/vitest/tree/HEAD/packages/vitest) | `4.0.18` | `4.1.6` |\n| [wrangler](https://github.com/cloudflare/workers-sdk/tree/HEAD/packages/wrangler) | `4.66.0` | `4.92.0` |\n| [@ai-sdk/openai](https://github.com/vercel/ai/tree/HEAD/packages/openai) | `3.0.29` | `3.0.64` |\n| [@better-auth/passkey](https://github.com/better-auth/better-auth/tree/HEAD/packages/passkey) | `1.4.18` | `1.6.11` |\n| [@better-auth/stripe](https://github.com/better-auth/better-auth/tree/HEAD/packages/stripe) | `1.4.18` | `1.6.11` |\n| [@trpc/server](https://github.com/trpc/trpc/tree/HEAD/packages/server) | `11.10.0` | `11.17.0` |\n| [ai](https://github.com/vercel/ai/tree/HEAD/packages/ai) | `6.0.91` | `6.0.184` |\n| [better-auth](https://github.com/better-auth/better-auth/tree/HEAD/packages/better-auth) | `1.4.18` | `1.6.11` |\n| [drizzle-orm](https://github.com/drizzle-team/drizzle-orm) | `0.45.1` | `0.45.2` |\n| [postgres](https://github.com/porsager/postgres) | `3.4.8` | `3.4.9` |\n| [resend](https://github.com/resend/resend-node) | `6.9.2` | `6.12.3` |\n| [stripe](https://github.com/stripe/stripe-node) | `20.3.1` | `22.1.1` |\n| [@cloudflare/workers-types](https://github.com/cloudflare/workerd) | `4.20260218.0` | `4.20260518.1` |\n| [@types/bun](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/bun) | `1.3.9` | `1.3.14` |\n| [hono](https://github.com/honojs/hono) | `4.11.10` | `4.12.19` |\n| [@tanstack/react-query](https://github.com/TanStack/query/tree/HEAD/packages/react-query) | `5.90.21` | `5.100.10` |\n| [@tanstack/react-router](https://github.com/TanStack/router/tree/HEAD/packages/react-router) | `1.161.1` | `1.170.4` |\n| [@trpc/client](https://github.com/trpc/trpc/tree/HEAD/packages/client) | `11.10.0` | `11.17.0` |\n| [@trpc/tanstack-react-query](https://github.com/trpc/trpc/tree/HEAD/packages/tanstack-react-query) | `11.10.0` | `11.17.0` |\n| [jotai](https://github.com/pmndrs/jotai) | `2.17.1` | `2.20.0` |\n| [jotai-effect](https://github.com/jotaijs/jotai-effect) | `2.2.3` | `2.3.1` |\n| [lucide-react](https://github.com/lucide-icons/lucide/tree/HEAD/packages/lucide-react) | `0.574.0` | `1.16.0` |\n| [react-dom](https://github.com/facebook/react/tree/HEAD/packages/react-dom) | `19.2.4` | `19.2.6` |\n| [tailwind-merge](https://github.com/dcastil/tailwind-merge) | `3.4.1` | `3.6.0` |\n| [@tailwindcss/postcss](https://github.com/tailwindlabs/tailwindcss/tree/HEAD/packages/@tailwindcss-postcss) | `4.2.0` | `4.3.0` |\n| [@tanstack/react-query-devtools](https://github.com/TanStack/query/tree/HEAD/packages/react-query-devtools) | `5.91.3` | `5.100.10` |\n| [@tanstack/react-router-devtools](https://github.com/TanStack/router/tree/HEAD/packages/react-router-devtools) | `1.161.1` | `1.167.0` |\n| [@tanstack/router-plugin](https://github.com/TanStack/router/tree/HEAD/packages/router-plugin) | `1.161.1` | `1.168.6` |\n| [@types/node](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/node) | `25.2.3` | `25.8.0` |\n| [@vitejs/plugin-react](https://github.com/vitejs/vite-plugin-react/tree/HEAD/packages/plugin-react) | `5.1.4` | `6.0.2` |\n| [@vitejs/plugin-react-swc](https://github.com/vitejs/vite-plugin-react/tree/HEAD/packages/plugin-react-swc) | `4.2.3` | `4.3.1` |\n| [autoprefixer](https://github.com/postcss/autoprefixer) | `10.4.24` | `10.5.0` |\n| [globby](https://github.com/sindresorhus/globby) | `16.1.1` | `16.2.0` |\n| [@react-email/components](https://github.com/resend/react-email/tree/HEAD/packages/components) | `1.0.8` | `1.0.12` |\n| [@react-email/render](https://github.com/resend/react-email/tree/HEAD/packages/render) | `2.0.4` | `2.0.8` |\n| [@react-email/preview-server](https://github.com/resend/react-email/tree/HEAD/packages/preview-server) | `5.2.8` | `5.2.10` |\n| [react-email](https://github.com/resend/react-email/tree/HEAD/packages/react-email) | `5.2.8` | `6.1.4` |\n| [@astrojs/react](https://github.com/withastro/astro/tree/HEAD/packages/integrations/react) | `4.4.2` | `5.0.5` |\n| [astro](https://github.com/withastro/astro/tree/HEAD/packages/astro) | `5.17.2` | `6.3.3` |\n| [dotenv](https://github.com/motdotla/dotenv) | `17.3.1` | `17.4.2` |\n| [drizzle-kit](https://github.com/drizzle-team/drizzle-orm) | `0.31.9` | `0.31.10` |\n| [@modelcontextprotocol/sdk](https://github.com/modelcontextprotocol/typescript-sdk) | `1.26.0` | `1.29.0` |\n| [got](https://github.com/sindresorhus/got) | `14.6.6` | `15.0.5` |\n\n\nUpdates `@eslint-react/eslint-plugin` from 2.13.0 to 5.8.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/Rel1cx/eslint-react/releases\"\u003e@​eslint-react/eslint-plugin's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev5.8.1 (2026-05-18)\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003ch3\u003e📝 Documentation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eRestructured rule documentation across all plugins from the \u003ccode\u003eCommon Violations / Invalid / Valid\u003c/code\u003e format to the new \u003ccode\u003eExamples / scenario-based / Troubleshooting / Further Reading\u003c/code\u003e format (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1784\"\u003e#1784\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eUpdated README tagline and description, removed the Benchmark section, and fixed migration guide links (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1783\"\u003e#1783\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eUpdated website recipe docs, FAQ, and third-party plugins page (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1783\"\u003e#1783\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🏗️ Internal\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpdated \u003ccode\u003escripts/scaffold-rule.ts\u003c/code\u003e and the rule request issue template to match the new documentation structure (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1782\"\u003e#1782\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/Rel1cx/eslint-react/compare/v5.8.0...v5.8.1\"\u003ehttps://github.com/Rel1cx/eslint-react/compare/v5.8.0...v5.8.1\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev5.8.0 (2026-05-17)\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003ch3\u003e🪄 Improvements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003e\u003ccode\u003ereact-jsx/no-children-prop\u003c/code\u003e\u003c/strong\u003e, \u003cstrong\u003e\u003ccode\u003ereact-jsx/no-children-prop-with-children\u003c/code\u003e\u003c/strong\u003e: Added support for \u003ccode\u003ecreateElement\u003c/code\u003e calls in addition to JSX elements (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1780\"\u003e#1780\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e📝 Documentation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdded \u003ccode\u003eeslint-plugin-perfectionist\u003c/code\u003e to the third-party plugins documentation page (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1778\"\u003e#1778\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🏗️ Internal\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eBumped \u003ccode\u003eimport-integrity-lint\u003c/code\u003e to 1.0.1.\u003c/li\u003e\n\u003cli\u003eFixed multiple versions of \u003ccode\u003etypescript-eslint\u003c/code\u003e and \u003ccode\u003eimport-integrity-lint\u003c/code\u003e in the workspace (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1776\"\u003e#1776\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eIncreased pnpm \u003ccode\u003eminimumReleaseAge\u003c/code\u003e to 3 days and updated lockfile (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1779\"\u003e#1779\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eRemoved \u003ccode\u003e.repos\u003c/code\u003e directory references from config files (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1773\"\u003e#1773\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eRemoved obsolete maintenance scripts (\u003ccode\u003ecreate-spec-alignment-issues.sh\u003c/code\u003e, \u003ccode\u003emigrate-labels.sh\u003c/code\u003e) (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1777\"\u003e#1777\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eReplaced \u003ccode\u003eeslint-plugin-fast-import\u003c/code\u003e with \u003ccode\u003eimport-integrity-lint\u003c/code\u003e (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1774\"\u003e#1774\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eSimplified the publish CI workflow by skipping install scripts and removing the lint step (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1775\"\u003e#1775\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/Rel1cx/eslint-react/compare/v5.7.10...v5.8.0\"\u003ehttps://github.com/Rel1cx/eslint-react/compare/v5.7.10...v5.8.0\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev5.7.10 (2026-05-16)\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003ch3\u003e🐞 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003e\u003ccode\u003ereact-x/no-leaked-conditional-rendering\u003c/code\u003e\u003c/strong\u003e, \u003cstrong\u003e\u003ccode\u003ereact-x/set-state-in-effect\u003c/code\u003e\u003c/strong\u003e: Added cycle detection to prevent stack overflow in recursive function analysis (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1769\"\u003e#1769\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e📝 Documentation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdded \u003ccode\u003ethird-party-plugins.mdx\u003c/code\u003e documentation page.\u003c/li\u003e\n\u003cli\u003eAdded spec diff and compiler test fixtures for \u003ccode\u003ereact-x/globals\u003c/code\u003e rule.\u003c/li\u003e\n\u003cli\u003eUpdated ESLint Stylistic link to rules anchor.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/Rel1cx/eslint-react/blob/main/CHANGELOG.md\"\u003e@​eslint-react/eslint-plugin's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev5.8.1 (2026-05-18)\u003c/h2\u003e\n\u003ch3\u003e📝 Documentation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eRestructured rule documentation across all plugins (\u003ccode\u003eeslint-plugin-react-x\u003c/code\u003e, \u003ccode\u003eeslint-plugin-react-dom\u003c/code\u003e, \u003ccode\u003eeslint-plugin-react-jsx\u003c/code\u003e, \u003ccode\u003eeslint-plugin-react-web-api\u003c/code\u003e, \u003ccode\u003eeslint-plugin-react-naming-convention\u003c/code\u003e, \u003ccode\u003eeslint-plugin-react-debug\u003c/code\u003e, \u003ccode\u003eeslint-plugin-react-rsc\u003c/code\u003e) from the \u003ccode\u003eCommon Violations / Invalid / Valid\u003c/code\u003e format to the new \u003ccode\u003eExamples / scenario-based / Troubleshooting / Further Reading\u003c/code\u003e format (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1784\"\u003e#1784\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eUpdated README tagline and description, removed the Benchmark section, and fixed migration guide links (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1783\"\u003e#1783\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eUpdated website recipe docs, FAQ, and third-party plugins page (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1783\"\u003e#1783\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🏗️ Internal\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpdated \u003ccode\u003escripts/scaffold-rule.ts\u003c/code\u003e and the rule request issue template to match the new documentation structure (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1782\"\u003e#1782\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/Rel1cx/eslint-react/compare/v5.8.0...v5.8.1\"\u003ehttps://github.com/Rel1cx/eslint-react/compare/v5.8.0...v5.8.1\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev5.8.0 (2026-05-17)\u003c/h2\u003e\n\u003ch3\u003e🪄 Improvements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003e\u003ccode\u003ereact-jsx/no-children-prop\u003c/code\u003e\u003c/strong\u003e, \u003cstrong\u003e\u003ccode\u003ereact-jsx/no-children-prop-with-children\u003c/code\u003e\u003c/strong\u003e: Added support for \u003ccode\u003ecreateElement\u003c/code\u003e calls in addition to JSX elements (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1780\"\u003e#1780\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e📝 Documentation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdded \u003ccode\u003eeslint-plugin-perfectionist\u003c/code\u003e to the third-party plugins documentation page (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1778\"\u003e#1778\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🏗️ Internal\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eBumped \u003ccode\u003eimport-integrity-lint\u003c/code\u003e to 1.0.1.\u003c/li\u003e\n\u003cli\u003eFixed multiple versions of \u003ccode\u003etypescript-eslint\u003c/code\u003e and \u003ccode\u003eimport-integrity-lint\u003c/code\u003e in the workspace (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1776\"\u003e#1776\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eIncreased pnpm \u003ccode\u003eminimumReleaseAge\u003c/code\u003e to 3 days and updated lockfile (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1779\"\u003e#1779\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eRemoved \u003ccode\u003e.repos\u003c/code\u003e directory references from config files (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1773\"\u003e#1773\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eRemoved obsolete maintenance scripts (\u003ccode\u003ecreate-spec-alignment-issues.sh\u003c/code\u003e, \u003ccode\u003emigrate-labels.sh\u003c/code\u003e) (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1777\"\u003e#1777\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eReplaced \u003ccode\u003eeslint-plugin-fast-import\u003c/code\u003e with \u003ccode\u003eimport-integrity-lint\u003c/code\u003e (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1774\"\u003e#1774\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eSimplified the publish CI workflow by skipping install scripts and removing the lint step (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1775\"\u003e#1775\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/Rel1cx/eslint-react/compare/v5.7.10...v5.8.0\"\u003ehttps://github.com/Rel1cx/eslint-react/compare/v5.7.10...v5.8.0\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev5.7.10 (2026-05-16)\u003c/h2\u003e\n\u003ch3\u003e🐞 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003e\u003ccode\u003ereact-x/no-leaked-conditional-rendering\u003c/code\u003e\u003c/strong\u003e, \u003cstrong\u003e\u003ccode\u003ereact-x/set-state-in-effect\u003c/code\u003e\u003c/strong\u003e: Added cycle detection to prevent stack overflow in recursive function analysis (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1769\"\u003e#1769\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e📝 Documentation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdded \u003ccode\u003ethird-party-plugins.mdx\u003c/code\u003e documentation page.\u003c/li\u003e\n\u003cli\u003eAdded spec diff and compiler test fixtures for \u003ccode\u003ereact-x/globals\u003c/code\u003e rule.\u003c/li\u003e\n\u003cli\u003eUpdated ESLint Stylistic link to rules anchor.\u003c/li\u003e\n\u003cli\u003eUpdated community projects (added Obsidian Copilot).\u003c/li\u003e\n\u003cli\u003eAdded redirects and simplified removed docs page.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/94549a1e3496d2ef3dff60b6332f17656469b2f0\"\u003e\u003ccode\u003e94549a1\u003c/code\u003e\u003c/a\u003e release: 5.8.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/2821bb11803f5ef8c8021d3deed84183ce136a24\"\u003e\u003ccode\u003e2821bb1\u003c/code\u003e\u003c/a\u003e docs: restructure rule documentation to new Examples-based format (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1784\"\u003e#1784\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/4317c311d29c5d0c9aa8b48d335172f60b4d4487\"\u003e\u003ccode\u003e4317c31\u003c/code\u003e\u003c/a\u003e release: 5.8.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/e060debd13fc873a83ed9ac143d559bf5e0c3fac\"\u003e\u003ccode\u003ee060deb\u003c/code\u003e\u003c/a\u003e release: 5.7.10\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/752585a5125e2d53c7ced0df2e58fe8960d3cbd2\"\u003e\u003ccode\u003e752585a\u003c/code\u003e\u003c/a\u003e release: 5.7.10-beta.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/24a9443a01f832ba3b960a3f67fbf38a3de490ca\"\u003e\u003ccode\u003e24a9443\u003c/code\u003e\u003c/a\u003e release: 5.7.10-next.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/50d7dc0bcfc01cfc9bf9d5190db218fb9719a869\"\u003e\u003ccode\u003e50d7dc0\u003c/code\u003e\u003c/a\u003e release: 5.7.8\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/be9e7865cac798b3111840ced8c81d38ec660f4d\"\u003e\u003ccode\u003ebe9e786\u003c/code\u003e\u003c/a\u003e release: 5.7.8-beta.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/e14aabca9a1ed01e08fdd3dd55627cb05f9c1c1f\"\u003e\u003ccode\u003ee14aabc\u003c/code\u003e\u003c/a\u003e release: 5.7.8-next.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/7be40890022163dfa1b8a40b5a1ac25354d2e7db\"\u003e\u003ccode\u003e7be4089\u003c/code\u003e\u003c/a\u003e release: 5.7.7\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/Rel1cx/eslint-react/commits/v5.8.1/plugins/eslint-plugin\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@eslint/js` from 9.39.2 to 10.0.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/eslint/eslint/releases\"\u003e@​eslint/js's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev10.0.1\u003c/h2\u003e\n\u003ch2\u003eBug Fixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/c87d5bded54c5cf491eb04c24c9d09bbbd42c23e\"\u003e\u003ccode\u003ec87d5bd\u003c/code\u003e\u003c/a\u003e fix: update eslint (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20531\"\u003e#20531\u003c/a\u003e) (renovate[bot])\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/d84100115c14691691058f00779c94e74fca946a\"\u003e\u003ccode\u003ed841001\u003c/code\u003e\u003c/a\u003e fix: update \u003ccode\u003eminimatch\u003c/code\u003e to \u003ccode\u003e10.2.1\u003c/code\u003e to address security vulnerabilities (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20519\"\u003e#20519\u003c/a\u003e) (루밀LuMir)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/04c21475b3004904948f02049f2888b401d82c78\"\u003e\u003ccode\u003e04c2147\u003c/code\u003e\u003c/a\u003e fix: update error message for unused suppressions (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20496\"\u003e#20496\u003c/a\u003e) (fnx)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/38b089c1726feac0e31a31d47941bd99e29ce003\"\u003e\u003ccode\u003e38b089c\u003c/code\u003e\u003c/a\u003e fix: update dependency \u003ccode\u003e@​eslint/config-array\u003c/code\u003e to ^0.23.1 (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20484\"\u003e#20484\u003c/a\u003e) (renovate[bot])\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eDocumentation\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/5b3dbce50a1404a9f118afe810cefeee79388a2a\"\u003e\u003ccode\u003e5b3dbce\u003c/code\u003e\u003c/a\u003e docs: add AI acknowledgement section to templates (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20431\"\u003e#20431\u003c/a\u003e) (루밀LuMir)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/6f23076037d5879f20fb3be2ef094293b1e8d38c\"\u003e\u003ccode\u003e6f23076\u003c/code\u003e\u003c/a\u003e docs: toggle nav in no-JS mode (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20476\"\u003e#20476\u003c/a\u003e) (Tanuj Kanti)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/b69cfb32a16c5d5e9986390d484fae1d21e406f9\"\u003e\u003ccode\u003eb69cfb3\u003c/code\u003e\u003c/a\u003e docs: Update README (GitHub Actions Bot)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eChores\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/e5c281ffd038a3a7a3e5364db0b9378e0ad83020\"\u003e\u003ccode\u003ee5c281f\u003c/code\u003e\u003c/a\u003e chore: updates for v9.39.3 release (Jenkins)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/8c3832adb77cd993b4a24891900d5eeaaf093cdc\"\u003e\u003ccode\u003e8c3832a\u003c/code\u003e\u003c/a\u003e chore: update \u003ccode\u003e@​typescript-eslint/parser\u003c/code\u003e to ^8.56.0 (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20514\"\u003e#20514\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/8330d238ae6adb68bb6a1c9381e38cfedd990d94\"\u003e\u003ccode\u003e8330d23\u003c/code\u003e\u003c/a\u003e test: add tests for config-api (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20493\"\u003e#20493\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/37d6e91e88fa6a2ca6d8726679096acff21ba6cc\"\u003e\u003ccode\u003e37d6e91\u003c/code\u003e\u003c/a\u003e chore: remove eslint v10 prereleases from eslint-config-eslint deps (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20494\"\u003e#20494\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/da7cd0e79197ad16e17052eef99df141de6dbfb1\"\u003e\u003ccode\u003eda7cd0e\u003c/code\u003e\u003c/a\u003e refactor: cleanup error message templates (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20479\"\u003e#20479\u003c/a\u003e) (Francesco Trotta)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/84fb885d49ac810e79a9491276b4828b53d913e5\"\u003e\u003ccode\u003e84fb885\u003c/code\u003e\u003c/a\u003e chore: package.json update for \u003ccode\u003e@​eslint/js\u003c/code\u003e release (Jenkins)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/1f667344b57c4c09b548d94bcfac1f91b6e5c63d\"\u003e\u003ccode\u003e1f66734\u003c/code\u003e\u003c/a\u003e chore: add \u003ccode\u003eeslint\u003c/code\u003e to \u003ccode\u003epeerDependencies\u003c/code\u003e of \u003ccode\u003e@eslint/js\u003c/code\u003e (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20467\"\u003e#20467\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev10.0.0\u003c/h2\u003e\n\u003ch2\u003eBreaking Changes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/f9e54f43a5e497cdfa179338b431093245cb787b\"\u003e\u003ccode\u003ef9e54f4\u003c/code\u003e\u003c/a\u003e feat!: estimate rule-tester failure location (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20420\"\u003e#20420\u003c/a\u003e) (ST-DDT)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/a176319d8ade1a7d9b2d7fb8f038f55a2662325f\"\u003e\u003ccode\u003ea176319\u003c/code\u003e\u003c/a\u003e feat!: replace \u003ccode\u003echalk\u003c/code\u003e with \u003ccode\u003estyleText\u003c/code\u003e and add \u003ccode\u003ecolor\u003c/code\u003e to \u003ccode\u003eResultsMeta\u003c/code\u003e (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20227\"\u003e#20227\u003c/a\u003e) (루밀LuMir)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/c7046e6c1e03c4ca0eee4888a1f2eba4c6454f84\"\u003e\u003ccode\u003ec7046e6\u003c/code\u003e\u003c/a\u003e feat!: enable JSX reference tracking (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20152\"\u003e#20152\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/fa31a608901684fbcd9906d1907e66561d16e5aa\"\u003e\u003ccode\u003efa31a60\u003c/code\u003e\u003c/a\u003e feat!: add \u003ccode\u003ename\u003c/code\u003e to configs (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20015\"\u003e#20015\u003c/a\u003e) (Kirk Waiblinger)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/3383e7ec9028166cafc8ea7986c2f7498d0049f0\"\u003e\u003ccode\u003e3383e7e\u003c/code\u003e\u003c/a\u003e fix!: remove deprecated \u003ccode\u003eSourceCode\u003c/code\u003e methods (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20137\"\u003e#20137\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/501abd0e916a35554c58b7c0365537f1fa3880ce\"\u003e\u003ccode\u003e501abd0\u003c/code\u003e\u003c/a\u003e feat!: update dependency minimatch to v10 (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20246\"\u003e#20246\u003c/a\u003e) (renovate[bot])\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/ca4d3b40085de47561f89656a2207d09946ed45e\"\u003e\u003ccode\u003eca4d3b4\u003c/code\u003e\u003c/a\u003e fix!: stricter rule tester assertions for valid test cases (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20125\"\u003e#20125\u003c/a\u003e) (唯然)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/96512a66c86402fb0538cdcb6cd30b9073f6bf3b\"\u003e\u003ccode\u003e96512a6\u003c/code\u003e\u003c/a\u003e fix!: Remove deprecated rule context methods (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20086\"\u003e#20086\u003c/a\u003e) (Nicholas C. Zakas)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/c69fdacdb2e886b9d965568a397aa8220db3fe90\"\u003e\u003ccode\u003ec69fdac\u003c/code\u003e\u003c/a\u003e feat!: remove eslintrc support (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20037\"\u003e#20037\u003c/a\u003e) (Francesco Trotta)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/208b5cc34a8374ff81412b5bec2e0800eebfbd04\"\u003e\u003ccode\u003e208b5cc\u003c/code\u003e\u003c/a\u003e feat!: Use \u003ccode\u003eScopeManager#addGlobals()\u003c/code\u003e (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20132\"\u003e#20132\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/a2ee188ea7a38a0c6155f3d39e2b00e1d0f36e14\"\u003e\u003ccode\u003ea2ee188\u003c/code\u003e\u003c/a\u003e fix!: add \u003ccode\u003euniqueItems: true\u003c/code\u003e in \u003ccode\u003eno-invalid-regexp\u003c/code\u003e option (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20155\"\u003e#20155\u003c/a\u003e) (Tanuj Kanti)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/a89059dbf2832d417dd493ee81483227ec44e4ab\"\u003e\u003ccode\u003ea89059d\u003c/code\u003e\u003c/a\u003e feat!: Program range span entire source text (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20133\"\u003e#20133\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/39a6424373d915fa9de0d7b0caba9a4dc3da9b53\"\u003e\u003ccode\u003e39a6424\u003c/code\u003e\u003c/a\u003e fix!: assert 'text' is a string across all RuleFixer methods (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20082\"\u003e#20082\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/f28fbf846244e043c92b355b224d121b06140b44\"\u003e\u003ccode\u003ef28fbf8\u003c/code\u003e\u003c/a\u003e fix!: Deprecate \u003ccode\u003e\u0026quot;always\u0026quot;\u003c/code\u003e and \u003ccode\u003e\u0026quot;as-needed\u0026quot;\u003c/code\u003e options of the \u003ccode\u003eradix\u003c/code\u003e rule (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20223\"\u003e#20223\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/aa3fb2b233e929b37220be940575f42c280e0b98\"\u003e\u003ccode\u003eaa3fb2b\u003c/code\u003e\u003c/a\u003e fix!: tighten \u003ccode\u003efunc-names\u003c/code\u003e schema (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20119\"\u003e#20119\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/f6c0ed0311dcfee853367d5068c765d066e6b756\"\u003e\u003ccode\u003ef6c0ed0\u003c/code\u003e\u003c/a\u003e feat!: report \u003ccode\u003eeslint-env\u003c/code\u003e comments as errors (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20128\"\u003e#20128\u003c/a\u003e) (Francesco Trotta)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/4bf739fb533e59f7f0a66b65f7bc80be0f37d8db\"\u003e\u003ccode\u003e4bf739f\u003c/code\u003e\u003c/a\u003e fix!: remove deprecated \u003ccode\u003eLintMessage#nodeType\u003c/code\u003e and \u003ccode\u003eTestCaseError#type\u003c/code\u003e (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20096\"\u003e#20096\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/523c076866400670fb2192a3f55dbf7ad3469247\"\u003e\u003ccode\u003e523c076\u003c/code\u003e\u003c/a\u003e feat!: drop support for jiti \u0026lt; 2.2.0 (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20016\"\u003e#20016\u003c/a\u003e) (michael faith)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/454a292c95f34dad232411ddac06408e6383bb64\"\u003e\u003ccode\u003e454a292\u003c/code\u003e\u003c/a\u003e feat!: update \u003ccode\u003eeslint:recommended\u003c/code\u003e configuration (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20210\"\u003e#20210\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/4f880ee02992e1bf0e96ebaba679985e2d1295f1\"\u003e\u003ccode\u003e4f880ee\u003c/code\u003e\u003c/a\u003e feat!: remove \u003ccode\u003ev10_*\u003c/code\u003e and inactive \u003ccode\u003eunstable_*\u003c/code\u003e flags (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20225\"\u003e#20225\u003c/a\u003e) (sethamus)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/f18115c363a4ac7671a4c7f30ee13d57ebba330f\"\u003e\u003ccode\u003ef18115c\u003c/code\u003e\u003c/a\u003e feat!: \u003ccode\u003eno-shadow-restricted-names\u003c/code\u003e report \u003ccode\u003eglobalThis\u003c/code\u003e by default (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20027\"\u003e#20027\u003c/a\u003e) (sethamus)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/c6358c31fbd3937b92d89be2618ffdf5a774604e\"\u003e\u003ccode\u003ec6358c3\u003c/code\u003e\u003c/a\u003e feat!: Require Node.js \u003ccode\u003e^20.19.0 || ^22.13.0 || \u0026gt;=24\u003c/code\u003e (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20160\"\u003e#20160\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eFeatures\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/bff9091927811497dbf066b0e3b85ecb37d43822\"\u003e\u003ccode\u003ebff9091\u003c/code\u003e\u003c/a\u003e feat: handle \u003ccode\u003eArray.fromAsync\u003c/code\u003e in \u003ccode\u003earray-callback-return\u003c/code\u003e (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20457\"\u003e#20457\u003c/a\u003e) (Francesco Trotta)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/290c594bb50c439fb71bc75521ee5360daa8c222\"\u003e\u003ccode\u003e290c594\u003c/code\u003e\u003c/a\u003e feat: add \u003ccode\u003eself\u003c/code\u003e to \u003ccode\u003eno-implied-eval\u003c/code\u003e rule (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20468\"\u003e#20468\u003c/a\u003e) (sethamus)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/43677de07ebd6e14bfac40a46ad749ba783c45f2\"\u003e\u003ccode\u003e43677de\u003c/code\u003e\u003c/a\u003e feat: fix handling of function and class expression names in \u003ccode\u003eno-shadow\u003c/code\u003e (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20432\"\u003e#20432\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/84fb885d49ac810e79a9491276b4828b53d913e5\"\u003e\u003ccode\u003e84fb885\u003c/code\u003e\u003c/a\u003e chore: package.json update for \u003ccode\u003e@​eslint/js\u003c/code\u003e release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/1f667344b57c4c09b548d94bcfac1f91b6e5c63d\"\u003e\u003ccode\u003e1f66734\u003c/code\u003e\u003c/a\u003e chore: add \u003ccode\u003eeslint\u003c/code\u003e to \u003ccode\u003epeerDependencies\u003c/code\u003e of \u003ccode\u003e@eslint/js\u003c/code\u003e (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20467\"\u003e#20467\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/f3fbc2f60cbe2c718364feb8c3fc0452c0df3c56\"\u003e\u003ccode\u003ef3fbc2f\u003c/code\u003e\u003c/a\u003e chore: set \u003ccode\u003e@eslint/js\u003c/code\u003e version to 10.0.0 to skip releasing it (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20466\"\u003e#20466\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/b4b3127f8542c599ce2dea804b6582ebc40c993d\"\u003e\u003ccode\u003eb4b3127\u003c/code\u003e\u003c/a\u003e chore: package.json update for \u003ccode\u003e@​eslint/js\u003c/code\u003e release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/0b14059491d830a49b3577931f4f68fbcfce6be5\"\u003e\u003ccode\u003e0b14059\u003c/code\u003e\u003c/a\u003e chore: package.json update for \u003ccode\u003e@​eslint/js\u003c/code\u003e release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/fa31a608901684fbcd9906d1907e66561d16e5aa\"\u003e\u003ccode\u003efa31a60\u003c/code\u003e\u003c/a\u003e feat!: add \u003ccode\u003ename\u003c/code\u003e to configs (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20015\"\u003e#20015\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/1e2cad5f6fa47ed6ed89d2a29798dda926d50990\"\u003e\u003ccode\u003e1e2cad5\u003c/code\u003e\u003c/a\u003e chore: package.json update for \u003ccode\u003e@​eslint/js\u003c/code\u003e release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/454a292c95f34dad232411ddac06408e6383bb64\"\u003e\u003ccode\u003e454a292\u003c/code\u003e\u003c/a\u003e feat!: update \u003ccode\u003eeslint:recommended\u003c/code\u003e configuration (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20210\"\u003e#20210\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/c6358c31fbd3937b92d89be2618ffdf5a774604e\"\u003e\u003ccode\u003ec6358c3\u003c/code\u003e\u003c/a\u003e feat!: Require Node.js \u003ccode\u003e^20.19.0 || ^22.13.0 || \u0026gt;=24\u003c/code\u003e (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20160\"\u003e#20160\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/eslint/eslint/commits/v10.0.1/packages/js\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@typescript-eslint/eslint-plugin` from 8.56.0 to 8.59.3\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases\"\u003e@​typescript-eslint/eslint-plugin's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev8.59.3\u003c/h2\u003e\n\u003ch2\u003e8.59.3 (2026-05-11)\u003c/h2\u003e\n\u003cp\u003eThis was a version bump only, there were no code changes.\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.3\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003ev8.59.2\u003c/h2\u003e\n\u003ch2\u003e8.59.2 (2026-05-04)\u003c/h2\u003e\n\u003ch3\u003e🩹 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unsafe-type-assertion] handle crash on recursive template literal types (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12150\"\u003e#12150\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-deprecated] object destructuring values should be treated as declarations (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12292\"\u003e#12292\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003erule-tester:\u003c/strong\u003e add TypeScript as a peer dependency (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12288\"\u003e#12288\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e❤️ Thank You\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eDariusz Czajkowski\u003c/li\u003e\n\u003cli\u003eDima Barabash\u003c/li\u003e\n\u003cli\u003eKirk Waiblinger \u003ca href=\"https://github.com/kirkwaiblinger\"\u003e\u003ccode\u003e@​kirkwaiblinger\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.2\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003ev8.59.1\u003c/h2\u003e\n\u003ch2\u003e8.59.1 (2026-04-27)\u003c/h2\u003e\n\u003ch3\u003e🩹 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-type-assertion] fix crash \u0026quot;TypeError: checker.getTypeArguments is not a function\u0026quot; (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12246\"\u003e#12246\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-type-assertion] preserve index signatures in undefined unions (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12257\"\u003e#12257\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-type-assertion] preserve phantom type arguments in generic inference (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12269\"\u003e#12269\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-type-assertion] avoid false positive in logical assignment assertions (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12278\"\u003e#12278\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-type-arguments] handle instantiation expressions (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12220\"\u003e#12220\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-condition] treat void as nullish in no-unnecessary-condition (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12241\"\u003e#12241\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e❤️ Thank You\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eanasm266 \u003ca href=\"https://github.com/anasm266\"\u003e\u003ccode\u003e@​anasm266\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAnshika Jain \u003ca href=\"https://github.com/Anshikakalpana\"\u003e\u003ccode\u003e@​Anshikakalpana\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUlrich Stark\u003c/li\u003e\n\u003cli\u003eyugo innami \u003ca href=\"https://github.com/nami8824\"\u003e\u003ccode\u003e@​nami8824\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.1\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/CHANGELOG.md\"\u003e@​typescript-eslint/eslint-plugin's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e8.59.3 (2026-05-11)\u003c/h2\u003e\n\u003cp\u003eThis was a version bump only for eslint-plugin to align it with other projects, there were no code changes.\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.3\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003e8.59.2 (2026-05-04)\u003c/h2\u003e\n\u003ch3\u003e🩹 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-deprecated] object destructuring values should be treated as declarations (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12292\"\u003e#12292\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unsafe-type-assertion] handle crash on recursive template literal types (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12150\"\u003e#12150\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e❤️ Thank You\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eDima Barabash\u003c/li\u003e\n\u003cli\u003eKirk Waiblinger \u003ca href=\"https://github.com/kirkwaiblinger\"\u003e\u003ccode\u003e@​kirkwaiblinger\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.2\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003e8.59.1 (2026-04-27)\u003c/h2\u003e\n\u003ch3\u003e🩹 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-condition] treat void as nullish in no-unnecessary-condition (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12241\"\u003e#12241\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-type-arguments] handle instantiation expressions (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12220\"\u003e#12220\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-type-assertion] avoid false positive in logical assignment assertions (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12278\"\u003e#12278\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-type-assertion] preserve phantom type arguments in generic inference (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12269\"\u003e#12269\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-type-assertion] preserve index signatures in undefined unions (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12257\"\u003e#12257\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-type-assertion] fix crash \u0026quot;TypeError: checker.getTypeArguments is not a function\u0026quot; (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12246\"\u003e#12246\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e❤️ Thank You\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eanasm266 \u003ca href=\"https://github.com/anasm266\"\u003e\u003ccode\u003e@​anasm266\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAnshika Jain \u003ca href=\"https://github.com/Anshikakalpana\"\u003e\u003ccode\u003e@​Anshikakalpana\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUlrich Stark\u003c/li\u003e\n\u003cli\u003eyugo innami \u003ca href=\"https://github.com/nami8824\"\u003e\u003ccode\u003e@​nami8824\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.1\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003e8.59.0 (2026-04-20)\u003c/h2\u003e\n\u003ch3\u003e🚀 Features\u003c/h3\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/48e13c0261e3cb1bf4f4dfaa462cdb3a56ef7383\"\u003e\u003ccode\u003e48e13c0\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.59.3\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/e26dc8003ababf078aad4df17765ee4cea30644c\"\u003e\u003ccode\u003ee26dc80\u003c/code\u003e\u003c/a\u003e docs: update stale links to latest (\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin/issues/12313\"\u003e#12313\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/44f9625336841a8ee3eb01a9e02e49b1d7b12648\"\u003e\u003ccode\u003e44f9625\u003c/code\u003e\u003c/a\u003e chore(deps): update vitest monorepo to v4.1.5 (\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin/issues/12307\"\u003e#12307\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/2ec35f1760aade4df4c631d76d78c7ed5e136333\"\u003e\u003ccode\u003e2ec35f1\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.59.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/ec3ef25390f7daf5a9ff33a60282bdbbb49ab0f3\"\u003e\u003ccode\u003eec3ef25\u003c/code\u003e\u003c/a\u003e test: make no-useless-empty-export tests fully static (\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin/issues/12260\"\u003e#12260\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/60d0a513870d833617374ff8ea256d86ca3cbbbb\"\u003e\u003ccode\u003e60d0a51\u003c/code\u003e\u003c/a\u003e chore(eslint-plugin): switch auto-generated test cases to hand-written in no-...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/5c53da230a70aba7d6f3d6474b5d249b430a95d0\"\u003e\u003ccode\u003e5c53da2\u003c/code\u003e\u003c/a\u003e fix(eslint-plugin): [no-deprecated] object destructuring values should be tre...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/80c28a1ada3f975a932a02587cefee632ccf6550\"\u003e\u003ccode\u003e80c28a1\u003c/code\u003e\u003c/a\u003e fix(eslint-plugin): [no-unsafe-type-assertion] handle crash on recursive temp...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/b7b2670123f76419630f88f3a807f85b7c535230\"\u003e\u003ccode\u003eb7b2670\u003c/code\u003e\u003c/a\u003e test: make no-this-alias tests fully static (\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin/issues/12258\"\u003e#12258\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/52457932e5507b5ca01e720a541f3f8d01e09b9d\"\u003e\u003ccode\u003e5245793\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.59.1\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commits/v8.59.3/packages/eslint-plugin\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@typescript-eslint/parser` from 8.56.0 to 8.59.3\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases\"\u003e@​typescript-eslint/parser's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev8.59.3\u003c/h2\u003e\n\u003ch2\u003e8.59.3 (2026-05-11)\u003c/h2\u003e\n\u003cp\u003eThis was a version bump only, there were no code changes.\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.3\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003ev8.59.2\u003c/h2\u003e\n\u003ch2\u003e8.59.2 (2026-05-04)\u003c/h2\u003e\n\u003ch3\u003e🩹 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unsafe-type-assertion] handle crash on recursive template literal types (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12150\"\u003e#12150\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-deprecated] object destructuring values should be treated as declarations (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12292\"\u003e#12292\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003erule-tester:\u003c/strong\u003e add TypeScript as a peer dependency (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12288\"\u003e#12288\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e❤️ Thank You\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eDariusz Czajkowski\u003c/li\u003e\n\u003cli\u003eDima Barabash\u003c/li\u003e\n\u003cli\u003eKirk Waiblinger \u003ca href=\"https://github.com/kirkwaiblinger\"\u003e\u003ccode\u003e@​kirkwaiblinger\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.2\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003ev8.59.1\u003c/h2\u003e\n\u003ch2\u003e8.59.1 (2026-04-27)\u003c/h2\u003e\n\u003ch3\u003e🩹 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-type-assertion] fix crash \u0026quot;TypeError: checker.getTypeArguments is not a function\u0026quot; (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12246\"\u003e#12246\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-type-assertion] preserve index signatures in undefined unions (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12257\"\u003e#12257\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-type-assertion] preserve phantom type arguments in generic inference (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12269\"\u003e#12269\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-type-assertion] avoid false positive in logical assignment assertions (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12278\"\u003e#12278\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-type-arguments] handle instantiation expressions (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12220\"\u003e#12220\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-condition] treat void as nullish in no-unnecessary-condition (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12241\"\u003e#12241\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e❤️ Thank You\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eanasm266 \u003ca href=\"https://github.com/anasm266\"\u003e\u003ccode\u003e@​anasm266\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAnshika Jain \u003ca href=\"https://github.com/Anshikakalpana\"\u003e\u003ccode\u003e@​Anshikakalpana\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUlrich Stark\u003c/li\u003e\n\u003cli\u003eyugo innami \u003ca href=\"https://github.com/nami8824\"\u003e\u003ccode\u003e@​nami8824\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.1\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/parser/CHANGELOG.md\"\u003e@​typescript-eslint/parser's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e8.59.3 (2026-05-11)\u003c/h2\u003e\n\u003cp\u003eThis was a version bump only for parser to align it with other projects, there were no code changes.\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.3\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003e8.59.2 (2026-05-04)\u003c/h2\u003e\n\u003cp\u003eThis was a version bump only for parser to align it with other projects, there were no code changes.\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.2\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003e8.59.1 (2026-04-27)\u003c/h2\u003e\n\u003cp\u003eThis was a version bump only for parser to align it with other projects, there were no code changes.\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.1\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003e8.59.0 (2026-04-20)\u003c/h2\u003e\n\u003cp\u003eThis was a version bump only for parser to align it with other projects, there were no code changes.\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.0\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003e8.58.2 (2026-04-13)\u003c/h2\u003e\n\u003ch3\u003e🩹 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eremove tsbuildinfo cache file from published packages (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12187\"\u003e#12187\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e❤️ Thank You\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAbhijeet Singh \u003ca href=\"https://github.com/cseas\"\u003e\u003ccode\u003e@​cseas\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.58.2\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003e8.58.1 (2026-04-08)\u003c/h2\u003e\n\u003cp\u003eThis was a version bump only for parser to align it with other projects, there were no code changes.\u003c/p\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/48e13c0261e3cb1bf4f4dfaa462cdb3a56ef7383\"\u003e\u003ccode\u003e48e13c0\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.59.3\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/44f9625336841a8ee3eb01a9e02e49b1d7b12648\"\u003e\u003ccode\u003e44f9625\u003c/code\u003e\u003c/a\u003e chore(deps): update vitest monorepo to v4.1.5 (\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/parser/issues/12307\"\u003e#12307\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/2ec35f1760aade4df4c631d76d78c7ed5e136333\"\u003e\u003ccode\u003e2ec35f1\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.59.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/52457932e5507b5ca01e720a541f3f8d01e09b9d\"\u003e\u003ccode\u003e5245793\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.59.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/ea9ae4f8817873480e3501145059f63e39e8d8a1\"\u003e\u003ccode\u003eea9ae4f\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.59.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/90c2803a4c250e0343598d41e973f95e743bf4ce\"\u003e\u003ccode\u003e90c2803\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.58.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/be6b49a02d68db9bdc8985e7e9e1598700fda2fa\"\u003e\u003ccode\u003ebe6b49a\u003c/code\u003e\u003c/a\u003e fix: remove tsbuildinfo cache file from published packages (\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/parser/issues/12187\"\u003e#12187\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/5311ed312eadf4e238324f2726ae0b1f3f2206e6\"\u003e\u003ccode\u003e5311ed3\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.58.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/493341709fe7d1d6433332b7bd2724e3332c7cdf\"\u003e\u003ccode\u003e4933417\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.58.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/8cde2d06fb9bc591a4c93452509ddbd600c76a35\"\u003e\u003ccode\u003e8cde2d0\u003c/code\u003e\u003c/a\u003e feat: support TypeScript 6 (\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/parser/issues/12124\"\u003e#12124\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commits/v8.59.3/packages/parser\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `eslint` from 9.39.2 to 10.4.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/eslint/eslint/releases\"\u003eeslint's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev10.4.0\u003c/h2\u003e\n\u003ch2\u003eFeatures\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/1a45ec596af1dd5f880e6874cb8f24dafb6a7ecf\"\u003e\u003ccode\u003e1a45ec5\u003c/code\u003e\u003c/a\u003e feat: check sequence expressions in \u003ccode\u003efor-direction\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20701\"\u003e#20701\u003c/a\u003e) (kuldeep kumar)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/450040bd89b989b3531824c6be45feb5fe3d936b\"\u003e\u003ccode\u003e450040b\u003c/code\u003e\u003c/a\u003e feat: add \u003ccode\u003eincludeIgnoreFile()\u003c/code\u003e to \u003ccode\u003eeslint/config\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20735\"\u003e#20735\u003c/a\u003e) (Kirk Waiblinger)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eBug Fixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/544c0c3da589166ad8e5d634f35d3d06701c57be\"\u003e\u003ccode\u003e544c0c3\u003c/code\u003e\u003c/a\u003e fix: escape code path DOT labels in debug output (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20866\"\u003e#20866\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/6799431203f2579632d0870f98ba132067f4040c\"\u003e\u003ccode\u003e6799431\u003c/code\u003e\u003c/a\u003e fix: update dependency \u003ccode\u003e@​eslint/config-helpers\u003c/code\u003e to ^0.6.0 (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20850\"\u003e#20850\u003c/a\u003e) (renovate[bot])\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/f078fef5005dceb14fc162aab7c7200e027688dd\"\u003e\u003ccode\u003ef078fef\u003c/code\u003e\u003c/a\u003e fix: handle non-array deprecated rule replacements (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20825\"\u003e#20825\u003c/a\u003e) (xbinaryx)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eDocumentation\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/7e52a7151fb92eec0e0f67fe4e5ddbd1ccce796f\"\u003e\u003ccode\u003e7e52a71\u003c/code\u003e\u003c/a\u003e docs: add mention of \u003ccode\u003e@eslint-react/eslint-plugin\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20869\"\u003e#20869\u003c/a\u003e) (Pavel)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/db3468ba746407d7f286f18f7ea9db6df0e3bc08\"\u003e\u003ccode\u003edb3468b\u003c/code\u003e\u003c/a\u003e docs: tweak wording around ambiguous CJS-vs-ESM config (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20865\"\u003e#20865\u003c/a\u003e) (Kirk Waiblinger)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/90846643ec6e97d447ae0d831fabe6d17b0a998a\"\u003e\u003ccode\u003e9084664\u003c/code\u003e\u003c/a\u003e docs: Update README (GitHub Actions Bot)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/9cc73875046e3c4b8313644cbb1e99e26b36bd3f\"\u003e\u003ccode\u003e9cc7387\u003c/code\u003e\u003c/a\u003e docs: Update README (GitHub Actions Bot)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/3d7b5484407403817aa9071a394d336d8ea96eb5\"\u003e\u003ccode\u003e3d7b548\u003c/code\u003e\u003c/a\u003e docs: Update README (GitHub Actions Bot)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/191ec3c0a3f94ce0f110df761f0b2b8949011ccb\"\u003e\u003ccode\u003e191ec3c\u003c/code\u003e\u003c/a\u003e docs: Update README (GitHub Actions Bot)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eChores\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/6616856f28fa514a30f87b5539fc100d739a94bf\"\u003e\u003ccode\u003e6616856\u003c/code\u003e\u003c/a\u003e chore: upgrade knip to v6 (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20875\"\u003e#20875\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/d13b084a3ad02f926e9addaa35fc383759ea5554\"\u003e\u003ccode\u003ed13b084\u003c/code\u003e\u003c/a\u003e ci: ensure auto-created PRs run CI (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20860\"\u003e#20860\u003c/a\u003e) (lumir)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/e71c7af86dce9acc1d18cb12d2184309f6841594\"\u003e\u003ccode\u003ee71c7af\u003c/code\u003e\u003c/a\u003e ci: bump pnpm/action-setup from 6.0.5 to 6.0.7 (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20862\"\u003e#20862\u003c/a\u003e) (dependabot[bot])\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/d84393dea170f54191fd20c8268b52c81c0ccd99\"\u003e\u003ccode\u003ed84393d\u003c/code\u003e\u003c/a\u003e test: add unit tests for SuppressionsService.applySuppressions() (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20863\"\u003e#20863\u003c/a\u003e) (kuldeep kumar)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/24db8cb8e6f07fba667121777a15b1785486be94\"\u003e\u003ccode\u003e24db8cb\u003c/code\u003e\u003c/a\u003e test: add tests for SuppressionsService.save() (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20802\"\u003e#20802\u003c/a\u003e) (kuldeep kumar)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/2ef0549cac4a9537e4c3a26b9f3edd4c99476bf6\"\u003e\u003ccode\u003e2ef0549\u003c/code\u003e\u003c/a\u003e chore: update ecosystem plugins (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20857\"\u003e#20857\u003c/a\u003e) (github-actions[bot])\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/a4297918d264d229a06cd96051ef9b91c7b86732\"\u003e\u003ccode\u003ea429791\u003c/code\u003e\u003c/a\u003e ci: remove \u003ccode\u003eeslint-webpack-plugin\u003c/code\u003e types integration test (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20668\"\u003e#20668\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/9e37386aa7f2ce220b2ef74a6afbac5f6b3527c5\"\u003e\u003ccode\u003e9e37386\u003c/code\u003e\u003c/a\u003e chore: replace \u003ccode\u003erecast\u003c/code\u003e with range approach in code-sample-minimizer (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20682\"\u003e#20682\u003c/a\u003e) (Copilot)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/0dd1f9ffc9a07704d46e2a4c8d4ccc0d0908b0c0\"\u003e\u003ccode\u003e0dd1f9f\u003c/code\u003e\u003c/a\u003e test: disable warning for \u003ccode\u003evm.constants.USE_MAIN_CONTEXT_DEFAULT_LOADER\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20845\"\u003e#20845\u003c/a\u003e) (Francesco Trotta)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/9da3c7bc92d9579f8db19ecb56e718538d09db2b\"\u003e\u003ccode\u003e9da3c7b\u003c/code\u003e\u003c/a\u003e refactor: remove deprecated \u003ccode\u003emeta.language\u003c/code\u003e and migrate \u003ccode\u003emeta.dialects\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20716\"\u003e#20716\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/2099ed12a0a74c3d7f0808514362af2499b4fe2b\"\u003e\u003ccode\u003e2099ed1\u003c/code\u003e\u003c/a\u003e refactor: add \u003ccode\u003emeta.defaultOptions\u003c/code\u003e to more rules, enable linting (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20800\"\u003e#20800\u003c/a\u003e) (xbinaryx)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/f1dfbc9ca57196de7092e1888cc99427bd6fe06e\"\u003e\u003ccode\u003ef1dfbc9\u003c/code\u003e\u003c/a\u003e chore: update ecosystem plugins (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20836\"\u003e#20836\u003c/a\u003e) (github-actions[bot])\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/c75941390c14728806cd4baef4f6072f6de78318\"\u003e\u003ccode\u003ec759413\u003c/code\u003e\u003c/a\u003e ci: bump pnpm/action-setup from 6.0.3 to 6.0.5 (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20843\"\u003e#20843\u003c/a\u003e) (dependabot[bot])\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/5b817d6fdc9ae2c35b528dc662b2eca8f40f64aa\"\u003e\u003ccode\u003e5b817d6\u003c/code\u003e\u003c/a\u003e test: add unit tests for lib/shared/ast-utils (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20838\"\u003e#20838\u003c/a\u003e) (kuldeep kumar)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/1c13ae3934c198c494e5958fa3a68b33244ff06a\"\u003e\u003ccode\u003e1c13ae3\u003c/code\u003e\u003c/a\u003e test: add unit tests for lib/shared/severity (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20835\"\u003e#20835\u003c/a\u003e) (kuldeep kumar)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev10.3.0\u003c/h2\u003e\n\u003ch2\u003eFeatures\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/379571a975f2b24d88037b9de2e72ec61d004130\"\u003e\u003ccode\u003e379571a\u003c/code\u003e\u003c/a\u003e feat: add suggestions for no-unused-private-class-members (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20773\"\u003e#20773\u003c/a\u003e) (sethamus)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eBug Fixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/b6ae5cf07b9b51802367539cb24b245b61eaa37c\"\u003e\u003ccode\u003eb6ae5cf\u003c/code\u003e\u003c/a\u003e fix: handle unavailable require cache (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20812\"\u003e#20812\u003c/a\u003e) (Simon Podlipsky)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/6fb3685bcbe9a6f72fd7dfb9129686b6fb96b0bd\"\u003e\u003ccode\u003e6fb3685\u003c/code\u003e\u003c/a\u003e fix: rule suggestions cause continuation in class body (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20787\"\u003e#20787\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eDocumentation\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/32cc7ab4ec653ce89da92deb5c40a9f4fc707fe5\"\u003e\u003ccode\u003e32cc7ab\u003c/code\u003e\u003c/a\u003e docs: fix typos in docs and comments (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20809\"\u003e#20809\u003c/a\u003e) (Tanuj Kanti)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/7f479376a2fa463d823ab762db6bb37ce8d2ee8f\"\u003e\u003ccode\u003e7f47937\u003c/code\u003e\u003c/a\u003e docs: Update README (GitHub Actions Bot)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eChores\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/d32235ec19ceea211fa86452afa383ca05f5c2f9\"\u003e\u003ccode\u003ed32235e\u003c/code\u003e\u003c/a\u003e ci: use pnpm in \u003ccode\u003eeslint-flat-config-utils\u003c/code\u003e type integration test (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20826\"\u003e#20826\u003c/a\u003e) (Francesco Trotta)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/3ffb14ea517de750ed1181579ef844af342e4096\"\u003e\u003ccode\u003e3ffb14e\u003c/code\u003e\u003c/a\u003e chore: clean up typos in comments and JSDoc (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20821\"\u003e#20821\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/452c4010c07dc2e36fe6ec6a8c48298878e86887\"\u003e\u003ccode\u003e452c401\u003c/code\u003e\u003c/a\u003e 10.4.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/b6417e8b55c9525070d6e168b485ce6ff21688ed\"\u003e\u003ccode\u003eb6417e8\u003c/code\u003e\u003c/a\u003e Build: changelog update for 10.4.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/6616856f28fa514a30f87b5539fc100d739a94bf\"\u003e\u003ccode\u003e6616856\u003c/code\u003e\u003c/a\u003e chore: upgrade knip to v6 (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20875\"\u003e#20875\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/d13b084a3ad02f926e9addaa35fc383759ea5554\"\u003e\u003ccode\u003ed13b084\u003c/code\u003e\u003c/a\u003e ci: ensure auto-created PRs run CI (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20860\"\u003e#20860\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/7e52a7151fb92eec0e0f67fe4e5ddbd1ccce796f\"\u003e\u003ccode\u003e7e52a71\u003c/code\u003e\u003c/a\u003e docs: add mention of \u003ccode\u003e@eslint-react/eslint-plugin\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20869\"\u003e#20869\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/e71c7af86dce9acc1d18cb12d2184309f6841594\"\u003e\u003ccode\u003ee71c7af\u003c/code\u003e\u003c/a\u003e ci: bump pnpm/action-setup from 6.0.5 to 6.0.7 (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20862\"\u003e#20862\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/544c0c3da589166ad8e5d634f35d3d06701c57be\"\u003e\u003ccode\u003e544c0c3\u003c/code\u003e\u003c/a\u003e fix: escape code path DOT labels in debug output (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20866\"\u003e#20866\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/db3468ba746407d7f286f18f7ea9db6df0e3bc08\"\u003e\u003ccode\u003edb3468b\u003c/code\u003e\u003c/a\u003e docs: tweak wording around ambiguous CJS-vs-ESM config (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20865\"\u003e#20865\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/d84393dea170f54191fd20c8268b52c81c0ccd99\"\u003e\u003ccode\u003ed84393d\u003c/code\u003e\u003c/a\u003e test: add unit tests for SuppressionsService.applySuppressions() (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20863\"\u003e#20863\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/90846643ec6e97d447ae0d831fabe6d17b0a998a\"\u003e\u003ccode\u003e9084664\u003c/code\u003e\u003c/a\u003e docs: Update README\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/eslint/eslint/compare/v9.39.2...v10.4.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `eslint-plugin-react-hooks` from 7.0.1 to 7.1.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/facebook/react/releases\"\u003eeslint-plugin-react-hooks's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eeslint-plugin-react-hooks@7.1.1 (April 17, 2026)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eNote:\u003c/strong\u003e 7.1.0 accidentally removed the \u003ccode\u003ecomponent-hook-factories\u003c/code\u003e rule, causing errors for users who referenced it in their ESLint config. This is now fixed.\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdd deprecated no-op \u003ccode\u003ecomponent-hook-factories\u003c/code\u003e rule for backwards compatibility. (\u003ca href=\"https://github.com/mofeiZ\"\u003e\u003ccode\u003e@​mofeiZ\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/36307\"\u003e#36307\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eeslint-plugin-react-hooks@7.1.0 (April 16, 2026)\u003c/h2\u003e\n\u003cp\u003eThis release adds ESLint v10 support, improves performance by skipping compilation for non-React files, and includes compiler lint improvements including better \u003ccode\u003eset-state-in-effect\u003c/code\u003e detection, improved ref validation, and more helpful error reporting.\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdd ESLint v10 support. (\u003ca href=\"https://github.com/azat-io\"\u003e\u003ccode\u003e@​azat-io\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/35720\"\u003e#35720\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSkip compilation for non-React files to improve performance. (\u003ca href=\"https://github.com/josephsavona\"\u003e\u003ccode\u003e@​josephsavona\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/35589\"\u003e#35589\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix exhaustive deps bug with Flow type casting. (\u003ca href=\"https://github.com/jorge-cab\"\u003e\u003ccode\u003e@​jorge-cab\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/35691\"\u003e#35691\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix \u003ccode\u003euseEffectEvent\u003c/code\u003e checks in component syntax. (\u003ca href=\"https://github.com/jbrown215\"\u003e\u003ccode\u003e@​jbrown215\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/35041\"\u003e#35041\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eImproved \u003ccode\u003eset-state-in-effect\u003c/code\u003e validation with fewer false negatives. (\u003ca href=\"https://github.com/jorge-cab\"\u003e\u003ccode\u003e@​jorge-cab\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/35134\"\u003e#35134\u003c/a\u003e, \u003ca href=\"https://github.com/josephsavona\"\u003e\u003ccode\u003e@​josephsavona\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/35147\"\u003e#35147\u003c/a\u003e, \u003ca href=\"https://github.com/jackpope\"\u003e\u003ccode\u003e@​jackpope\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/35214\"\u003e#35214\u003c/a\u003e, \u003ca href=\"https://github.com/chesnokov-tony\"\u003e\u003ccode\u003e@​chesnokov-tony\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/35419\"\u003e#35419\u003c/a\u003e, \u003ca href=\"https://github.com/jsleitor\"\u003e\u003ccode\u003e@​jsleitor\u003c/code...\n\n_Description has been truncated_","html_url":"https://github.com/devahmadsaad/react-starter-kit/pull/7","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/devahmadsaad%2Freact-starter-kit/issues/7","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/7/packages"},{"uuid":"4418177141","node_id":"PR_kwDOSFWJz87aHMk2","number":5,"state":"open","title":"deps(deps): bump the all-dependencies group across 1 directory with 65 updates","user":"dependabot[bot]","labels":[],"assignees":[],"locked":false,"comments_count":1,"pull_request":true,"closed_at":null,"author_association":null,"state_reason":null,"created_at":"2026-05-11T04:57:41.000Z","updated_at":"2026-05-11T04:57:42.000Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"deps(deps): bump","group_name":"all-dependencies","update_count":65,"packages":[{"name":"@eslint-react/eslint-plugin","old_version":"2.13.0","new_version":"5.7.5","repository_url":"https://github.com/Rel1cx/eslint-react"},{"name":"@eslint/js","old_version":"9.39.2","new_version":"10.0.1","repository_url":"https://github.com/eslint/eslint"},{"name":"@typescript-eslint/eslint-plugin","old_version":"8.56.0","new_version":"8.59.2","repository_url":"https://github.com/typescript-eslint/typescript-eslint"},{"name":"@typescript-eslint/parser","old_version":"8.56.0","new_version":"8.59.2","repository_url":"https://github.com/typescript-eslint/typescript-eslint"},{"name":"eslint","old_version":"9.39.2","new_version":"10.3.0","repository_url":"https://github.com/eslint/eslint"},{"name":"eslint-plugin-react-hooks","old_version":"7.0.1","new_version":"7.1.1","repository_url":"https://github.com/facebook/react"},{"name":"globals","old_version":"17.3.0","new_version":"17.6.0","repository_url":"https://github.com/sindresorhus/globals"},{"name":"graphql","old_version":"16.12.0","new_version":"16.14.0","repository_url":"https://github.com/graphql/graphql-js"},{"name":"happy-dom","old_version":"20.6.2","new_version":"20.9.0","repository_url":"https://github.com/capricorn86/happy-dom"},{"name":"jiti","old_version":"2.6.1","new_version":"2.7.0","repository_url":"https://github.com/unjs/jiti"},{"name":"lint-staged","old_version":"16.2.7","new_version":"17.0.4","repository_url":"https://github.com/lint-staged/lint-staged"},{"name":"mermaid","old_version":"11.12.3","new_version":"11.14.0","repository_url":"https://github.com/mermaid-js/mermaid"},{"name":"prettier","old_version":"3.8.1","new_version":"3.8.3","repository_url":"https://github.com/prettier/prettier"},{"name":"react","old_version":"19.2.4","new_version":"19.2.6","repository_url":"https://github.com/facebook/react"},{"name":"typescript","old_version":"5.9.3","new_version":"6.0.3","repository_url":"https://github.com/microsoft/TypeScript"},{"name":"typescript-eslint","old_version":"8.56.0","new_version":"8.59.2","repository_url":"https://github.com/typescript-eslint/typescript-eslint"},{"name":"typescript-language-server","old_version":"5.1.3","new_version":"5.2.0","repository_url":"https://github.com/typescript-language-server/typescript-language-server"},{"name":"vite","old_version":"7.3.1","new_version":"8.0.11","repository_url":"https://github.com/vitejs/vite"},{"name":"vitepress","old_version":"2.0.0-alpha.16","new_version":"2.0.0-alpha.17","repository_url":"https://github.com/vuejs/vitepress"},{"name":"vitepress-plugin-llms","old_version":"1.11.0","new_version":"1.12.2","repository_url":"https://github.com/okineadev/vitepress-plugin-llms"},{"name":"vitest","old_version":"4.0.18","new_version":"4.1.5","repository_url":"https://github.com/vitest-dev/vitest"},{"name":"wrangler","old_version":"4.66.0","new_version":"4.90.0","repository_url":"https://github.com/cloudflare/workers-sdk"},{"name":"@ai-sdk/openai","old_version":"3.0.29","new_version":"3.0.63","repository_url":"https://github.com/vercel/ai"},{"name":"@better-auth/passkey","old_version":"1.4.18","new_version":"1.6.10","repository_url":"https://github.com/better-auth/better-auth"},{"name":"@better-auth/stripe","old_version":"1.4.18","new_version":"1.6.10","repository_url":"https://github.com/better-auth/better-auth"},{"name":"@trpc/server","old_version":"11.10.0","new_version":"11.17.0","repository_url":"https://github.com/trpc/trpc"},{"name":"ai","old_version":"6.0.91","new_version":"6.0.177","repository_url":"https://github.com/vercel/ai"},{"name":"better-auth","old_version":"1.4.18","new_version":"1.6.10","repository_url":"https://github.com/better-auth/better-auth"},{"name":"drizzle-orm","old_version":"0.45.1","new_version":"0.45.2","repository_url":"https://github.com/drizzle-team/drizzle-orm"},{"name":"postgres","old_version":"3.4.8","new_version":"3.4.9","repository_url":"https://github.com/porsager/postgres"},{"name":"resend","old_version":"6.9.2","new_version":"6.12.3","repository_url":"https://github.com/resend/resend-node"},{"name":"stripe","old_version":"20.3.1","new_version":"22.1.1","repository_url":"https://github.com/stripe/stripe-node"},{"name":"@cloudflare/workers-types","old_version":"4.20260218.0","new_version":"4.20260511.1","repository_url":"https://github.com/cloudflare/workerd"},{"name":"@types/bun","old_version":"1.3.9","new_version":"1.3.13","repository_url":"https://github.com/DefinitelyTyped/DefinitelyTyped"},{"name":"hono","old_version":"4.11.10","new_version":"4.12.18","repository_url":"https://github.com/honojs/hono"},{"name":"@tanstack/react-query","old_version":"5.90.21","new_version":"5.100.9","repository_url":"https://github.com/TanStack/query"},{"name":"@tanstack/react-router","old_version":"1.161.1","new_version":"1.169.2","repository_url":"https://github.com/TanStack/router"},{"name":"@trpc/client","old_version":"11.10.0","new_version":"11.17.0","repository_url":"https://github.com/trpc/trpc"},{"name":"@trpc/tanstack-react-query","old_version":"11.10.0","new_version":"11.17.0","repository_url":"https://github.com/trpc/trpc"},{"name":"jotai","old_version":"2.17.1","new_version":"2.20.0","repository_url":"https://github.com/pmndrs/jotai"},{"name":"lucide-react","old_version":"0.574.0","new_version":"1.14.0","repository_url":"https://github.com/lucide-icons/lucide"},{"name":"react-dom","old_version":"19.2.4","new_version":"19.2.6","repository_url":"https://github.com/facebook/react"},{"name":"tailwind-merge","old_version":"3.4.1","new_version":"3.6.0","repository_url":"https://github.com/dcastil/tailwind-merge"},{"name":"@tailwindcss/postcss","old_version":"4.2.0","new_version":"4.3.0","repository_url":"https://github.com/tailwindlabs/tailwindcss"},{"name":"@tanstack/react-query-devtools","old_version":"5.91.3","new_version":"5.100.9","repository_url":"https://github.com/TanStack/query"},{"name":"@tanstack/react-router-devtools","old_version":"1.161.1","new_version":"1.166.13","repository_url":"https://github.com/TanStack/router"},{"name":"@tanstack/router-plugin","old_version":"1.161.1","new_version":"1.167.35","repository_url":"https://github.com/TanStack/router"},{"name":"@types/node","old_version":"25.2.3","new_version":"25.6.2","repository_url":"https://github.com/DefinitelyTyped/DefinitelyTyped"},{"name":"@vitejs/plugin-react","old_version":"5.1.4","new_version":"6.0.1","repository_url":"https://github.com/vitejs/vite-plugin-react"},{"name":"@vitejs/plugin-react-swc","old_version":"4.2.3","new_version":"4.3.0","repository_url":"https://github.com/vitejs/vite-plugin-react"},{"name":"autoprefixer","old_version":"10.4.24","new_version":"10.5.0","repository_url":"https://github.com/postcss/autoprefixer"},{"name":"globby","old_version":"16.1.1","new_version":"16.2.0","repository_url":"https://github.com/sindresorhus/globby"},{"name":"@react-email/components","old_version":"1.0.8","new_version":"1.0.12","repository_url":"https://github.com/resend/react-email"},{"name":"@react-email/render","old_version":"2.0.4","new_version":"2.0.8","repository_url":"https://github.com/resend/react-email"},{"name":"@react-email/preview-server","old_version":"5.2.8","new_version":"5.2.10","repository_url":"https://github.com/resend/react-email"},{"name":"react-email","old_version":"5.2.8","new_version":"6.1.1","repository_url":"https://github.com/resend/react-email"},{"name":"@astrojs/react","old_version":"4.4.2","new_version":"5.0.4","repository_url":"https://github.com/withastro/astro"},{"name":"astro","old_version":"5.17.2","new_version":"6.3.1","repository_url":"https://github.com/withastro/astro"},{"name":"dotenv","old_version":"17.3.1","new_version":"17.4.2","repository_url":"https://github.com/motdotla/dotenv"},{"name":"drizzle-kit","old_version":"0.31.9","new_version":"0.31.10","repository_url":"https://github.com/drizzle-team/drizzle-orm"},{"name":"@modelcontextprotocol/sdk","old_version":"1.26.0","new_version":"1.29.0","repository_url":"https://github.com/modelcontextprotocol/typescript-sdk"},{"name":"got","old_version":"14.6.6","new_version":"15.0.5","repository_url":"https://github.com/sindresorhus/got"}],"path":null,"ecosystem":"npm"},"body":"Bumps the all-dependencies group with 62 updates in the / directory:\n\n| Package | From | To |\n| --- | --- | --- |\n| [@eslint-react/eslint-plugin](https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin) | `2.13.0` | `5.7.5` |\n| [@eslint/js](https://github.com/eslint/eslint/tree/HEAD/packages/js) | `9.39.2` | `10.0.1` |\n| [@typescript-eslint/eslint-plugin](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin) | `8.56.0` | `8.59.2` |\n| [@typescript-eslint/parser](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/parser) | `8.56.0` | `8.59.2` |\n| [eslint](https://github.com/eslint/eslint) | `9.39.2` | `10.3.0` |\n| [eslint-plugin-react-hooks](https://github.com/facebook/react/tree/HEAD/packages/eslint-plugin-react-hooks) | `7.0.1` | `7.1.1` |\n| [globals](https://github.com/sindresorhus/globals) | `17.3.0` | `17.6.0` |\n| [graphql](https://github.com/graphql/graphql-js) | `16.12.0` | `16.14.0` |\n| [happy-dom](https://github.com/capricorn86/happy-dom) | `20.6.2` | `20.9.0` |\n| [jiti](https://github.com/unjs/jiti) | `2.6.1` | `2.7.0` |\n| [lint-staged](https://github.com/lint-staged/lint-staged) | `16.2.7` | `17.0.4` |\n| [mermaid](https://github.com/mermaid-js/mermaid) | `11.12.3` | `11.14.0` |\n| [prettier](https://github.com/prettier/prettier) | `3.8.1` | `3.8.3` |\n| [react](https://github.com/facebook/react/tree/HEAD/packages/react) | `19.2.4` | `19.2.6` |\n| [typescript](https://github.com/microsoft/TypeScript) | `5.9.3` | `6.0.3` |\n| [typescript-eslint](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/typescript-eslint) | `8.56.0` | `8.59.2` |\n| [typescript-language-server](https://github.com/typescript-language-server/typescript-language-server) | `5.1.3` | `5.2.0` |\n| [vite](https://github.com/vitejs/vite/tree/HEAD/packages/vite) | `7.3.1` | `8.0.11` |\n| [vitepress](https://github.com/vuejs/vitepress) | `2.0.0-alpha.16` | `2.0.0-alpha.17` |\n| [vitepress-plugin-llms](https://github.com/okineadev/vitepress-plugin-llms) | `1.11.0` | `1.12.2` |\n| [vitest](https://github.com/vitest-dev/vitest/tree/HEAD/packages/vitest) | `4.0.18` | `4.1.5` |\n| [wrangler](https://github.com/cloudflare/workers-sdk/tree/HEAD/packages/wrangler) | `4.66.0` | `4.90.0` |\n| [@ai-sdk/openai](https://github.com/vercel/ai/tree/HEAD/packages/openai) | `3.0.29` | `3.0.63` |\n| [@better-auth/passkey](https://github.com/better-auth/better-auth/tree/HEAD/packages/passkey) | `1.4.18` | `1.6.10` |\n| [@better-auth/stripe](https://github.com/better-auth/better-auth/tree/HEAD/packages/stripe) | `1.4.18` | `1.6.10` |\n| [@trpc/server](https://github.com/trpc/trpc/tree/HEAD/packages/server) | `11.10.0` | `11.17.0` |\n| [ai](https://github.com/vercel/ai/tree/HEAD/packages/ai) | `6.0.91` | `6.0.177` |\n| [better-auth](https://github.com/better-auth/better-auth/tree/HEAD/packages/better-auth) | `1.4.18` | `1.6.10` |\n| [drizzle-orm](https://github.com/drizzle-team/drizzle-orm) | `0.45.1` | `0.45.2` |\n| [postgres](https://github.com/porsager/postgres) | `3.4.8` | `3.4.9` |\n| [resend](https://github.com/resend/resend-node) | `6.9.2` | `6.12.3` |\n| [stripe](https://github.com/stripe/stripe-node) | `20.3.1` | `22.1.1` |\n| [@cloudflare/workers-types](https://github.com/cloudflare/workerd) | `4.20260218.0` | `4.20260511.1` |\n| [@types/bun](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/bun) | `1.3.9` | `1.3.13` |\n| [hono](https://github.com/honojs/hono) | `4.11.10` | `4.12.18` |\n| [@tanstack/react-query](https://github.com/TanStack/query/tree/HEAD/packages/react-query) | `5.90.21` | `5.100.9` |\n| [@tanstack/react-router](https://github.com/TanStack/router/tree/HEAD/packages/react-router) | `1.161.1` | `1.169.2` |\n| [@trpc/client](https://github.com/trpc/trpc/tree/HEAD/packages/client) | `11.10.0` | `11.17.0` |\n| [@trpc/tanstack-react-query](https://github.com/trpc/trpc/tree/HEAD/packages/tanstack-react-query) | `11.10.0` | `11.17.0` |\n| [jotai](https://github.com/pmndrs/jotai) | `2.17.1` | `2.20.0` |\n| [lucide-react](https://github.com/lucide-icons/lucide/tree/HEAD/packages/lucide-react) | `0.574.0` | `1.14.0` |\n| [react-dom](https://github.com/facebook/react/tree/HEAD/packages/react-dom) | `19.2.4` | `19.2.6` |\n| [tailwind-merge](https://github.com/dcastil/tailwind-merge) | `3.4.1` | `3.6.0` |\n| [@tailwindcss/postcss](https://github.com/tailwindlabs/tailwindcss/tree/HEAD/packages/@tailwindcss-postcss) | `4.2.0` | `4.3.0` |\n| [@tanstack/react-query-devtools](https://github.com/TanStack/query/tree/HEAD/packages/react-query-devtools) | `5.91.3` | `5.100.9` |\n| [@tanstack/react-router-devtools](https://github.com/TanStack/router/tree/HEAD/packages/react-router-devtools) | `1.161.1` | `1.166.13` |\n| [@tanstack/router-plugin](https://github.com/TanStack/router/tree/HEAD/packages/router-plugin) | `1.161.1` | `1.167.35` |\n| [@types/node](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/node) | `25.2.3` | `25.6.2` |\n| [@vitejs/plugin-react](https://github.com/vitejs/vite-plugin-react/tree/HEAD/packages/plugin-react) | `5.1.4` | `6.0.1` |\n| [@vitejs/plugin-react-swc](https://github.com/vitejs/vite-plugin-react/tree/HEAD/packages/plugin-react-swc) | `4.2.3` | `4.3.0` |\n| [autoprefixer](https://github.com/postcss/autoprefixer) | `10.4.24` | `10.5.0` |\n| [globby](https://github.com/sindresorhus/globby) | `16.1.1` | `16.2.0` |\n| [@react-email/components](https://github.com/resend/react-email/tree/HEAD/packages/components) | `1.0.8` | `1.0.12` |\n| [@react-email/render](https://github.com/resend/react-email/tree/HEAD/packages/render) | `2.0.4` | `2.0.8` |\n| [@react-email/preview-server](https://github.com/resend/react-email/tree/HEAD/packages/preview-server) | `5.2.8` | `5.2.10` |\n| [react-email](https://github.com/resend/react-email/tree/HEAD/packages/react-email) | `5.2.8` | `6.1.1` |\n| [@astrojs/react](https://github.com/withastro/astro/tree/HEAD/packages/integrations/react) | `4.4.2` | `5.0.4` |\n| [astro](https://github.com/withastro/astro/tree/HEAD/packages/astro) | `5.17.2` | `6.3.1` |\n| [dotenv](https://github.com/motdotla/dotenv) | `17.3.1` | `17.4.2` |\n| [drizzle-kit](https://github.com/drizzle-team/drizzle-orm) | `0.31.9` | `0.31.10` |\n| [@modelcontextprotocol/sdk](https://github.com/modelcontextprotocol/typescript-sdk) | `1.26.0` | `1.29.0` |\n| [got](https://github.com/sindresorhus/got) | `14.6.6` | `15.0.5` |\n\n\nUpdates `@eslint-react/eslint-plugin` from 2.13.0 to 5.7.5\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/Rel1cx/eslint-react/releases\"\u003e@​eslint-react/eslint-plugin's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev5.7.5 (2026-05-08)\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003ch3\u003e🏗️ Internal\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eBumped \u003ccode\u003e@eslint/compat\u003c/code\u003e from 2.0.5 to 2.1.0.\u003c/li\u003e\n\u003cli\u003eBumped \u003ccode\u003e@types/node\u003c/code\u003e from 25.6.0 to 25.6.2.\u003c/li\u003e\n\u003cli\u003eBumped \u003ccode\u003enext\u003c/code\u003e from 16.2.5 to 16.2.6.\u003c/li\u003e\n\u003cli\u003eBumped \u003ccode\u003epublint\u003c/code\u003e from 0.3.19 to 0.3.20.\u003c/li\u003e\n\u003cli\u003eBumped \u003ccode\u003etsdown\u003c/code\u003e from 0.21.10 to 0.22.0.\u003c/li\u003e\n\u003cli\u003eBumped \u003ccode\u003epnpm\u003c/code\u003e from 10.33.4 to 11.0.8.\u003c/li\u003e\n\u003cli\u003eAdjusted website styles.\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/Rel1cx/eslint-react/compare/v5.7.4...v5.7.5\"\u003ehttps://github.com/Rel1cx/eslint-react/compare/v5.7.4...v5.7.5\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev5.7.4 (2026-05-07)\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003ch3\u003e🏗️ Internal\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eBumped \u003ccode\u003e@typescript-eslint\u003c/code\u003e packages from 8.59.1 to 8.59.2.\u003c/li\u003e\n\u003cli\u003eBumped \u003ccode\u003ereact\u003c/code\u003e and \u003ccode\u003ereact-dom\u003c/code\u003e from 19.2.5 to 19.2.6.\u003c/li\u003e\n\u003cli\u003eBumped \u003ccode\u003enext\u003c/code\u003e from 16.2.4 to 16.2.5.\u003c/li\u003e\n\u003cli\u003eBumped \u003ccode\u003enx\u003c/code\u003e from 22.7.1 to 23.0.0-canary.20260506-b594537.\u003c/li\u003e\n\u003cli\u003eBumped \u003ccode\u003efumadocs-core\u003c/code\u003e and \u003ccode\u003efumadocs-ui\u003c/code\u003e from 16.8.5 to 16.8.7.\u003c/li\u003e\n\u003cli\u003eBumped \u003ccode\u003epostcss\u003c/code\u003e from 8.5.13 to 8.5.14.\u003c/li\u003e\n\u003cli\u003eBumped \u003ccode\u003epublint\u003c/code\u003e from 0.3.18 to 0.3.19.\u003c/li\u003e\n\u003cli\u003eBumped \u003ccode\u003epnpm\u003c/code\u003e from 10.33.2 to 10.33.4.\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/Rel1cx/eslint-react/compare/v5.7.3...v5.7.4\"\u003ehttps://github.com/Rel1cx/eslint-react/compare/v5.7.3...v5.7.4\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev5.7.3 (2026-05-06)\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003ch3\u003e🐞 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003e\u003ccode\u003ereact-x/immutability\u003c/code\u003e\u003c/strong\u003e: Exempted ref mutations via a naming heuristic — any object whose identifier is \u003ccode\u003eref\u003c/code\u003e or ends with \u003ccode\u003eRef\u003c/code\u003e is treated as a mutable ref and skipped from immutability checks. This fixes false positives when mutating \u003ccode\u003eRefObject\u0026lt;T\u0026gt;\u003c/code\u003e values received as props (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1752\"\u003e#1752\u003c/a\u003e, \u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1751\"\u003e#1751\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003e\u003ccode\u003ereact-x/immutability\u003c/code\u003e\u003c/strong\u003e: Added \u003ccode\u003enoRefLikeStateName\u003c/code\u003e diagnostic to prevent state variables from being named \u003ccode\u003eref\u003c/code\u003e or ending with \u003ccode\u003eRef\u003c/code\u003e, which would otherwise bypass the ref exemption heuristic (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1752\"\u003e#1752\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e📝 Documentation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFixed the full rule name in \u003ccode\u003ereact-jsx/no-key-after-spread\u003c/code\u003e documentation (\u003ccode\u003ejsx/no-key-after-spread\u003c/code\u003e → \u003ccode\u003ejsx-no-key-after-spread\u003c/code\u003e) (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1750\"\u003e#1750\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/Rel1cx/eslint-react/compare/v5.7.2...v5.7.3\"\u003ehttps://github.com/Rel1cx/eslint-react/compare/v5.7.2...v5.7.3\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev5.7.2 (2026-05-04)\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003ch3\u003e🐞 Fixes\u003c/h3\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/Rel1cx/eslint-react/blob/main/CHANGELOG.md\"\u003e@​eslint-react/eslint-plugin's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev5.7.5 (2026-05-08)\u003c/h2\u003e\n\u003ch3\u003e🏗️ Internal\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eBumped \u003ccode\u003e@eslint/compat\u003c/code\u003e from 2.0.5 to 2.1.0.\u003c/li\u003e\n\u003cli\u003eBumped \u003ccode\u003e@types/node\u003c/code\u003e from 25.6.0 to 25.6.2.\u003c/li\u003e\n\u003cli\u003eBumped \u003ccode\u003enext\u003c/code\u003e from 16.2.5 to 16.2.6.\u003c/li\u003e\n\u003cli\u003eBumped \u003ccode\u003epublint\u003c/code\u003e from 0.3.19 to 0.3.20.\u003c/li\u003e\n\u003cli\u003eBumped \u003ccode\u003etsdown\u003c/code\u003e from 0.21.10 to 0.22.0.\u003c/li\u003e\n\u003cli\u003eBumped \u003ccode\u003epnpm\u003c/code\u003e from 10.33.4 to 11.0.8.\u003c/li\u003e\n\u003cli\u003eAdjusted website styles.\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/Rel1cx/eslint-react/compare/v5.7.4...v5.7.5\"\u003ehttps://github.com/Rel1cx/eslint-react/compare/v5.7.4...v5.7.5\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev5.7.4 (2026-05-07)\u003c/h2\u003e\n\u003ch3\u003e🏗️ Internal\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eBumped \u003ccode\u003e@typescript-eslint\u003c/code\u003e packages from 8.59.1 to 8.59.2.\u003c/li\u003e\n\u003cli\u003eBumped \u003ccode\u003ereact\u003c/code\u003e and \u003ccode\u003ereact-dom\u003c/code\u003e from 19.2.5 to 19.2.6.\u003c/li\u003e\n\u003cli\u003eBumped \u003ccode\u003enext\u003c/code\u003e from 16.2.4 to 16.2.5.\u003c/li\u003e\n\u003cli\u003eBumped \u003ccode\u003enx\u003c/code\u003e from 22.7.1 to 23.0.0-canary.20260506-b594537.\u003c/li\u003e\n\u003cli\u003eBumped \u003ccode\u003efumadocs-core\u003c/code\u003e and \u003ccode\u003efumadocs-ui\u003c/code\u003e from 16.8.5 to 16.8.7.\u003c/li\u003e\n\u003cli\u003eBumped \u003ccode\u003epostcss\u003c/code\u003e from 8.5.13 to 8.5.14.\u003c/li\u003e\n\u003cli\u003eBumped \u003ccode\u003epublint\u003c/code\u003e from 0.3.18 to 0.3.19.\u003c/li\u003e\n\u003cli\u003eBumped \u003ccode\u003epnpm\u003c/code\u003e from 10.33.2 to 10.33.4.\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/Rel1cx/eslint-react/compare/v5.7.3...v5.7.4\"\u003ehttps://github.com/Rel1cx/eslint-react/compare/v5.7.3...v5.7.4\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev5.7.3 (2026-05-06)\u003c/h2\u003e\n\u003ch3\u003e🐞 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003e\u003ccode\u003ereact-x/immutability\u003c/code\u003e\u003c/strong\u003e: Exempted ref mutations via a naming heuristic — any object whose identifier is \u003ccode\u003eref\u003c/code\u003e or ends with \u003ccode\u003eRef\u003c/code\u003e is treated as a mutable ref and skipped from immutability checks. This fixes false positives when mutating \u003ccode\u003eRefObject\u0026lt;T\u0026gt;\u003c/code\u003e values received as props (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1752\"\u003e#1752\u003c/a\u003e, \u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1751\"\u003e#1751\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003e\u003ccode\u003ereact-x/immutability\u003c/code\u003e\u003c/strong\u003e: Added \u003ccode\u003enoRefLikeStateName\u003c/code\u003e diagnostic to prevent state variables from being named \u003ccode\u003eref\u003c/code\u003e or ending with \u003ccode\u003eRef\u003c/code\u003e, which would otherwise bypass the ref exemption heuristic (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1752\"\u003e#1752\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e📝 Documentation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFixed the full rule name in \u003ccode\u003ereact-jsx/no-key-after-spread\u003c/code\u003e documentation (\u003ccode\u003ejsx/no-key-after-spread\u003c/code\u003e → \u003ccode\u003ejsx-no-key-after-spread\u003c/code\u003e) (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1750\"\u003e#1750\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/Rel1cx/eslint-react/compare/v5.7.2...v5.7.3\"\u003ehttps://github.com/Rel1cx/eslint-react/compare/v5.7.2...v5.7.3\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev5.7.2 (2026-05-04)\u003c/h2\u003e\n\u003ch3\u003e🐞 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003e\u003ccode\u003ereact-x/no-unused-state\u003c/code\u003e\u003c/strong\u003e: Removed the rule from the \u003ccode\u003erecommended\u003c/code\u003e preset for now (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1747\"\u003e#1747\u003c/a\u003e, \u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1748\"\u003e#1748\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e📝 Documentation\u003c/h3\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/de60fa2e3003c60e8c4f03970b5b84c7c9c84334\"\u003e\u003ccode\u003ede60fa2\u003c/code\u003e\u003c/a\u003e release: 5.7.5\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/2b075487d7952a8662c76305b64ce677776bab34\"\u003e\u003ccode\u003e2b07548\u003c/code\u003e\u003c/a\u003e release: 5.7.5-beta.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/9e186c17a28ff1d9e02e0a22f4f6b18193ceadca\"\u003e\u003ccode\u003e9e186c1\u003c/code\u003e\u003c/a\u003e release: 5.7.5-next.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/f7b012180b71b03a69e944b39fdc88811b16839b\"\u003e\u003ccode\u003ef7b0121\u003c/code\u003e\u003c/a\u003e chore: bump dependencies and adjust website styles (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1754\"\u003e#1754\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/99736d816cdcb56dd71be0ba8440c6b12017d862\"\u003e\u003ccode\u003e99736d8\u003c/code\u003e\u003c/a\u003e release: 5.7.4\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/bcd23f09215b120a119a53eacdb12e670ee897b9\"\u003e\u003ccode\u003ebcd23f0\u003c/code\u003e\u003c/a\u003e release: 5.7.4-beta.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/52071021ab5ae079fa69fc3996ac9109a76c230a\"\u003e\u003ccode\u003e5207102\u003c/code\u003e\u003c/a\u003e release: 5.7.4-next.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/b35fba3ea0e14827433efcc6017e8eaef0ca6486\"\u003e\u003ccode\u003eb35fba3\u003c/code\u003e\u003c/a\u003e Bump dependencies: eslint, react, next, and nx packages\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/a9098f22fc1a8c7b59e3b4916d0d5ff3cb2358be\"\u003e\u003ccode\u003ea9098f2\u003c/code\u003e\u003c/a\u003e release: 5.7.3\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/677db67c648814dbc500bdd40dea84ac9efa770c\"\u003e\u003ccode\u003e677db67\u003c/code\u003e\u003c/a\u003e release: 5.7.2\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/Rel1cx/eslint-react/commits/v5.7.5/plugins/eslint-plugin\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@eslint/js` from 9.39.2 to 10.0.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/eslint/eslint/releases\"\u003e@​eslint/js's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev10.0.1\u003c/h2\u003e\n\u003ch2\u003eBug Fixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/c87d5bded54c5cf491eb04c24c9d09bbbd42c23e\"\u003e\u003ccode\u003ec87d5bd\u003c/code\u003e\u003c/a\u003e fix: update eslint (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20531\"\u003e#20531\u003c/a\u003e) (renovate[bot])\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/d84100115c14691691058f00779c94e74fca946a\"\u003e\u003ccode\u003ed841001\u003c/code\u003e\u003c/a\u003e fix: update \u003ccode\u003eminimatch\u003c/code\u003e to \u003ccode\u003e10.2.1\u003c/code\u003e to address security vulnerabilities (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20519\"\u003e#20519\u003c/a\u003e) (루밀LuMir)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/04c21475b3004904948f02049f2888b401d82c78\"\u003e\u003ccode\u003e04c2147\u003c/code\u003e\u003c/a\u003e fix: update error message for unused suppressions (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20496\"\u003e#20496\u003c/a\u003e) (fnx)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/38b089c1726feac0e31a31d47941bd99e29ce003\"\u003e\u003ccode\u003e38b089c\u003c/code\u003e\u003c/a\u003e fix: update dependency \u003ccode\u003e@​eslint/config-array\u003c/code\u003e to ^0.23.1 (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20484\"\u003e#20484\u003c/a\u003e) (renovate[bot])\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eDocumentation\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/5b3dbce50a1404a9f118afe810cefeee79388a2a\"\u003e\u003ccode\u003e5b3dbce\u003c/code\u003e\u003c/a\u003e docs: add AI acknowledgement section to templates (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20431\"\u003e#20431\u003c/a\u003e) (루밀LuMir)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/6f23076037d5879f20fb3be2ef094293b1e8d38c\"\u003e\u003ccode\u003e6f23076\u003c/code\u003e\u003c/a\u003e docs: toggle nav in no-JS mode (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20476\"\u003e#20476\u003c/a\u003e) (Tanuj Kanti)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/b69cfb32a16c5d5e9986390d484fae1d21e406f9\"\u003e\u003ccode\u003eb69cfb3\u003c/code\u003e\u003c/a\u003e docs: Update README (GitHub Actions Bot)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eChores\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/e5c281ffd038a3a7a3e5364db0b9378e0ad83020\"\u003e\u003ccode\u003ee5c281f\u003c/code\u003e\u003c/a\u003e chore: updates for v9.39.3 release (Jenkins)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/8c3832adb77cd993b4a24891900d5eeaaf093cdc\"\u003e\u003ccode\u003e8c3832a\u003c/code\u003e\u003c/a\u003e chore: update \u003ccode\u003e@​typescript-eslint/parser\u003c/code\u003e to ^8.56.0 (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20514\"\u003e#20514\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/8330d238ae6adb68bb6a1c9381e38cfedd990d94\"\u003e\u003ccode\u003e8330d23\u003c/code\u003e\u003c/a\u003e test: add tests for config-api (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20493\"\u003e#20493\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/37d6e91e88fa6a2ca6d8726679096acff21ba6cc\"\u003e\u003ccode\u003e37d6e91\u003c/code\u003e\u003c/a\u003e chore: remove eslint v10 prereleases from eslint-config-eslint deps (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20494\"\u003e#20494\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/da7cd0e79197ad16e17052eef99df141de6dbfb1\"\u003e\u003ccode\u003eda7cd0e\u003c/code\u003e\u003c/a\u003e refactor: cleanup error message templates (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20479\"\u003e#20479\u003c/a\u003e) (Francesco Trotta)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/84fb885d49ac810e79a9491276b4828b53d913e5\"\u003e\u003ccode\u003e84fb885\u003c/code\u003e\u003c/a\u003e chore: package.json update for \u003ccode\u003e@​eslint/js\u003c/code\u003e release (Jenkins)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/1f667344b57c4c09b548d94bcfac1f91b6e5c63d\"\u003e\u003ccode\u003e1f66734\u003c/code\u003e\u003c/a\u003e chore: add \u003ccode\u003eeslint\u003c/code\u003e to \u003ccode\u003epeerDependencies\u003c/code\u003e of \u003ccode\u003e@eslint/js\u003c/code\u003e (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20467\"\u003e#20467\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev10.0.0\u003c/h2\u003e\n\u003ch2\u003eBreaking Changes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/f9e54f43a5e497cdfa179338b431093245cb787b\"\u003e\u003ccode\u003ef9e54f4\u003c/code\u003e\u003c/a\u003e feat!: estimate rule-tester failure location (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20420\"\u003e#20420\u003c/a\u003e) (ST-DDT)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/a176319d8ade1a7d9b2d7fb8f038f55a2662325f\"\u003e\u003ccode\u003ea176319\u003c/code\u003e\u003c/a\u003e feat!: replace \u003ccode\u003echalk\u003c/code\u003e with \u003ccode\u003estyleText\u003c/code\u003e and add \u003ccode\u003ecolor\u003c/code\u003e to \u003ccode\u003eResultsMeta\u003c/code\u003e (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20227\"\u003e#20227\u003c/a\u003e) (루밀LuMir)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/c7046e6c1e03c4ca0eee4888a1f2eba4c6454f84\"\u003e\u003ccode\u003ec7046e6\u003c/code\u003e\u003c/a\u003e feat!: enable JSX reference tracking (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20152\"\u003e#20152\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/fa31a608901684fbcd9906d1907e66561d16e5aa\"\u003e\u003ccode\u003efa31a60\u003c/code\u003e\u003c/a\u003e feat!: add \u003ccode\u003ename\u003c/code\u003e to configs (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20015\"\u003e#20015\u003c/a\u003e) (Kirk Waiblinger)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/3383e7ec9028166cafc8ea7986c2f7498d0049f0\"\u003e\u003ccode\u003e3383e7e\u003c/code\u003e\u003c/a\u003e fix!: remove deprecated \u003ccode\u003eSourceCode\u003c/code\u003e methods (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20137\"\u003e#20137\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/501abd0e916a35554c58b7c0365537f1fa3880ce\"\u003e\u003ccode\u003e501abd0\u003c/code\u003e\u003c/a\u003e feat!: update dependency minimatch to v10 (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20246\"\u003e#20246\u003c/a\u003e) (renovate[bot])\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/ca4d3b40085de47561f89656a2207d09946ed45e\"\u003e\u003ccode\u003eca4d3b4\u003c/code\u003e\u003c/a\u003e fix!: stricter rule tester assertions for valid test cases (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20125\"\u003e#20125\u003c/a\u003e) (唯然)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/96512a66c86402fb0538cdcb6cd30b9073f6bf3b\"\u003e\u003ccode\u003e96512a6\u003c/code\u003e\u003c/a\u003e fix!: Remove deprecated rule context methods (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20086\"\u003e#20086\u003c/a\u003e) (Nicholas C. Zakas)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/c69fdacdb2e886b9d965568a397aa8220db3fe90\"\u003e\u003ccode\u003ec69fdac\u003c/code\u003e\u003c/a\u003e feat!: remove eslintrc support (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20037\"\u003e#20037\u003c/a\u003e) (Francesco Trotta)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/208b5cc34a8374ff81412b5bec2e0800eebfbd04\"\u003e\u003ccode\u003e208b5cc\u003c/code\u003e\u003c/a\u003e feat!: Use \u003ccode\u003eScopeManager#addGlobals()\u003c/code\u003e (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20132\"\u003e#20132\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/a2ee188ea7a38a0c6155f3d39e2b00e1d0f36e14\"\u003e\u003ccode\u003ea2ee188\u003c/code\u003e\u003c/a\u003e fix!: add \u003ccode\u003euniqueItems: true\u003c/code\u003e in \u003ccode\u003eno-invalid-regexp\u003c/code\u003e option (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20155\"\u003e#20155\u003c/a\u003e) (Tanuj Kanti)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/a89059dbf2832d417dd493ee81483227ec44e4ab\"\u003e\u003ccode\u003ea89059d\u003c/code\u003e\u003c/a\u003e feat!: Program range span entire source text (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20133\"\u003e#20133\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/39a6424373d915fa9de0d7b0caba9a4dc3da9b53\"\u003e\u003ccode\u003e39a6424\u003c/code\u003e\u003c/a\u003e fix!: assert 'text' is a string across all RuleFixer methods (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20082\"\u003e#20082\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/f28fbf846244e043c92b355b224d121b06140b44\"\u003e\u003ccode\u003ef28fbf8\u003c/code\u003e\u003c/a\u003e fix!: Deprecate \u003ccode\u003e\u0026quot;always\u0026quot;\u003c/code\u003e and \u003ccode\u003e\u0026quot;as-needed\u0026quot;\u003c/code\u003e options of the \u003ccode\u003eradix\u003c/code\u003e rule (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20223\"\u003e#20223\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/aa3fb2b233e929b37220be940575f42c280e0b98\"\u003e\u003ccode\u003eaa3fb2b\u003c/code\u003e\u003c/a\u003e fix!: tighten \u003ccode\u003efunc-names\u003c/code\u003e schema (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20119\"\u003e#20119\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/f6c0ed0311dcfee853367d5068c765d066e6b756\"\u003e\u003ccode\u003ef6c0ed0\u003c/code\u003e\u003c/a\u003e feat!: report \u003ccode\u003eeslint-env\u003c/code\u003e comments as errors (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20128\"\u003e#20128\u003c/a\u003e) (Francesco Trotta)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/4bf739fb533e59f7f0a66b65f7bc80be0f37d8db\"\u003e\u003ccode\u003e4bf739f\u003c/code\u003e\u003c/a\u003e fix!: remove deprecated \u003ccode\u003eLintMessage#nodeType\u003c/code\u003e and \u003ccode\u003eTestCaseError#type\u003c/code\u003e (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20096\"\u003e#20096\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/523c076866400670fb2192a3f55dbf7ad3469247\"\u003e\u003ccode\u003e523c076\u003c/code\u003e\u003c/a\u003e feat!: drop support for jiti \u0026lt; 2.2.0 (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20016\"\u003e#20016\u003c/a\u003e) (michael faith)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/454a292c95f34dad232411ddac06408e6383bb64\"\u003e\u003ccode\u003e454a292\u003c/code\u003e\u003c/a\u003e feat!: update \u003ccode\u003eeslint:recommended\u003c/code\u003e configuration (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20210\"\u003e#20210\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/4f880ee02992e1bf0e96ebaba679985e2d1295f1\"\u003e\u003ccode\u003e4f880ee\u003c/code\u003e\u003c/a\u003e feat!: remove \u003ccode\u003ev10_*\u003c/code\u003e and inactive \u003ccode\u003eunstable_*\u003c/code\u003e flags (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20225\"\u003e#20225\u003c/a\u003e) (sethamus)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/f18115c363a4ac7671a4c7f30ee13d57ebba330f\"\u003e\u003ccode\u003ef18115c\u003c/code\u003e\u003c/a\u003e feat!: \u003ccode\u003eno-shadow-restricted-names\u003c/code\u003e report \u003ccode\u003eglobalThis\u003c/code\u003e by default (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20027\"\u003e#20027\u003c/a\u003e) (sethamus)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/c6358c31fbd3937b92d89be2618ffdf5a774604e\"\u003e\u003ccode\u003ec6358c3\u003c/code\u003e\u003c/a\u003e feat!: Require Node.js \u003ccode\u003e^20.19.0 || ^22.13.0 || \u0026gt;=24\u003c/code\u003e (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20160\"\u003e#20160\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eFeatures\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/bff9091927811497dbf066b0e3b85ecb37d43822\"\u003e\u003ccode\u003ebff9091\u003c/code\u003e\u003c/a\u003e feat: handle \u003ccode\u003eArray.fromAsync\u003c/code\u003e in \u003ccode\u003earray-callback-return\u003c/code\u003e (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20457\"\u003e#20457\u003c/a\u003e) (Francesco Trotta)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/290c594bb50c439fb71bc75521ee5360daa8c222\"\u003e\u003ccode\u003e290c594\u003c/code\u003e\u003c/a\u003e feat: add \u003ccode\u003eself\u003c/code\u003e to \u003ccode\u003eno-implied-eval\u003c/code\u003e rule (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20468\"\u003e#20468\u003c/a\u003e) (sethamus)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/43677de07ebd6e14bfac40a46ad749ba783c45f2\"\u003e\u003ccode\u003e43677de\u003c/code\u003e\u003c/a\u003e feat: fix handling of function and class expression names in \u003ccode\u003eno-shadow\u003c/code\u003e (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20432\"\u003e#20432\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/84fb885d49ac810e79a9491276b4828b53d913e5\"\u003e\u003ccode\u003e84fb885\u003c/code\u003e\u003c/a\u003e chore: package.json update for \u003ccode\u003e@​eslint/js\u003c/code\u003e release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/1f667344b57c4c09b548d94bcfac1f91b6e5c63d\"\u003e\u003ccode\u003e1f66734\u003c/code\u003e\u003c/a\u003e chore: add \u003ccode\u003eeslint\u003c/code\u003e to \u003ccode\u003epeerDependencies\u003c/code\u003e of \u003ccode\u003e@eslint/js\u003c/code\u003e (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20467\"\u003e#20467\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/f3fbc2f60cbe2c718364feb8c3fc0452c0df3c56\"\u003e\u003ccode\u003ef3fbc2f\u003c/code\u003e\u003c/a\u003e chore: set \u003ccode\u003e@eslint/js\u003c/code\u003e version to 10.0.0 to skip releasing it (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20466\"\u003e#20466\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/b4b3127f8542c599ce2dea804b6582ebc40c993d\"\u003e\u003ccode\u003eb4b3127\u003c/code\u003e\u003c/a\u003e chore: package.json update for \u003ccode\u003e@​eslint/js\u003c/code\u003e release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/0b14059491d830a49b3577931f4f68fbcfce6be5\"\u003e\u003ccode\u003e0b14059\u003c/code\u003e\u003c/a\u003e chore: package.json update for \u003ccode\u003e@​eslint/js\u003c/code\u003e release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/fa31a608901684fbcd9906d1907e66561d16e5aa\"\u003e\u003ccode\u003efa31a60\u003c/code\u003e\u003c/a\u003e feat!: add \u003ccode\u003ename\u003c/code\u003e to configs (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20015\"\u003e#20015\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/1e2cad5f6fa47ed6ed89d2a29798dda926d50990\"\u003e\u003ccode\u003e1e2cad5\u003c/code\u003e\u003c/a\u003e chore: package.json update for \u003ccode\u003e@​eslint/js\u003c/code\u003e release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/454a292c95f34dad232411ddac06408e6383bb64\"\u003e\u003ccode\u003e454a292\u003c/code\u003e\u003c/a\u003e feat!: update \u003ccode\u003eeslint:recommended\u003c/code\u003e configuration (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20210\"\u003e#20210\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/c6358c31fbd3937b92d89be2618ffdf5a774604e\"\u003e\u003ccode\u003ec6358c3\u003c/code\u003e\u003c/a\u003e feat!: Require Node.js \u003ccode\u003e^20.19.0 || ^22.13.0 || \u0026gt;=24\u003c/code\u003e (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20160\"\u003e#20160\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/eslint/eslint/commits/v10.0.1/packages/js\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@typescript-eslint/eslint-plugin` from 8.56.0 to 8.59.2\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases\"\u003e@​typescript-eslint/eslint-plugin's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev8.59.2\u003c/h2\u003e\n\u003ch2\u003e8.59.2 (2026-05-04)\u003c/h2\u003e\n\u003ch3\u003e🩹 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unsafe-type-assertion] handle crash on recursive template literal types (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12150\"\u003e#12150\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-deprecated] object destructuring values should be treated as declarations (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12292\"\u003e#12292\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003erule-tester:\u003c/strong\u003e add TypeScript as a peer dependency (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12288\"\u003e#12288\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e❤️ Thank You\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eDariusz Czajkowski\u003c/li\u003e\n\u003cli\u003eDima Barabash\u003c/li\u003e\n\u003cli\u003eKirk Waiblinger \u003ca href=\"https://github.com/kirkwaiblinger\"\u003e\u003ccode\u003e@​kirkwaiblinger\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.2\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003ev8.59.1\u003c/h2\u003e\n\u003ch2\u003e8.59.1 (2026-04-27)\u003c/h2\u003e\n\u003ch3\u003e🩹 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-type-assertion] fix crash \u0026quot;TypeError: checker.getTypeArguments is not a function\u0026quot; (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12246\"\u003e#12246\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-type-assertion] preserve index signatures in undefined unions (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12257\"\u003e#12257\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-type-assertion] preserve phantom type arguments in generic inference (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12269\"\u003e#12269\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-type-assertion] avoid false positive in logical assignment assertions (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12278\"\u003e#12278\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-type-arguments] handle instantiation expressions (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12220\"\u003e#12220\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-condition] treat void as nullish in no-unnecessary-condition (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12241\"\u003e#12241\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e❤️ Thank You\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eanasm266 \u003ca href=\"https://github.com/anasm266\"\u003e\u003ccode\u003e@​anasm266\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAnshika Jain \u003ca href=\"https://github.com/Anshikakalpana\"\u003e\u003ccode\u003e@​Anshikakalpana\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUlrich Stark\u003c/li\u003e\n\u003cli\u003eyugo innami \u003ca href=\"https://github.com/nami8824\"\u003e\u003ccode\u003e@​nami8824\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.1\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003ev8.59.0\u003c/h2\u003e\n\u003ch2\u003e8.59.0 (2026-04-20)\u003c/h2\u003e\n\u003ch3\u003e🚀 Features\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-type-assertion] report more cases based on assignability (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/11789\"\u003e#11789\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e❤️ Thank You\u003c/h3\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/CHANGELOG.md\"\u003e@​typescript-eslint/eslint-plugin's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e8.59.2 (2026-05-04)\u003c/h2\u003e\n\u003ch3\u003e🩹 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-deprecated] object destructuring values should be treated as declarations (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12292\"\u003e#12292\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unsafe-type-assertion] handle crash on recursive template literal types (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12150\"\u003e#12150\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e❤️ Thank You\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eDima Barabash\u003c/li\u003e\n\u003cli\u003eKirk Waiblinger \u003ca href=\"https://github.com/kirkwaiblinger\"\u003e\u003ccode\u003e@​kirkwaiblinger\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.2\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003e8.59.1 (2026-04-27)\u003c/h2\u003e\n\u003ch3\u003e🩹 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-condition] treat void as nullish in no-unnecessary-condition (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12241\"\u003e#12241\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-type-arguments] handle instantiation expressions (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12220\"\u003e#12220\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-type-assertion] avoid false positive in logical assignment assertions (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12278\"\u003e#12278\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-type-assertion] preserve phantom type arguments in generic inference (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12269\"\u003e#12269\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-type-assertion] preserve index signatures in undefined unions (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12257\"\u003e#12257\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-type-assertion] fix crash \u0026quot;TypeError: checker.getTypeArguments is not a function\u0026quot; (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12246\"\u003e#12246\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e❤️ Thank You\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eanasm266 \u003ca href=\"https://github.com/anasm266\"\u003e\u003ccode\u003e@​anasm266\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAnshika Jain \u003ca href=\"https://github.com/Anshikakalpana\"\u003e\u003ccode\u003e@​Anshikakalpana\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUlrich Stark\u003c/li\u003e\n\u003cli\u003eyugo innami \u003ca href=\"https://github.com/nami8824\"\u003e\u003ccode\u003e@​nami8824\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.1\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003e8.59.0 (2026-04-20)\u003c/h2\u003e\n\u003ch3\u003e🚀 Features\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-type-assertion] report more cases based on assignability (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/11789\"\u003e#11789\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e❤️ Thank You\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUlrich Stark\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.0\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/2ec35f1760aade4df4c631d76d78c7ed5e136333\"\u003e\u003ccode\u003e2ec35f1\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.59.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/ec3ef25390f7daf5a9ff33a60282bdbbb49ab0f3\"\u003e\u003ccode\u003eec3ef25\u003c/code\u003e\u003c/a\u003e test: make no-useless-empty-export tests fully static (\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin/issues/12260\"\u003e#12260\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/60d0a513870d833617374ff8ea256d86ca3cbbbb\"\u003e\u003ccode\u003e60d0a51\u003c/code\u003e\u003c/a\u003e chore(eslint-plugin): switch auto-generated test cases to hand-written in no-...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/5c53da230a70aba7d6f3d6474b5d249b430a95d0\"\u003e\u003ccode\u003e5c53da2\u003c/code\u003e\u003c/a\u003e fix(eslint-plugin): [no-deprecated] object destructuring values should be tre...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/80c28a1ada3f975a932a02587cefee632ccf6550\"\u003e\u003ccode\u003e80c28a1\u003c/code\u003e\u003c/a\u003e fix(eslint-plugin): [no-unsafe-type-assertion] handle crash on recursive temp...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/b7b2670123f76419630f88f3a807f85b7c535230\"\u003e\u003ccode\u003eb7b2670\u003c/code\u003e\u003c/a\u003e test: make no-this-alias tests fully static (\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin/issues/12258\"\u003e#12258\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/52457932e5507b5ca01e720a541f3f8d01e09b9d\"\u003e\u003ccode\u003e5245793\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.59.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/3cef12471659c42c9d4b179f4113a080b1fa2d66\"\u003e\u003ccode\u003e3cef124\u003c/code\u003e\u003c/a\u003e chore(eslint-plugin): switch auto-generated test cases to hand-written in dot...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/27c507b6e532abcd1efa51055f045b00f22055c3\"\u003e\u003ccode\u003e27c507b\u003c/code\u003e\u003c/a\u003e test: make sort-type-constituents tests fully static (\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin/issues/12262\"\u003e#12262\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/a03b31d422be35d8ddc979f48f9317e3f33dd1ce\"\u003e\u003ccode\u003ea03b31d\u003c/code\u003e\u003c/a\u003e chore(eslint-plugin): switch auto-generated test cases to hand-written in no-...\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commits/v8.59.2/packages/eslint-plugin\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@typescript-eslint/parser` from 8.56.0 to 8.59.2\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases\"\u003e@​typescript-eslint/parser's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev8.59.2\u003c/h2\u003e\n\u003ch2\u003e8.59.2 (2026-05-04)\u003c/h2\u003e\n\u003ch3\u003e🩹 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unsafe-type-assertion] handle crash on recursive template literal types (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12150\"\u003e#12150\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-deprecated] object destructuring values should be treated as declarations (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12292\"\u003e#12292\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003erule-tester:\u003c/strong\u003e add TypeScript as a peer dependency (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12288\"\u003e#12288\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e❤️ Thank You\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eDariusz Czajkowski\u003c/li\u003e\n\u003cli\u003eDima Barabash\u003c/li\u003e\n\u003cli\u003eKirk Waiblinger \u003ca href=\"https://github.com/kirkwaiblinger\"\u003e\u003ccode\u003e@​kirkwaiblinger\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.2\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003ev8.59.1\u003c/h2\u003e\n\u003ch2\u003e8.59.1 (2026-04-27)\u003c/h2\u003e\n\u003ch3\u003e🩹 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-type-assertion] fix crash \u0026quot;TypeError: checker.getTypeArguments is not a function\u0026quot; (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12246\"\u003e#12246\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-type-assertion] preserve index signatures in undefined unions (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12257\"\u003e#12257\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-type-assertion] preserve phantom type arguments in generic inference (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12269\"\u003e#12269\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-type-assertion] avoid false positive in logical assignment assertions (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12278\"\u003e#12278\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-type-arguments] handle instantiation expressions (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12220\"\u003e#12220\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-condition] treat void as nullish in no-unnecessary-condition (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12241\"\u003e#12241\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e❤️ Thank You\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eanasm266 \u003ca href=\"https://github.com/anasm266\"\u003e\u003ccode\u003e@​anasm266\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAnshika Jain \u003ca href=\"https://github.com/Anshikakalpana\"\u003e\u003ccode\u003e@​Anshikakalpana\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUlrich Stark\u003c/li\u003e\n\u003cli\u003eyugo innami \u003ca href=\"https://github.com/nami8824\"\u003e\u003ccode\u003e@​nami8824\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.1\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003ev8.59.0\u003c/h2\u003e\n\u003ch2\u003e8.59.0 (2026-04-20)\u003c/h2\u003e\n\u003ch3\u003e🚀 Features\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-type-assertion] report more cases based on assignability (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/11789\"\u003e#11789\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e❤️ Thank You\u003c/h3\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/parser/CHANGELOG.md\"\u003e@​typescript-eslint/parser's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e8.59.2 (2026-05-04)\u003c/h2\u003e\n\u003cp\u003eThis was a version bump only for parser to align it with other projects, there were no code changes.\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.2\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003e8.59.1 (2026-04-27)\u003c/h2\u003e\n\u003cp\u003eThis was a version bump only for parser to align it with other projects, there were no code changes.\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.1\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003e8.59.0 (2026-04-20)\u003c/h2\u003e\n\u003cp\u003eThis was a version bump only for parser to align it with other projects, there were no code changes.\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.0\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003e8.58.2 (2026-04-13)\u003c/h2\u003e\n\u003ch3\u003e🩹 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eremove tsbuildinfo cache file from published packages (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12187\"\u003e#12187\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e❤️ Thank You\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAbhijeet Singh \u003ca href=\"https://github.com/cseas\"\u003e\u003ccode\u003e@​cseas\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.58.2\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003e8.58.1 (2026-04-08)\u003c/h2\u003e\n\u003cp\u003eThis was a version bump only for parser to align it with other projects, there were no code changes.\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.58.1\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003e8.58.0 (2026-03-30)\u003c/h2\u003e\n\u003ch3\u003e🚀 Features\u003c/h3\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/2ec35f1760aade4df4c631d76d78c7ed5e136333\"\u003e\u003ccode\u003e2ec35f1\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.59.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/52457932e5507b5ca01e720a541f3f8d01e09b9d\"\u003e\u003ccode\u003e5245793\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.59.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/ea9ae4f8817873480e3501145059f63e39e8d8a1\"\u003e\u003ccode\u003eea9ae4f\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.59.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/90c2803a4c250e0343598d41e973f95e743bf4ce\"\u003e\u003ccode\u003e90c2803\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.58.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/be6b49a02d68db9bdc8985e7e9e1598700fda2fa\"\u003e\u003ccode\u003ebe6b49a\u003c/code\u003e\u003c/a\u003e fix: remove tsbuildinfo cache file from published packages (\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/parser/issues/12187\"\u003e#12187\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/5311ed312eadf4e238324f2726ae0b1f3f2206e6\"\u003e\u003ccode\u003e5311ed3\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.58.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/493341709fe7d1d6433332b7bd2724e3332c7cdf\"\u003e\u003ccode\u003e4933417\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.58.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/8cde2d06fb9bc591a4c93452509ddbd600c76a35\"\u003e\u003ccode\u003e8cde2d0\u003c/code\u003e\u003c/a\u003e feat: support TypeScript 6 (\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/parser/issues/12124\"\u003e#12124\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/be4d54d26e695cc93605ffcca67dd75848e95c6f\"\u003e\u003ccode\u003ebe4d54d\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.57.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/c7c38aa252d7bf6708a225aebedc57686ac33dcd\"\u003e\u003ccode\u003ec7c38aa\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.57.1\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commits/v8.59.2/packages/parser\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `eslint` from 9.39.2 to 10.3.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/eslint/eslint/releases\"\u003eeslint's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev10.3.0\u003c/h2\u003e\n\u003ch2\u003eFeatures\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/379571a975f2b24d88037b9de2e72ec61d004130\"\u003e\u003ccode\u003e379571a\u003c/code\u003e\u003c/a\u003e feat: add suggestions for no-unused-private-class-members (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20773\"\u003e#20773\u003c/a\u003e) (sethamus)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eBug Fixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/b6ae5cf07b9b51802367539cb24b245b61eaa37c\"\u003e\u003ccode\u003eb6ae5cf\u003c/code\u003e\u003c/a\u003e fix: handle unavailable require cache (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20812\"\u003e#20812\u003c/a\u003e) (Simon Podlipsky)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/6fb3685bcbe9a6f72fd7dfb9129686b6fb96b0bd\"\u003e\u003ccode\u003e6fb3685\u003c/code\u003e\u003c/a\u003e fix: rule suggestions cause continuation in class body (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20787\"\u003e#20787\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eDocumentation\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/32cc7ab4ec653ce89da92deb5c40a9f4fc707fe5\"\u003e\u003ccode\u003e32cc7ab\u003c/code\u003e\u003c/a\u003e docs: fix typos in docs and comments (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20809\"\u003e#20809\u003c/a\u003e) (Tanuj Kanti)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/7f479376a2fa463d823ab762db6bb37ce8d2ee8f\"\u003e\u003ccode\u003e7f47937\u003c/code\u003e\u003c/a\u003e docs: Update README (GitHub Actions Bot)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eChores\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/d32235ec19ceea211fa86452afa383ca05f5c2f9\"\u003e\u003ccode\u003ed32235e\u003c/code\u003e\u003c/a\u003e ci: use pnpm in \u003ccode\u003eeslint-flat-config-utils\u003c/code\u003e type integration test (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20826\"\u003e#20826\u003c/a\u003e) (Francesco Trotta)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/3ffb14ea517de750ed1181579ef844af342e4096\"\u003e\u003ccode\u003e3ffb14e\u003c/code\u003e\u003c/a\u003e chore: clean up typos in comments and JSDoc (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20821\"\u003e#20821\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/22eb58a21cbde2fbd53a1fae99453d408672de50\"\u003e\u003ccode\u003e22eb58a\u003c/code\u003e\u003c/a\u003e chore: add missing continue-on-error to ecosystem-tests.yml (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20818\"\u003e#20818\u003c/a\u003e) (Josh Goldberg ✨)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/88bf0024cb36caebf2880516d9a1f81aa75dafe2\"\u003e\u003ccode\u003e88bf002\u003c/code\u003e\u003c/a\u003e ci: bump pnpm/action-setup from 6.0.1 to 6.0.3 (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20815\"\u003e#20815\u003c/a\u003e) (dependabot[bot])\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/97c8c330beae9557ad24e19f94eebc8d08d1a722\"\u003e\u003ccode\u003e97c8c33\u003c/code\u003e\u003c/a\u003e chore: update ilshidur/action-discord action to v0.4.0 (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20811\"\u003e#20811\u003c/a\u003e) (renovate[bot])\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/2f58136dd47364a4cae7054a64f7bf1e79693813\"\u003e\u003ccode\u003e2f58136\u003c/code\u003e\u003c/a\u003e chore: pin peter-evans/create-pull-request action to 5f6978f (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20810\"\u003e#20810\u003c/a\u003e) (renovate[bot])\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/77add7f1bc91ed17bba3be3289928a9146c5f5a1\"\u003e\u003ccode\u003e77add7f\u003c/code\u003e\u003c/a\u003e chore: add initial ecosystem plugin tests workflow (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/19643\"\u003e#19643\u003c/a\u003e) (Josh Goldberg ✨)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/4023b55490fae55e464fe35530ef038cdf5d79a5\"\u003e\u003ccode\u003e4023b55\u003c/code\u003e\u003c/a\u003e test: Add unit tests for SuppressionsService.prune() (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20797\"\u003e#20797\u003c/a\u003e) (kuldeep kumar)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/54080dad4f77bb39a1a843933d4ff3a2b7c175e2\"\u003e\u003ccode\u003e54080da\u003c/code\u003e\u003c/a\u003e test: add unit tests for ForkContext (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20778\"\u003e#20778\u003c/a\u003e) (kuldeep kumar)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/f0e2bcc4bf19253aaebfbd7df87824b0ca4a151f\"\u003e\u003ccode\u003ef0e2bcc\u003c/code\u003e\u003c/a\u003e test: add unit tests for SuppressionsService.suppress() method (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20765\"\u003e#20765\u003c/a\u003e) (kuldeep kumar)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/a7f0b94743a99bcdf8d07cff15ffbfa6a6c5f927\"\u003e\u003ccode\u003ea7f0b94\u003c/code\u003e\u003c/a\u003e chore: update dependency prettier to v3.8.3 (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20782\"\u003e#20782\u003c/a\u003e) (renovate[bot])\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/7bf93d9e79f6dbf77242cbb9a9b8be834730fccd\"\u003e\u003ccode\u003e7bf93d9\u003c/code\u003e\u003c/a\u003e chore: update TypeScript to v6 (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20677\"\u003e#20677\u003c/a\u003e) (sethamus)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/b42dd72e76e7f90e7f0be9458288d93353052adc\"\u003e\u003ccode\u003eb42dd72\u003c/code\u003e\u003c/a\u003e ci: bump pnpm/action-setup from 6.0.0 to 6.0.1 (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20781\"\u003e#20781\u003c/a\u003e) (dependabot[bot])\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/2b252be80f362cca7be3326a6dbe958680fdfe9a\"\u003e\u003ccode\u003e2b252be\u003c/code\u003e\u003c/a\u003e test: add unit tests for IdGenerator (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20775\"\u003e#20775\u003c/a\u003e) (kuldeep kumar)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev10.2.1\u003c/h2\u003e\n\u003ch2\u003eBug Fixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/14be92b6d1fa0923b8923830f2208e5e2705b002\"\u003e\u003ccode\u003e14be92b\u003c/code\u003e\u003c/a\u003e fix: model generator yield resumption paths in code path analysis (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20665\"\u003e#20665\u003c/a\u003e) (sethamus)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/84a19d2c32255db6b9cfc08644a607aae6d5cb62\"\u003e\u003ccode\u003e84a19d2\u003c/code\u003e\u003c/a\u003e fix: no-async-promise-executor false positives for shadowed Promise (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20740\"\u003e#20740\u003c/a\u003e) (xbinaryx)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/af764af0ec38225755fbf8a6f207f0c77b595a8d\"\u003e\u003ccode\u003eaf764af\u003c/code\u003e\u003c/a\u003e fix: clarify language and processor validation errors (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20729\"\u003e#20729\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/e251b89a38280973e468a4a9386c138f4f55d10d\"\u003e\u003ccode\u003ee251b89\u003c/code\u003e\u003c/a\u003e fix: update eslint (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20715\"\u003e#20715\u003c/a\u003e) (renovate[bot])\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eDocumentation\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/ca92ca0fb4599e8de1e2fb914e695fe7397cbe63\"\u003e\u003ccode\u003eca92ca0\u003c/code\u003e\u003c/a\u003e docs: reuse markdown-it instance for markdown filter (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20768\"\u003e#20768\u003c/a\u003e) (Amaresh  S M)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/57d2ee213305cee0cb55ef08e0480b57396269a9\"\u003e\u003ccode\u003e57d2ee2\u003c/code\u003e\u003c/a\u003e docs:  Enable Eleventy incremental mode for watch (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20767\"\u003e#20767\u003c/a\u003e) (Amaresh  S M)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/c1621b915742276e5f4b25efe790ca62296330dc\"\u003e\u003ccode\u003ec1621b9\u003c/code\u003e\u003c/a\u003e docs: fix typos in code-path-analyzer.js (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20700\"\u003e#20700\u003c/a\u003e) (Ayush Shukla)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/1418d522d10bde1960f4942afb548bc7160ec49e\"\u003e\u003ccode\u003e1418d52\u003c/code\u003e\u003c/a\u003e docs: Update README (GitHub Actions Bot)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/39771e6e600f0b0617fdeafff6dd07e4211ffde6\"\u003e\u003ccode\u003e39771e6\u003c/code\u003e\u003c/a\u003e docs: Update README (GitHub Actions Bot)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/71e04693def2df57268f08f3072a2749df6bf438\"\u003e\u003ccode\u003e71e0469\u003c/code\u003e\u003c/a\u003e docs: fix incomplete JSDoc param description in no-shadow rule (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20728\"\u003e#20728\u003c/a\u003e) (kuldeep kumar)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/22119ceb93e28f62262fc1d98ff1b1442d6e2dbf\"\u003e\u003ccode\u003e22119ce\u003c/code\u003e\u003c/a\u003e docs: clarify scope of for-direction rule with dead code examples (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20723\"\u003e#20723\u003c/a\u003e) (Amaresh  S M)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/8f3fb77f122a5641d1833cad5d93f3f54fa3be0b\"\u003e\u003ccode\u003e8f3fb77\u003c/code\u003e\u003c/a\u003e docs: document \u003ccode\u003emeta.docs.dialects\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20718\"\u003e#20718\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eChores\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/7ddfea9c4f62add1588c5c0b0da568c299246383\"\u003e\u003ccode\u003e7ddfea9\u003c/code\u003e\u003c/a\u003e chore: update dependency prettier to v3.8.2 (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20770\"\u003e#20770\u003c/a\u003e) (renovate[bot])\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/fac40e1de2ba7646cc7cd2d3f93fbdd1f8819001\"\u003e\u003ccode\u003efac40e1\u003c/code\u003e\u003c/a\u003e ci: bump pnpm/action-setup from 5.0.0 to 6.0.0 (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20763\"\u003e#20763\u003c/a\u003e) (dependabot[bot])\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/7246f923332522d8b3d46b6ee646fce88535f3fb\"\u003e\u003ccode\u003e7246f92\u003c/code\u003e\u003c/a\u003e test: add tests for SuppressionsService.load() error handling (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20734\"\u003e#20734\u003c/a\u003e) (kuldeep kumar)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/4f34b1e592b0f63d766d9903998e8e36eb49d3aa\"\u003e\u003ccode\u003e4f34b1e\u003c/code\u003e\u003c/a\u003e chore: update pnpm/action-setup action to v5 (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20762\"\u003e#20762\u003c/a\u003e) (renovate[bot])\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/78892043a36da4aa7640b59c99344b00c181048a\"\u003e\u003ccode\u003e7889204\u003c/code\u003e\u003c/a\u003e 10.3.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/5b69b4fce4dc407c8e960eba638b5a3409c4f1fd\"\u003e\u003ccode\u003e5b69b4f\u003c/code\u003e\u003c/a\u003e Build: changelog update for 10.3.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/d32235ec19ceea211fa86452afa383ca05f5c2f9\"\u003e\u003ccode\u003ed32235e\u003c/code\u003e\u003c/a\u003e ci: use pnpm in \u003ccode\u003eeslint-flat-config-utils\u003c/code\u003e type integration test (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20826\"\u003e#20826\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/b6ae5cf07b9b51802367539cb24b245b61eaa37c\"\u003e\u003ccode\u003eb6ae5cf\u003c/code\u003e\u003c/a\u003e fix: handle unavailable require cache (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20812\"\u003e#20812\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/3ffb14ea517de750ed1181579ef844af342e4096\"\u003e\u003ccode\u003e3ffb14e\u003c/code\u003e\u003c/a\u003e chore: clean up typos in comments and JSDoc (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20821\"\u003e#20821\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/6fb3685bcbe9a6f72fd7dfb9129686b6fb96b0bd\"\u003e\u003ccode\u003e6fb3685\u003c/code\u003e\u003c/a\u003e fix: rule suggestions cause continuation in class body (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20787\"\u003e#20787\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/22eb58a21cbde2fbd53a1fae99453d408672de50\"\u003e\u003ccode\u003e22eb58a\u003c/code\u003e\u003c/a\u003e chore: add missing continue-on-error to ecosystem-tests.yml (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20818\"\u003e#20818\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/88bf0024cb36caebf2880516d9a1f81aa75dafe2\"\u003e\u003ccode\u003e88bf002\u003c/code\u003e\u003c/a\u003e ci: bump pnpm/action-setup from 6.0.1 to 6.0.3 (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20815\"\u003e#20815\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/379571a975f2b24d88037b9de2e72ec61d004130\"\u003e\u003ccode\u003e379571a\u003c/code\u003e\u003c/a\u003e feat: add suggestions for no-unused-private-class-members (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20773\"\u003e#20773\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/97c8c330beae9557ad24e19f94eebc8d08d1a722\"\u003e\u003ccode\u003e97c8c33\u003c/code\u003e\u003c/a\u003e chore: update ilshidur/action-discord action to v0.4.0 (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20811\"\u003e#20811\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/eslint/eslint/compare/v9.39.2...v10.3.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `eslint-plugin-react-hooks` from 7.0.1 to 7.1.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/facebook/react/releases\"\u003eeslint-plugin-react-hooks's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eeslint-plugin-react-hooks@7.1.1 (April 17, 2026)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eNote:\u003c/strong\u003e 7.1.0 accidentally removed the \u003ccode\u003ecomponent-hook-factories\u003c/code\u003e rule, causing errors for users who referenced it in their ESLint config. This is now fixed.\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdd deprecated no-op \u003ccode\u003ecomponent-hook-factories\u003c/code\u003e rule for backwards compatibility. (\u003ca href=\"https://github.com/mofeiZ\"\u003e\u003ccode\u003e@​mofeiZ\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/36307\"\u003e#36307\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eeslint-plugin-react-hooks@7.1.0 (April 16, 2026)\u003c/h2\u003e\n\u003cp\u003eThis release adds ESLint v10 support, improves performance by skipping compilation for non-React files, and includes compiler lint improvements including better \u003ccode\u003eset-state-in-effect\u003c/code\u003e detection, improved ref validation, and more helpful error reporting.\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdd ESLint v10 support. (\u003ca href=\"https://github.com/azat-io\"\u003e\u003ccode\u003e@​azat-io\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/35720\"\u003e#35720\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSkip compilation for non-React files to improve performance. (\u003ca href=\"https://github.com/josephsavona\"\u003e\u003ccode\u003e@​josephsavona\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/35589\"\u003e#35589\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix exhaustive deps bug with Flow type casting. (\u003ca href=\"https://github.com/jorge-cab\"\u003e\u003ccode\u003e@​jorge-cab\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/35691\"\u003e#35691\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix \u003ccode\u003euseEffectEvent\u003c/code\u003e checks in component syntax. (\u003ca href=\"https://github.com/jbrown215\"\u003e\u003ccode\u003e@​jbrown215\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/35041\"\u003e#35041\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eImproved \u003ccode\u003eset-state-in-effect\u003c/code\u003e validation with fewer false negatives. (\u003ca href=\"https://github.com/jorge-cab\"\u003e\u003ccode\u003e@​jorge-cab\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/35134\"\u003e#35134\u003c/a\u003e, \u003ca href=\"https://github.com/josephsavona\"\u003e\u003ccode\u003e@​josephsavona\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/35147\"\u003e#35147\u003c/a\u003e, \u003ca href=\"https://github.com/jackpope\"\u003e\u003ccode\u003e@​jackpope\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/35214\"\u003e#35214\u003c/a\u003e, \u003ca href=\"https://github.com/chesnokov-tony\"\u003e\u003ccode\u003e@​chesnokov-tony\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/35419\"\u003e#35419\u003c/a\u003e, \u003ca href=\"https://github.com/jsleitor\"\u003e\u003ccode\u003e@​jsleitor\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/36107\"\u003e#36107\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eImproved ref validation for non-mutating functions and event handler props. (\u003ca href=\"https://github.com/josephsavona\"\u003e\u003ccode\u003e@​josephsavona\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/35893\"\u003e#35893\u003c/a\u003e, \u003ca href=\"https://github.com/kolvian\"\u003e\u003ccode\u003e@​kolvian\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/35062\"\u003e#35062\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCompiler now reports all errors instead of stopping at the first. (\u003ca href=\"https://github.com/josephsavona\"\u003e\u003ccode\u003e@​josephsavona\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/35873\"\u003e#35873\u003c/a\u003e–\u003ca href=\"https://redirect.github.com/facebook/react/pull/35884\"\u003e#35884\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eImproved source locations and error display in compiler diagnostics. (\u003ca href=\"https://github.com/nathanmarks\"\u003e\u003ccode\u003e@​nathanmarks\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/35348\"\u003e#35348\u003c/a\u003e, \u003ca href=\"https://github.com/josephsavona\"\u003e\u003ccode\u003e@​josephsavona\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/34963\"\u003e#34963\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/facebook/react/blob/main/packages/eslint-plugin-react-hooks/CHANGELOG.md\"\u003eeslint-plugin-react-hooks's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e7.1.1\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eNote:\u003c/strong\u003e 7.1.0 accidentally removed the \u003ccode\u003ecomponent-hook-factories\u003c/code\u003e rule, causing errors for users who referenced it in their ESLint config. This is now fixed.\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdd deprecated no-op \u003ccode\u003ecomponent-hook-factories\u003c/code\u003e rule for backwards compatibility. (\u003ca href=\"https://github.com/mofeiZ\"\u003e\u003ccode\u003e@​mofeiZ\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/36307\"\u003e#36307\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e7.1.0\u003c/h2\u003e\n\u003cp\u003eThis release adds ESLint v10 support, improves performance by skipping compilation for non-React...\n\n_Description has been truncated_","html_url":"https://github.com/Stsnleys/shiny-enigma/pull/5","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/Stsnleys%2Fshiny-enigma/issues/5","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/5/packages"},{"uuid":"4418166792","node_id":"PR_kwDORzuuMc7aHKht","number":6,"state":"closed","title":"deps(deps): bump the all-dependencies group across 1 directory with 65 updates","user":"dependabot[bot]","labels":[],"assignees":[],"locked":false,"comments_count":2,"pull_request":true,"closed_at":"2026-05-18T05:26:34.000Z","author_association":null,"state_reason":null,"created_at":"2026-05-11T04:55:05.000Z","updated_at":"2026-05-18T05:26:36.000Z","time_to_close":606689,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"deps(deps): bump","group_name":"all-dependencies","update_count":65,"packages":[{"name":"@eslint-react/eslint-plugin","old_version":"2.13.0","new_version":"5.7.5","repository_url":"https://github.com/Rel1cx/eslint-react"},{"name":"@eslint/js","old_version":"9.39.2","new_version":"10.0.1","repository_url":"https://github.com/eslint/eslint"},{"name":"@typescript-eslint/eslint-plugin","old_version":"8.56.0","new_version":"8.59.2","repository_url":"https://github.com/typescript-eslint/typescript-eslint"},{"name":"@typescript-eslint/parser","old_version":"8.56.0","new_version":"8.59.2","repository_url":"https://github.com/typescript-eslint/typescript-eslint"},{"name":"eslint","old_version":"9.39.2","new_version":"10.3.0","repository_url":"https://github.com/eslint/eslint"},{"name":"eslint-plugin-react-hooks","old_version":"7.0.1","new_version":"7.1.1","repository_url":"https://github.com/facebook/react"},{"name":"globals","old_version":"17.3.0","new_version":"17.6.0","repository_url":"https://github.com/sindresorhus/globals"},{"name":"graphql","old_version":"16.12.0","new_version":"16.14.0","repository_url":"https://github.com/graphql/graphql-js"},{"name":"happy-dom","old_version":"20.6.2","new_version":"20.9.0","repository_url":"https://github.com/capricorn86/happy-dom"},{"name":"jiti","old_version":"2.6.1","new_version":"2.7.0","repository_url":"https://github.com/unjs/jiti"},{"name":"lint-staged","old_version":"16.2.7","new_version":"17.0.4","repository_url":"https://github.com/lint-staged/lint-staged"},{"name":"mermaid","old_version":"11.12.3","new_version":"11.14.0","repository_url":"https://github.com/mermaid-js/mermaid"},{"name":"prettier","old_version":"3.8.1","new_version":"3.8.3","repository_url":"https://github.com/prettier/prettier"},{"name":"react","old_version":"19.2.4","new_version":"19.2.6","repository_url":"https://github.com/facebook/react"},{"name":"typescript","old_version":"5.9.3","new_version":"6.0.3","repository_url":"https://github.com/microsoft/TypeScript"},{"name":"typescript-eslint","old_version":"8.56.0","new_version":"8.59.2","repository_url":"https://github.com/typescript-eslint/typescript-eslint"},{"name":"typescript-language-server","old_version":"5.1.3","new_version":"5.2.0","repository_url":"https://github.com/typescript-language-server/typescript-language-server"},{"name":"vite","old_version":"7.3.1","new_version":"8.0.11","repository_url":"https://github.com/vitejs/vite"},{"name":"vitepress","old_version":"2.0.0-alpha.16","new_version":"2.0.0-alpha.17","repository_url":"https://github.com/vuejs/vitepress"},{"name":"vitepress-plugin-llms","old_version":"1.11.0","new_version":"1.12.2","repository_url":"https://github.com/okineadev/vitepress-plugin-llms"},{"name":"vitest","old_version":"4.0.18","new_version":"4.1.5","repository_url":"https://github.com/vitest-dev/vitest"},{"name":"wrangler","old_version":"4.66.0","new_version":"4.90.0","repository_url":"https://github.com/cloudflare/workers-sdk"},{"name":"@ai-sdk/openai","old_version":"3.0.29","new_version":"3.0.63","repository_url":"https://github.com/vercel/ai"},{"name":"@better-auth/passkey","old_version":"1.4.18","new_version":"1.6.10","repository_url":"https://github.com/better-auth/better-auth"},{"name":"@better-auth/stripe","old_version":"1.4.18","new_version":"1.6.10","repository_url":"https://github.com/better-auth/better-auth"},{"name":"@trpc/server","old_version":"11.10.0","new_version":"11.17.0","repository_url":"https://github.com/trpc/trpc"},{"name":"ai","old_version":"6.0.91","new_version":"6.0.177","repository_url":"https://github.com/vercel/ai"},{"name":"better-auth","old_version":"1.4.18","new_version":"1.6.10","repository_url":"https://github.com/better-auth/better-auth"},{"name":"drizzle-orm","old_version":"0.45.1","new_version":"0.45.2","repository_url":"https://github.com/drizzle-team/drizzle-orm"},{"name":"postgres","old_version":"3.4.8","new_version":"3.4.9","repository_url":"https://github.com/porsager/postgres"},{"name":"resend","old_version":"6.9.2","new_version":"6.12.3","repository_url":"https://github.com/resend/resend-node"},{"name":"stripe","old_version":"20.3.1","new_version":"22.1.1","repository_url":"https://github.com/stripe/stripe-node"},{"name":"@cloudflare/workers-types","old_version":"4.20260218.0","new_version":"4.20260511.1","repository_url":"https://github.com/cloudflare/workerd"},{"name":"@types/bun","old_version":"1.3.9","new_version":"1.3.13","repository_url":"https://github.com/DefinitelyTyped/DefinitelyTyped"},{"name":"hono","old_version":"4.11.10","new_version":"4.12.18","repository_url":"https://github.com/honojs/hono"},{"name":"@tanstack/react-query","old_version":"5.90.21","new_version":"5.100.9","repository_url":"https://github.com/TanStack/query"},{"name":"@tanstack/react-router","old_version":"1.161.1","new_version":"1.169.2","repository_url":"https://github.com/TanStack/router"},{"name":"@trpc/client","old_version":"11.10.0","new_version":"11.17.0","repository_url":"https://github.com/trpc/trpc"},{"name":"@trpc/tanstack-react-query","old_version":"11.10.0","new_version":"11.17.0","repository_url":"https://github.com/trpc/trpc"},{"name":"jotai","old_version":"2.17.1","new_version":"2.20.0","repository_url":"https://github.com/pmndrs/jotai"},{"name":"lucide-react","old_version":"0.574.0","new_version":"1.14.0","repository_url":"https://github.com/lucide-icons/lucide"},{"name":"react-dom","old_version":"19.2.4","new_version":"19.2.6","repository_url":"https://github.com/facebook/react"},{"name":"tailwind-merge","old_version":"3.4.1","new_version":"3.6.0","repository_url":"https://github.com/dcastil/tailwind-merge"},{"name":"@tailwindcss/postcss","old_version":"4.2.0","new_version":"4.3.0","repository_url":"https://github.com/tailwindlabs/tailwindcss"},{"name":"@tanstack/react-query-devtools","old_version":"5.91.3","new_version":"5.100.9","repository_url":"https://github.com/TanStack/query"},{"name":"@tanstack/react-router-devtools","old_version":"1.161.1","new_version":"1.166.13","repository_url":"https://github.com/TanStack/router"},{"name":"@tanstack/router-plugin","old_version":"1.161.1","new_version":"1.167.35","repository_url":"https://github.com/TanStack/router"},{"name":"@types/node","old_version":"25.2.3","new_version":"25.6.2","repository_url":"https://github.com/DefinitelyTyped/DefinitelyTyped"},{"name":"@vitejs/plugin-react","old_version":"5.1.4","new_version":"6.0.1","repository_url":"https://github.com/vitejs/vite-plugin-react"},{"name":"@vitejs/plugin-react-swc","old_version":"4.2.3","new_version":"4.3.0","repository_url":"https://github.com/vitejs/vite-plugin-react"},{"name":"autoprefixer","old_version":"10.4.24","new_version":"10.5.0","repository_url":"https://github.com/postcss/autoprefixer"},{"name":"globby","old_version":"16.1.1","new_version":"16.2.0","repository_url":"https://github.com/sindresorhus/globby"},{"name":"@react-email/components","old_version":"1.0.8","new_version":"1.0.12","repository_url":"https://github.com/resend/react-email"},{"name":"@react-email/render","old_version":"2.0.4","new_version":"2.0.8","repository_url":"https://github.com/resend/react-email"},{"name":"@react-email/preview-server","old_version":"5.2.8","new_version":"5.2.10","repository_url":"https://github.com/resend/react-email"},{"name":"react-email","old_version":"5.2.8","new_version":"6.1.1","repository_url":"https://github.com/resend/react-email"},{"name":"@astrojs/react","old_version":"4.4.2","new_version":"5.0.4","repository_url":"https://github.com/withastro/astro"},{"name":"astro","old_version":"5.17.2","new_version":"6.3.1","repository_url":"https://github.com/withastro/astro"},{"name":"dotenv","old_version":"17.3.1","new_version":"17.4.2","repository_url":"https://github.com/motdotla/dotenv"},{"name":"drizzle-kit","old_version":"0.31.9","new_version":"0.31.10","repository_url":"https://github.com/drizzle-team/drizzle-orm"},{"name":"@modelcontextprotocol/sdk","old_version":"1.26.0","new_version":"1.29.0","repository_url":"https://github.com/modelcontextprotocol/typescript-sdk"},{"name":"got","old_version":"14.6.6","new_version":"15.0.5","repository_url":"https://github.com/sindresorhus/got"}],"path":null,"ecosystem":"npm"},"body":"Bumps the all-dependencies group with 62 updates in the / directory:\n\n| Package | From | To |\n| --- | --- | --- |\n| [@eslint-react/eslint-plugin](https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin) | `2.13.0` | `5.7.5` |\n| [@eslint/js](https://github.com/eslint/eslint/tree/HEAD/packages/js) | `9.39.2` | `10.0.1` |\n| [@typescript-eslint/eslint-plugin](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin) | `8.56.0` | `8.59.2` |\n| [@typescript-eslint/parser](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/parser) | `8.56.0` | `8.59.2` |\n| [eslint](https://github.com/eslint/eslint) | `9.39.2` | `10.3.0` |\n| [eslint-plugin-react-hooks](https://github.com/facebook/react/tree/HEAD/packages/eslint-plugin-react-hooks) | `7.0.1` | `7.1.1` |\n| [globals](https://github.com/sindresorhus/globals) | `17.3.0` | `17.6.0` |\n| [graphql](https://github.com/graphql/graphql-js) | `16.12.0` | `16.14.0` |\n| [happy-dom](https://github.com/capricorn86/happy-dom) | `20.6.2` | `20.9.0` |\n| [jiti](https://github.com/unjs/jiti) | `2.6.1` | `2.7.0` |\n| [lint-staged](https://github.com/lint-staged/lint-staged) | `16.2.7` | `17.0.4` |\n| [mermaid](https://github.com/mermaid-js/mermaid) | `11.12.3` | `11.14.0` |\n| [prettier](https://github.com/prettier/prettier) | `3.8.1` | `3.8.3` |\n| [react](https://github.com/facebook/react/tree/HEAD/packages/react) | `19.2.4` | `19.2.6` |\n| [typescript](https://github.com/microsoft/TypeScript) | `5.9.3` | `6.0.3` |\n| [typescript-eslint](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/typescript-eslint) | `8.56.0` | `8.59.2` |\n| [typescript-language-server](https://github.com/typescript-language-server/typescript-language-server) | `5.1.3` | `5.2.0` |\n| [vite](https://github.com/vitejs/vite/tree/HEAD/packages/vite) | `7.3.1` | `8.0.11` |\n| [vitepress](https://github.com/vuejs/vitepress) | `2.0.0-alpha.16` | `2.0.0-alpha.17` |\n| [vitepress-plugin-llms](https://github.com/okineadev/vitepress-plugin-llms) | `1.11.0` | `1.12.2` |\n| [vitest](https://github.com/vitest-dev/vitest/tree/HEAD/packages/vitest) | `4.0.18` | `4.1.5` |\n| [wrangler](https://github.com/cloudflare/workers-sdk/tree/HEAD/packages/wrangler) | `4.66.0` | `4.90.0` |\n| [@ai-sdk/openai](https://github.com/vercel/ai/tree/HEAD/packages/openai) | `3.0.29` | `3.0.63` |\n| [@better-auth/passkey](https://github.com/better-auth/better-auth/tree/HEAD/packages/passkey) | `1.4.18` | `1.6.10` |\n| [@better-auth/stripe](https://github.com/better-auth/better-auth/tree/HEAD/packages/stripe) | `1.4.18` | `1.6.10` |\n| [@trpc/server](https://github.com/trpc/trpc/tree/HEAD/packages/server) | `11.10.0` | `11.17.0` |\n| [ai](https://github.com/vercel/ai/tree/HEAD/packages/ai) | `6.0.91` | `6.0.177` |\n| [better-auth](https://github.com/better-auth/better-auth/tree/HEAD/packages/better-auth) | `1.4.18` | `1.6.10` |\n| [drizzle-orm](https://github.com/drizzle-team/drizzle-orm) | `0.45.1` | `0.45.2` |\n| [postgres](https://github.com/porsager/postgres) | `3.4.8` | `3.4.9` |\n| [resend](https://github.com/resend/resend-node) | `6.9.2` | `6.12.3` |\n| [stripe](https://github.com/stripe/stripe-node) | `20.3.1` | `22.1.1` |\n| [@cloudflare/workers-types](https://github.com/cloudflare/workerd) | `4.20260218.0` | `4.20260511.1` |\n| [@types/bun](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/bun) | `1.3.9` | `1.3.13` |\n| [hono](https://github.com/honojs/hono) | `4.11.10` | `4.12.18` |\n| [@tanstack/react-query](https://github.com/TanStack/query/tree/HEAD/packages/react-query) | `5.90.21` | `5.100.9` |\n| [@tanstack/react-router](https://github.com/TanStack/router/tree/HEAD/packages/react-router) | `1.161.1` | `1.169.2` |\n| [@trpc/client](https://github.com/trpc/trpc/tree/HEAD/packages/client) | `11.10.0` | `11.17.0` |\n| [@trpc/tanstack-react-query](https://github.com/trpc/trpc/tree/HEAD/packages/tanstack-react-query) | `11.10.0` | `11.17.0` |\n| [jotai](https://github.com/pmndrs/jotai) | `2.17.1` | `2.20.0` |\n| [lucide-react](https://github.com/lucide-icons/lucide/tree/HEAD/packages/lucide-react) | `0.574.0` | `1.14.0` |\n| [react-dom](https://github.com/facebook/react/tree/HEAD/packages/react-dom) | `19.2.4` | `19.2.6` |\n| [tailwind-merge](https://github.com/dcastil/tailwind-merge) | `3.4.1` | `3.6.0` |\n| [@tailwindcss/postcss](https://github.com/tailwindlabs/tailwindcss/tree/HEAD/packages/@tailwindcss-postcss) | `4.2.0` | `4.3.0` |\n| [@tanstack/react-query-devtools](https://github.com/TanStack/query/tree/HEAD/packages/react-query-devtools) | `5.91.3` | `5.100.9` |\n| [@tanstack/react-router-devtools](https://github.com/TanStack/router/tree/HEAD/packages/react-router-devtools) | `1.161.1` | `1.166.13` |\n| [@tanstack/router-plugin](https://github.com/TanStack/router/tree/HEAD/packages/router-plugin) | `1.161.1` | `1.167.35` |\n| [@types/node](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/node) | `25.2.3` | `25.6.2` |\n| [@vitejs/plugin-react](https://github.com/vitejs/vite-plugin-react/tree/HEAD/packages/plugin-react) | `5.1.4` | `6.0.1` |\n| [@vitejs/plugin-react-swc](https://github.com/vitejs/vite-plugin-react/tree/HEAD/packages/plugin-react-swc) | `4.2.3` | `4.3.0` |\n| [autoprefixer](https://github.com/postcss/autoprefixer) | `10.4.24` | `10.5.0` |\n| [globby](https://github.com/sindresorhus/globby) | `16.1.1` | `16.2.0` |\n| [@react-email/components](https://github.com/resend/react-email/tree/HEAD/packages/components) | `1.0.8` | `1.0.12` |\n| [@react-email/render](https://github.com/resend/react-email/tree/HEAD/packages/render) | `2.0.4` | `2.0.8` |\n| [@react-email/preview-server](https://github.com/resend/react-email/tree/HEAD/packages/preview-server) | `5.2.8` | `5.2.10` |\n| [react-email](https://github.com/resend/react-email/tree/HEAD/packages/react-email) | `5.2.8` | `6.1.1` |\n| [@astrojs/react](https://github.com/withastro/astro/tree/HEAD/packages/integrations/react) | `4.4.2` | `5.0.4` |\n| [astro](https://github.com/withastro/astro/tree/HEAD/packages/astro) | `5.17.2` | `6.3.1` |\n| [dotenv](https://github.com/motdotla/dotenv) | `17.3.1` | `17.4.2` |\n| [drizzle-kit](https://github.com/drizzle-team/drizzle-orm) | `0.31.9` | `0.31.10` |\n| [@modelcontextprotocol/sdk](https://github.com/modelcontextprotocol/typescript-sdk) | `1.26.0` | `1.29.0` |\n| [got](https://github.com/sindresorhus/got) | `14.6.6` | `15.0.5` |\n\n\nUpdates `@eslint-react/eslint-plugin` from 2.13.0 to 5.7.5\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/Rel1cx/eslint-react/releases\"\u003e@​eslint-react/eslint-plugin's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev5.7.5 (2026-05-08)\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003ch3\u003e🏗️ Internal\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eBumped \u003ccode\u003e@eslint/compat\u003c/code\u003e from 2.0.5 to 2.1.0.\u003c/li\u003e\n\u003cli\u003eBumped \u003ccode\u003e@types/node\u003c/code\u003e from 25.6.0 to 25.6.2.\u003c/li\u003e\n\u003cli\u003eBumped \u003ccode\u003enext\u003c/code\u003e from 16.2.5 to 16.2.6.\u003c/li\u003e\n\u003cli\u003eBumped \u003ccode\u003epublint\u003c/code\u003e from 0.3.19 to 0.3.20.\u003c/li\u003e\n\u003cli\u003eBumped \u003ccode\u003etsdown\u003c/code\u003e from 0.21.10 to 0.22.0.\u003c/li\u003e\n\u003cli\u003eBumped \u003ccode\u003epnpm\u003c/code\u003e from 10.33.4 to 11.0.8.\u003c/li\u003e\n\u003cli\u003eAdjusted website styles.\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/Rel1cx/eslint-react/compare/v5.7.4...v5.7.5\"\u003ehttps://github.com/Rel1cx/eslint-react/compare/v5.7.4...v5.7.5\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev5.7.4 (2026-05-07)\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003ch3\u003e🏗️ Internal\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eBumped \u003ccode\u003e@typescript-eslint\u003c/code\u003e packages from 8.59.1 to 8.59.2.\u003c/li\u003e\n\u003cli\u003eBumped \u003ccode\u003ereact\u003c/code\u003e and \u003ccode\u003ereact-dom\u003c/code\u003e from 19.2.5 to 19.2.6.\u003c/li\u003e\n\u003cli\u003eBumped \u003ccode\u003enext\u003c/code\u003e from 16.2.4 to 16.2.5.\u003c/li\u003e\n\u003cli\u003eBumped \u003ccode\u003enx\u003c/code\u003e from 22.7.1 to 23.0.0-canary.20260506-b594537.\u003c/li\u003e\n\u003cli\u003eBumped \u003ccode\u003efumadocs-core\u003c/code\u003e and \u003ccode\u003efumadocs-ui\u003c/code\u003e from 16.8.5 to 16.8.7.\u003c/li\u003e\n\u003cli\u003eBumped \u003ccode\u003epostcss\u003c/code\u003e from 8.5.13 to 8.5.14.\u003c/li\u003e\n\u003cli\u003eBumped \u003ccode\u003epublint\u003c/code\u003e from 0.3.18 to 0.3.19.\u003c/li\u003e\n\u003cli\u003eBumped \u003ccode\u003epnpm\u003c/code\u003e from 10.33.2 to 10.33.4.\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/Rel1cx/eslint-react/compare/v5.7.3...v5.7.4\"\u003ehttps://github.com/Rel1cx/eslint-react/compare/v5.7.3...v5.7.4\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev5.7.3 (2026-05-06)\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003ch3\u003e🐞 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003e\u003ccode\u003ereact-x/immutability\u003c/code\u003e\u003c/strong\u003e: Exempted ref mutations via a naming heuristic — any object whose identifier is \u003ccode\u003eref\u003c/code\u003e or ends with \u003ccode\u003eRef\u003c/code\u003e is treated as a mutable ref and skipped from immutability checks. This fixes false positives when mutating \u003ccode\u003eRefObject\u0026lt;T\u0026gt;\u003c/code\u003e values received as props (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1752\"\u003e#1752\u003c/a\u003e, \u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1751\"\u003e#1751\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003e\u003ccode\u003ereact-x/immutability\u003c/code\u003e\u003c/strong\u003e: Added \u003ccode\u003enoRefLikeStateName\u003c/code\u003e diagnostic to prevent state variables from being named \u003ccode\u003eref\u003c/code\u003e or ending with \u003ccode\u003eRef\u003c/code\u003e, which would otherwise bypass the ref exemption heuristic (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1752\"\u003e#1752\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e📝 Documentation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFixed the full rule name in \u003ccode\u003ereact-jsx/no-key-after-spread\u003c/code\u003e documentation (\u003ccode\u003ejsx/no-key-after-spread\u003c/code\u003e → \u003ccode\u003ejsx-no-key-after-spread\u003c/code\u003e) (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1750\"\u003e#1750\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/Rel1cx/eslint-react/compare/v5.7.2...v5.7.3\"\u003ehttps://github.com/Rel1cx/eslint-react/compare/v5.7.2...v5.7.3\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev5.7.2 (2026-05-04)\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003ch3\u003e🐞 Fixes\u003c/h3\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/Rel1cx/eslint-react/blob/main/CHANGELOG.md\"\u003e@​eslint-react/eslint-plugin's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev5.7.5 (2026-05-08)\u003c/h2\u003e\n\u003ch3\u003e🏗️ Internal\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eBumped \u003ccode\u003e@eslint/compat\u003c/code\u003e from 2.0.5 to 2.1.0.\u003c/li\u003e\n\u003cli\u003eBumped \u003ccode\u003e@types/node\u003c/code\u003e from 25.6.0 to 25.6.2.\u003c/li\u003e\n\u003cli\u003eBumped \u003ccode\u003enext\u003c/code\u003e from 16.2.5 to 16.2.6.\u003c/li\u003e\n\u003cli\u003eBumped \u003ccode\u003epublint\u003c/code\u003e from 0.3.19 to 0.3.20.\u003c/li\u003e\n\u003cli\u003eBumped \u003ccode\u003etsdown\u003c/code\u003e from 0.21.10 to 0.22.0.\u003c/li\u003e\n\u003cli\u003eBumped \u003ccode\u003epnpm\u003c/code\u003e from 10.33.4 to 11.0.8.\u003c/li\u003e\n\u003cli\u003eAdjusted website styles.\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/Rel1cx/eslint-react/compare/v5.7.4...v5.7.5\"\u003ehttps://github.com/Rel1cx/eslint-react/compare/v5.7.4...v5.7.5\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev5.7.4 (2026-05-07)\u003c/h2\u003e\n\u003ch3\u003e🏗️ Internal\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eBumped \u003ccode\u003e@typescript-eslint\u003c/code\u003e packages from 8.59.1 to 8.59.2.\u003c/li\u003e\n\u003cli\u003eBumped \u003ccode\u003ereact\u003c/code\u003e and \u003ccode\u003ereact-dom\u003c/code\u003e from 19.2.5 to 19.2.6.\u003c/li\u003e\n\u003cli\u003eBumped \u003ccode\u003enext\u003c/code\u003e from 16.2.4 to 16.2.5.\u003c/li\u003e\n\u003cli\u003eBumped \u003ccode\u003enx\u003c/code\u003e from 22.7.1 to 23.0.0-canary.20260506-b594537.\u003c/li\u003e\n\u003cli\u003eBumped \u003ccode\u003efumadocs-core\u003c/code\u003e and \u003ccode\u003efumadocs-ui\u003c/code\u003e from 16.8.5 to 16.8.7.\u003c/li\u003e\n\u003cli\u003eBumped \u003ccode\u003epostcss\u003c/code\u003e from 8.5.13 to 8.5.14.\u003c/li\u003e\n\u003cli\u003eBumped \u003ccode\u003epublint\u003c/code\u003e from 0.3.18 to 0.3.19.\u003c/li\u003e\n\u003cli\u003eBumped \u003ccode\u003epnpm\u003c/code\u003e from 10.33.2 to 10.33.4.\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/Rel1cx/eslint-react/compare/v5.7.3...v5.7.4\"\u003ehttps://github.com/Rel1cx/eslint-react/compare/v5.7.3...v5.7.4\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev5.7.3 (2026-05-06)\u003c/h2\u003e\n\u003ch3\u003e🐞 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003e\u003ccode\u003ereact-x/immutability\u003c/code\u003e\u003c/strong\u003e: Exempted ref mutations via a naming heuristic — any object whose identifier is \u003ccode\u003eref\u003c/code\u003e or ends with \u003ccode\u003eRef\u003c/code\u003e is treated as a mutable ref and skipped from immutability checks. This fixes false positives when mutating \u003ccode\u003eRefObject\u0026lt;T\u0026gt;\u003c/code\u003e values received as props (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1752\"\u003e#1752\u003c/a\u003e, \u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1751\"\u003e#1751\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003e\u003ccode\u003ereact-x/immutability\u003c/code\u003e\u003c/strong\u003e: Added \u003ccode\u003enoRefLikeStateName\u003c/code\u003e diagnostic to prevent state variables from being named \u003ccode\u003eref\u003c/code\u003e or ending with \u003ccode\u003eRef\u003c/code\u003e, which would otherwise bypass the ref exemption heuristic (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1752\"\u003e#1752\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e📝 Documentation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFixed the full rule name in \u003ccode\u003ereact-jsx/no-key-after-spread\u003c/code\u003e documentation (\u003ccode\u003ejsx/no-key-after-spread\u003c/code\u003e → \u003ccode\u003ejsx-no-key-after-spread\u003c/code\u003e) (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1750\"\u003e#1750\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/Rel1cx/eslint-react/compare/v5.7.2...v5.7.3\"\u003ehttps://github.com/Rel1cx/eslint-react/compare/v5.7.2...v5.7.3\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev5.7.2 (2026-05-04)\u003c/h2\u003e\n\u003ch3\u003e🐞 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003e\u003ccode\u003ereact-x/no-unused-state\u003c/code\u003e\u003c/strong\u003e: Removed the rule from the \u003ccode\u003erecommended\u003c/code\u003e preset for now (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1747\"\u003e#1747\u003c/a\u003e, \u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1748\"\u003e#1748\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e📝 Documentation\u003c/h3\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/de60fa2e3003c60e8c4f03970b5b84c7c9c84334\"\u003e\u003ccode\u003ede60fa2\u003c/code\u003e\u003c/a\u003e release: 5.7.5\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/2b075487d7952a8662c76305b64ce677776bab34\"\u003e\u003ccode\u003e2b07548\u003c/code\u003e\u003c/a\u003e release: 5.7.5-beta.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/9e186c17a28ff1d9e02e0a22f4f6b18193ceadca\"\u003e\u003ccode\u003e9e186c1\u003c/code\u003e\u003c/a\u003e release: 5.7.5-next.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/f7b012180b71b03a69e944b39fdc88811b16839b\"\u003e\u003ccode\u003ef7b0121\u003c/code\u003e\u003c/a\u003e chore: bump dependencies and adjust website styles (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1754\"\u003e#1754\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/99736d816cdcb56dd71be0ba8440c6b12017d862\"\u003e\u003ccode\u003e99736d8\u003c/code\u003e\u003c/a\u003e release: 5.7.4\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/bcd23f09215b120a119a53eacdb12e670ee897b9\"\u003e\u003ccode\u003ebcd23f0\u003c/code\u003e\u003c/a\u003e release: 5.7.4-beta.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/52071021ab5ae079fa69fc3996ac9109a76c230a\"\u003e\u003ccode\u003e5207102\u003c/code\u003e\u003c/a\u003e release: 5.7.4-next.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/b35fba3ea0e14827433efcc6017e8eaef0ca6486\"\u003e\u003ccode\u003eb35fba3\u003c/code\u003e\u003c/a\u003e Bump dependencies: eslint, react, next, and nx packages\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/a9098f22fc1a8c7b59e3b4916d0d5ff3cb2358be\"\u003e\u003ccode\u003ea9098f2\u003c/code\u003e\u003c/a\u003e release: 5.7.3\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/677db67c648814dbc500bdd40dea84ac9efa770c\"\u003e\u003ccode\u003e677db67\u003c/code\u003e\u003c/a\u003e release: 5.7.2\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/Rel1cx/eslint-react/commits/v5.7.5/plugins/eslint-plugin\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@eslint/js` from 9.39.2 to 10.0.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/eslint/eslint/releases\"\u003e@​eslint/js's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev10.0.1\u003c/h2\u003e\n\u003ch2\u003eBug Fixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/c87d5bded54c5cf491eb04c24c9d09bbbd42c23e\"\u003e\u003ccode\u003ec87d5bd\u003c/code\u003e\u003c/a\u003e fix: update eslint (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20531\"\u003e#20531\u003c/a\u003e) (renovate[bot])\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/d84100115c14691691058f00779c94e74fca946a\"\u003e\u003ccode\u003ed841001\u003c/code\u003e\u003c/a\u003e fix: update \u003ccode\u003eminimatch\u003c/code\u003e to \u003ccode\u003e10.2.1\u003c/code\u003e to address security vulnerabilities (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20519\"\u003e#20519\u003c/a\u003e) (루밀LuMir)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/04c21475b3004904948f02049f2888b401d82c78\"\u003e\u003ccode\u003e04c2147\u003c/code\u003e\u003c/a\u003e fix: update error message for unused suppressions (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20496\"\u003e#20496\u003c/a\u003e) (fnx)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/38b089c1726feac0e31a31d47941bd99e29ce003\"\u003e\u003ccode\u003e38b089c\u003c/code\u003e\u003c/a\u003e fix: update dependency \u003ccode\u003e@​eslint/config-array\u003c/code\u003e to ^0.23.1 (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20484\"\u003e#20484\u003c/a\u003e) (renovate[bot])\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eDocumentation\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/5b3dbce50a1404a9f118afe810cefeee79388a2a\"\u003e\u003ccode\u003e5b3dbce\u003c/code\u003e\u003c/a\u003e docs: add AI acknowledgement section to templates (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20431\"\u003e#20431\u003c/a\u003e) (루밀LuMir)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/6f23076037d5879f20fb3be2ef094293b1e8d38c\"\u003e\u003ccode\u003e6f23076\u003c/code\u003e\u003c/a\u003e docs: toggle nav in no-JS mode (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20476\"\u003e#20476\u003c/a\u003e) (Tanuj Kanti)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/b69cfb32a16c5d5e9986390d484fae1d21e406f9\"\u003e\u003ccode\u003eb69cfb3\u003c/code\u003e\u003c/a\u003e docs: Update README (GitHub Actions Bot)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eChores\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/e5c281ffd038a3a7a3e5364db0b9378e0ad83020\"\u003e\u003ccode\u003ee5c281f\u003c/code\u003e\u003c/a\u003e chore: updates for v9.39.3 release (Jenkins)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/8c3832adb77cd993b4a24891900d5eeaaf093cdc\"\u003e\u003ccode\u003e8c3832a\u003c/code\u003e\u003c/a\u003e chore: update \u003ccode\u003e@​typescript-eslint/parser\u003c/code\u003e to ^8.56.0 (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20514\"\u003e#20514\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/8330d238ae6adb68bb6a1c9381e38cfedd990d94\"\u003e\u003ccode\u003e8330d23\u003c/code\u003e\u003c/a\u003e test: add tests for config-api (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20493\"\u003e#20493\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/37d6e91e88fa6a2ca6d8726679096acff21ba6cc\"\u003e\u003ccode\u003e37d6e91\u003c/code\u003e\u003c/a\u003e chore: remove eslint v10 prereleases from eslint-config-eslint deps (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20494\"\u003e#20494\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/da7cd0e79197ad16e17052eef99df141de6dbfb1\"\u003e\u003ccode\u003eda7cd0e\u003c/code\u003e\u003c/a\u003e refactor: cleanup error message templates (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20479\"\u003e#20479\u003c/a\u003e) (Francesco Trotta)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/84fb885d49ac810e79a9491276b4828b53d913e5\"\u003e\u003ccode\u003e84fb885\u003c/code\u003e\u003c/a\u003e chore: package.json update for \u003ccode\u003e@​eslint/js\u003c/code\u003e release (Jenkins)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/1f667344b57c4c09b548d94bcfac1f91b6e5c63d\"\u003e\u003ccode\u003e1f66734\u003c/code\u003e\u003c/a\u003e chore: add \u003ccode\u003eeslint\u003c/code\u003e to \u003ccode\u003epeerDependencies\u003c/code\u003e of \u003ccode\u003e@eslint/js\u003c/code\u003e (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20467\"\u003e#20467\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev10.0.0\u003c/h2\u003e\n\u003ch2\u003eBreaking Changes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/f9e54f43a5e497cdfa179338b431093245cb787b\"\u003e\u003ccode\u003ef9e54f4\u003c/code\u003e\u003c/a\u003e feat!: estimate rule-tester failure location (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20420\"\u003e#20420\u003c/a\u003e) (ST-DDT)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/a176319d8ade1a7d9b2d7fb8f038f55a2662325f\"\u003e\u003ccode\u003ea176319\u003c/code\u003e\u003c/a\u003e feat!: replace \u003ccode\u003echalk\u003c/code\u003e with \u003ccode\u003estyleText\u003c/code\u003e and add \u003ccode\u003ecolor\u003c/code\u003e to \u003ccode\u003eResultsMeta\u003c/code\u003e (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20227\"\u003e#20227\u003c/a\u003e) (루밀LuMir)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/c7046e6c1e03c4ca0eee4888a1f2eba4c6454f84\"\u003e\u003ccode\u003ec7046e6\u003c/code\u003e\u003c/a\u003e feat!: enable JSX reference tracking (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20152\"\u003e#20152\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/fa31a608901684fbcd9906d1907e66561d16e5aa\"\u003e\u003ccode\u003efa31a60\u003c/code\u003e\u003c/a\u003e feat!: add \u003ccode\u003ename\u003c/code\u003e to configs (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20015\"\u003e#20015\u003c/a\u003e) (Kirk Waiblinger)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/3383e7ec9028166cafc8ea7986c2f7498d0049f0\"\u003e\u003ccode\u003e3383e7e\u003c/code\u003e\u003c/a\u003e fix!: remove deprecated \u003ccode\u003eSourceCode\u003c/code\u003e methods (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20137\"\u003e#20137\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/501abd0e916a35554c58b7c0365537f1fa3880ce\"\u003e\u003ccode\u003e501abd0\u003c/code\u003e\u003c/a\u003e feat!: update dependency minimatch to v10 (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20246\"\u003e#20246\u003c/a\u003e) (renovate[bot])\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/ca4d3b40085de47561f89656a2207d09946ed45e\"\u003e\u003ccode\u003eca4d3b4\u003c/code\u003e\u003c/a\u003e fix!: stricter rule tester assertions for valid test cases (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20125\"\u003e#20125\u003c/a\u003e) (唯然)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/96512a66c86402fb0538cdcb6cd30b9073f6bf3b\"\u003e\u003ccode\u003e96512a6\u003c/code\u003e\u003c/a\u003e fix!: Remove deprecated rule context methods (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20086\"\u003e#20086\u003c/a\u003e) (Nicholas C. Zakas)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/c69fdacdb2e886b9d965568a397aa8220db3fe90\"\u003e\u003ccode\u003ec69fdac\u003c/code\u003e\u003c/a\u003e feat!: remove eslintrc support (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20037\"\u003e#20037\u003c/a\u003e) (Francesco Trotta)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/208b5cc34a8374ff81412b5bec2e0800eebfbd04\"\u003e\u003ccode\u003e208b5cc\u003c/code\u003e\u003c/a\u003e feat!: Use \u003ccode\u003eScopeManager#addGlobals()\u003c/code\u003e (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20132\"\u003e#20132\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/a2ee188ea7a38a0c6155f3d39e2b00e1d0f36e14\"\u003e\u003ccode\u003ea2ee188\u003c/code\u003e\u003c/a\u003e fix!: add \u003ccode\u003euniqueItems: true\u003c/code\u003e in \u003ccode\u003eno-invalid-regexp\u003c/code\u003e option (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20155\"\u003e#20155\u003c/a\u003e) (Tanuj Kanti)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/a89059dbf2832d417dd493ee81483227ec44e4ab\"\u003e\u003ccode\u003ea89059d\u003c/code\u003e\u003c/a\u003e feat!: Program range span entire source text (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20133\"\u003e#20133\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/39a6424373d915fa9de0d7b0caba9a4dc3da9b53\"\u003e\u003ccode\u003e39a6424\u003c/code\u003e\u003c/a\u003e fix!: assert 'text' is a string across all RuleFixer methods (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20082\"\u003e#20082\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/f28fbf846244e043c92b355b224d121b06140b44\"\u003e\u003ccode\u003ef28fbf8\u003c/code\u003e\u003c/a\u003e fix!: Deprecate \u003ccode\u003e\u0026quot;always\u0026quot;\u003c/code\u003e and \u003ccode\u003e\u0026quot;as-needed\u0026quot;\u003c/code\u003e options of the \u003ccode\u003eradix\u003c/code\u003e rule (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20223\"\u003e#20223\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/aa3fb2b233e929b37220be940575f42c280e0b98\"\u003e\u003ccode\u003eaa3fb2b\u003c/code\u003e\u003c/a\u003e fix!: tighten \u003ccode\u003efunc-names\u003c/code\u003e schema (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20119\"\u003e#20119\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/f6c0ed0311dcfee853367d5068c765d066e6b756\"\u003e\u003ccode\u003ef6c0ed0\u003c/code\u003e\u003c/a\u003e feat!: report \u003ccode\u003eeslint-env\u003c/code\u003e comments as errors (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20128\"\u003e#20128\u003c/a\u003e) (Francesco Trotta)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/4bf739fb533e59f7f0a66b65f7bc80be0f37d8db\"\u003e\u003ccode\u003e4bf739f\u003c/code\u003e\u003c/a\u003e fix!: remove deprecated \u003ccode\u003eLintMessage#nodeType\u003c/code\u003e and \u003ccode\u003eTestCaseError#type\u003c/code\u003e (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20096\"\u003e#20096\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/523c076866400670fb2192a3f55dbf7ad3469247\"\u003e\u003ccode\u003e523c076\u003c/code\u003e\u003c/a\u003e feat!: drop support for jiti \u0026lt; 2.2.0 (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20016\"\u003e#20016\u003c/a\u003e) (michael faith)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/454a292c95f34dad232411ddac06408e6383bb64\"\u003e\u003ccode\u003e454a292\u003c/code\u003e\u003c/a\u003e feat!: update \u003ccode\u003eeslint:recommended\u003c/code\u003e configuration (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20210\"\u003e#20210\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/4f880ee02992e1bf0e96ebaba679985e2d1295f1\"\u003e\u003ccode\u003e4f880ee\u003c/code\u003e\u003c/a\u003e feat!: remove \u003ccode\u003ev10_*\u003c/code\u003e and inactive \u003ccode\u003eunstable_*\u003c/code\u003e flags (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20225\"\u003e#20225\u003c/a\u003e) (sethamus)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/f18115c363a4ac7671a4c7f30ee13d57ebba330f\"\u003e\u003ccode\u003ef18115c\u003c/code\u003e\u003c/a\u003e feat!: \u003ccode\u003eno-shadow-restricted-names\u003c/code\u003e report \u003ccode\u003eglobalThis\u003c/code\u003e by default (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20027\"\u003e#20027\u003c/a\u003e) (sethamus)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/c6358c31fbd3937b92d89be2618ffdf5a774604e\"\u003e\u003ccode\u003ec6358c3\u003c/code\u003e\u003c/a\u003e feat!: Require Node.js \u003ccode\u003e^20.19.0 || ^22.13.0 || \u0026gt;=24\u003c/code\u003e (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20160\"\u003e#20160\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eFeatures\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/bff9091927811497dbf066b0e3b85ecb37d43822\"\u003e\u003ccode\u003ebff9091\u003c/code\u003e\u003c/a\u003e feat: handle \u003ccode\u003eArray.fromAsync\u003c/code\u003e in \u003ccode\u003earray-callback-return\u003c/code\u003e (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20457\"\u003e#20457\u003c/a\u003e) (Francesco Trotta)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/290c594bb50c439fb71bc75521ee5360daa8c222\"\u003e\u003ccode\u003e290c594\u003c/code\u003e\u003c/a\u003e feat: add \u003ccode\u003eself\u003c/code\u003e to \u003ccode\u003eno-implied-eval\u003c/code\u003e rule (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20468\"\u003e#20468\u003c/a\u003e) (sethamus)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/43677de07ebd6e14bfac40a46ad749ba783c45f2\"\u003e\u003ccode\u003e43677de\u003c/code\u003e\u003c/a\u003e feat: fix handling of function and class expression names in \u003ccode\u003eno-shadow\u003c/code\u003e (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20432\"\u003e#20432\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/84fb885d49ac810e79a9491276b4828b53d913e5\"\u003e\u003ccode\u003e84fb885\u003c/code\u003e\u003c/a\u003e chore: package.json update for \u003ccode\u003e@​eslint/js\u003c/code\u003e release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/1f667344b57c4c09b548d94bcfac1f91b6e5c63d\"\u003e\u003ccode\u003e1f66734\u003c/code\u003e\u003c/a\u003e chore: add \u003ccode\u003eeslint\u003c/code\u003e to \u003ccode\u003epeerDependencies\u003c/code\u003e of \u003ccode\u003e@eslint/js\u003c/code\u003e (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20467\"\u003e#20467\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/f3fbc2f60cbe2c718364feb8c3fc0452c0df3c56\"\u003e\u003ccode\u003ef3fbc2f\u003c/code\u003e\u003c/a\u003e chore: set \u003ccode\u003e@eslint/js\u003c/code\u003e version to 10.0.0 to skip releasing it (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20466\"\u003e#20466\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/b4b3127f8542c599ce2dea804b6582ebc40c993d\"\u003e\u003ccode\u003eb4b3127\u003c/code\u003e\u003c/a\u003e chore: package.json update for \u003ccode\u003e@​eslint/js\u003c/code\u003e release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/0b14059491d830a49b3577931f4f68fbcfce6be5\"\u003e\u003ccode\u003e0b14059\u003c/code\u003e\u003c/a\u003e chore: package.json update for \u003ccode\u003e@​eslint/js\u003c/code\u003e release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/fa31a608901684fbcd9906d1907e66561d16e5aa\"\u003e\u003ccode\u003efa31a60\u003c/code\u003e\u003c/a\u003e feat!: add \u003ccode\u003ename\u003c/code\u003e to configs (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20015\"\u003e#20015\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/1e2cad5f6fa47ed6ed89d2a29798dda926d50990\"\u003e\u003ccode\u003e1e2cad5\u003c/code\u003e\u003c/a\u003e chore: package.json update for \u003ccode\u003e@​eslint/js\u003c/code\u003e release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/454a292c95f34dad232411ddac06408e6383bb64\"\u003e\u003ccode\u003e454a292\u003c/code\u003e\u003c/a\u003e feat!: update \u003ccode\u003eeslint:recommended\u003c/code\u003e configuration (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20210\"\u003e#20210\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/c6358c31fbd3937b92d89be2618ffdf5a774604e\"\u003e\u003ccode\u003ec6358c3\u003c/code\u003e\u003c/a\u003e feat!: Require Node.js \u003ccode\u003e^20.19.0 || ^22.13.0 || \u0026gt;=24\u003c/code\u003e (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20160\"\u003e#20160\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/eslint/eslint/commits/v10.0.1/packages/js\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@typescript-eslint/eslint-plugin` from 8.56.0 to 8.59.2\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases\"\u003e@​typescript-eslint/eslint-plugin's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev8.59.2\u003c/h2\u003e\n\u003ch2\u003e8.59.2 (2026-05-04)\u003c/h2\u003e\n\u003ch3\u003e🩹 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unsafe-type-assertion] handle crash on recursive template literal types (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12150\"\u003e#12150\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-deprecated] object destructuring values should be treated as declarations (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12292\"\u003e#12292\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003erule-tester:\u003c/strong\u003e add TypeScript as a peer dependency (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12288\"\u003e#12288\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e❤️ Thank You\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eDariusz Czajkowski\u003c/li\u003e\n\u003cli\u003eDima Barabash\u003c/li\u003e\n\u003cli\u003eKirk Waiblinger \u003ca href=\"https://github.com/kirkwaiblinger\"\u003e\u003ccode\u003e@​kirkwaiblinger\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.2\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003ev8.59.1\u003c/h2\u003e\n\u003ch2\u003e8.59.1 (2026-04-27)\u003c/h2\u003e\n\u003ch3\u003e🩹 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-type-assertion] fix crash \u0026quot;TypeError: checker.getTypeArguments is not a function\u0026quot; (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12246\"\u003e#12246\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-type-assertion] preserve index signatures in undefined unions (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12257\"\u003e#12257\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-type-assertion] preserve phantom type arguments in generic inference (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12269\"\u003e#12269\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-type-assertion] avoid false positive in logical assignment assertions (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12278\"\u003e#12278\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-type-arguments] handle instantiation expressions (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12220\"\u003e#12220\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-condition] treat void as nullish in no-unnecessary-condition (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12241\"\u003e#12241\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e❤️ Thank You\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eanasm266 \u003ca href=\"https://github.com/anasm266\"\u003e\u003ccode\u003e@​anasm266\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAnshika Jain \u003ca href=\"https://github.com/Anshikakalpana\"\u003e\u003ccode\u003e@​Anshikakalpana\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUlrich Stark\u003c/li\u003e\n\u003cli\u003eyugo innami \u003ca href=\"https://github.com/nami8824\"\u003e\u003ccode\u003e@​nami8824\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.1\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003ev8.59.0\u003c/h2\u003e\n\u003ch2\u003e8.59.0 (2026-04-20)\u003c/h2\u003e\n\u003ch3\u003e🚀 Features\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-type-assertion] report more cases based on assignability (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/11789\"\u003e#11789\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e❤️ Thank You\u003c/h3\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/CHANGELOG.md\"\u003e@​typescript-eslint/eslint-plugin's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e8.59.2 (2026-05-04)\u003c/h2\u003e\n\u003ch3\u003e🩹 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-deprecated] object destructuring values should be treated as declarations (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12292\"\u003e#12292\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unsafe-type-assertion] handle crash on recursive template literal types (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12150\"\u003e#12150\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e❤️ Thank You\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eDima Barabash\u003c/li\u003e\n\u003cli\u003eKirk Waiblinger \u003ca href=\"https://github.com/kirkwaiblinger\"\u003e\u003ccode\u003e@​kirkwaiblinger\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.2\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003e8.59.1 (2026-04-27)\u003c/h2\u003e\n\u003ch3\u003e🩹 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-condition] treat void as nullish in no-unnecessary-condition (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12241\"\u003e#12241\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-type-arguments] handle instantiation expressions (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12220\"\u003e#12220\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-type-assertion] avoid false positive in logical assignment assertions (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12278\"\u003e#12278\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-type-assertion] preserve phantom type arguments in generic inference (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12269\"\u003e#12269\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-type-assertion] preserve index signatures in undefined unions (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12257\"\u003e#12257\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-type-assertion] fix crash \u0026quot;TypeError: checker.getTypeArguments is not a function\u0026quot; (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12246\"\u003e#12246\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e❤️ Thank You\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eanasm266 \u003ca href=\"https://github.com/anasm266\"\u003e\u003ccode\u003e@​anasm266\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAnshika Jain \u003ca href=\"https://github.com/Anshikakalpana\"\u003e\u003ccode\u003e@​Anshikakalpana\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUlrich Stark\u003c/li\u003e\n\u003cli\u003eyugo innami \u003ca href=\"https://github.com/nami8824\"\u003e\u003ccode\u003e@​nami8824\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.1\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003e8.59.0 (2026-04-20)\u003c/h2\u003e\n\u003ch3\u003e🚀 Features\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-type-assertion] report more cases based on assignability (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/11789\"\u003e#11789\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e❤️ Thank You\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUlrich Stark\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.0\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/2ec35f1760aade4df4c631d76d78c7ed5e136333\"\u003e\u003ccode\u003e2ec35f1\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.59.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/ec3ef25390f7daf5a9ff33a60282bdbbb49ab0f3\"\u003e\u003ccode\u003eec3ef25\u003c/code\u003e\u003c/a\u003e test: make no-useless-empty-export tests fully static (\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin/issues/12260\"\u003e#12260\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/60d0a513870d833617374ff8ea256d86ca3cbbbb\"\u003e\u003ccode\u003e60d0a51\u003c/code\u003e\u003c/a\u003e chore(eslint-plugin): switch auto-generated test cases to hand-written in no-...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/5c53da230a70aba7d6f3d6474b5d249b430a95d0\"\u003e\u003ccode\u003e5c53da2\u003c/code\u003e\u003c/a\u003e fix(eslint-plugin): [no-deprecated] object destructuring values should be tre...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/80c28a1ada3f975a932a02587cefee632ccf6550\"\u003e\u003ccode\u003e80c28a1\u003c/code\u003e\u003c/a\u003e fix(eslint-plugin): [no-unsafe-type-assertion] handle crash on recursive temp...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/b7b2670123f76419630f88f3a807f85b7c535230\"\u003e\u003ccode\u003eb7b2670\u003c/code\u003e\u003c/a\u003e test: make no-this-alias tests fully static (\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin/issues/12258\"\u003e#12258\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/52457932e5507b5ca01e720a541f3f8d01e09b9d\"\u003e\u003ccode\u003e5245793\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.59.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/3cef12471659c42c9d4b179f4113a080b1fa2d66\"\u003e\u003ccode\u003e3cef124\u003c/code\u003e\u003c/a\u003e chore(eslint-plugin): switch auto-generated test cases to hand-written in dot...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/27c507b6e532abcd1efa51055f045b00f22055c3\"\u003e\u003ccode\u003e27c507b\u003c/code\u003e\u003c/a\u003e test: make sort-type-constituents tests fully static (\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin/issues/12262\"\u003e#12262\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/a03b31d422be35d8ddc979f48f9317e3f33dd1ce\"\u003e\u003ccode\u003ea03b31d\u003c/code\u003e\u003c/a\u003e chore(eslint-plugin): switch auto-generated test cases to hand-written in no-...\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commits/v8.59.2/packages/eslint-plugin\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@typescript-eslint/parser` from 8.56.0 to 8.59.2\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases\"\u003e@​typescript-eslint/parser's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev8.59.2\u003c/h2\u003e\n\u003ch2\u003e8.59.2 (2026-05-04)\u003c/h2\u003e\n\u003ch3\u003e🩹 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unsafe-type-assertion] handle crash on recursive template literal types (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12150\"\u003e#12150\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-deprecated] object destructuring values should be treated as declarations (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12292\"\u003e#12292\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003erule-tester:\u003c/strong\u003e add TypeScript as a peer dependency (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12288\"\u003e#12288\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e❤️ Thank You\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eDariusz Czajkowski\u003c/li\u003e\n\u003cli\u003eDima Barabash\u003c/li\u003e\n\u003cli\u003eKirk Waiblinger \u003ca href=\"https://github.com/kirkwaiblinger\"\u003e\u003ccode\u003e@​kirkwaiblinger\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.2\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003ev8.59.1\u003c/h2\u003e\n\u003ch2\u003e8.59.1 (2026-04-27)\u003c/h2\u003e\n\u003ch3\u003e🩹 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-type-assertion] fix crash \u0026quot;TypeError: checker.getTypeArguments is not a function\u0026quot; (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12246\"\u003e#12246\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-type-assertion] preserve index signatures in undefined unions (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12257\"\u003e#12257\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-type-assertion] preserve phantom type arguments in generic inference (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12269\"\u003e#12269\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-type-assertion] avoid false positive in logical assignment assertions (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12278\"\u003e#12278\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-type-arguments] handle instantiation expressions (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12220\"\u003e#12220\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-condition] treat void as nullish in no-unnecessary-condition (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12241\"\u003e#12241\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e❤️ Thank You\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eanasm266 \u003ca href=\"https://github.com/anasm266\"\u003e\u003ccode\u003e@​anasm266\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAnshika Jain \u003ca href=\"https://github.com/Anshikakalpana\"\u003e\u003ccode\u003e@​Anshikakalpana\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUlrich Stark\u003c/li\u003e\n\u003cli\u003eyugo innami \u003ca href=\"https://github.com/nami8824\"\u003e\u003ccode\u003e@​nami8824\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.1\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003ev8.59.0\u003c/h2\u003e\n\u003ch2\u003e8.59.0 (2026-04-20)\u003c/h2\u003e\n\u003ch3\u003e🚀 Features\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-type-assertion] report more cases based on assignability (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/11789\"\u003e#11789\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e❤️ Thank You\u003c/h3\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/parser/CHANGELOG.md\"\u003e@​typescript-eslint/parser's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e8.59.2 (2026-05-04)\u003c/h2\u003e\n\u003cp\u003eThis was a version bump only for parser to align it with other projects, there were no code changes.\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.2\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003e8.59.1 (2026-04-27)\u003c/h2\u003e\n\u003cp\u003eThis was a version bump only for parser to align it with other projects, there were no code changes.\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.1\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003e8.59.0 (2026-04-20)\u003c/h2\u003e\n\u003cp\u003eThis was a version bump only for parser to align it with other projects, there were no code changes.\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.0\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003e8.58.2 (2026-04-13)\u003c/h2\u003e\n\u003ch3\u003e🩹 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eremove tsbuildinfo cache file from published packages (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12187\"\u003e#12187\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e❤️ Thank You\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAbhijeet Singh \u003ca href=\"https://github.com/cseas\"\u003e\u003ccode\u003e@​cseas\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.58.2\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003e8.58.1 (2026-04-08)\u003c/h2\u003e\n\u003cp\u003eThis was a version bump only for parser to align it with other projects, there were no code changes.\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.58.1\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003e8.58.0 (2026-03-30)\u003c/h2\u003e\n\u003ch3\u003e🚀 Features\u003c/h3\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/2ec35f1760aade4df4c631d76d78c7ed5e136333\"\u003e\u003ccode\u003e2ec35f1\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.59.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/52457932e5507b5ca01e720a541f3f8d01e09b9d\"\u003e\u003ccode\u003e5245793\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.59.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/ea9ae4f8817873480e3501145059f63e39e8d8a1\"\u003e\u003ccode\u003eea9ae4f\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.59.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/90c2803a4c250e0343598d41e973f95e743bf4ce\"\u003e\u003ccode\u003e90c2803\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.58.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/be6b49a02d68db9bdc8985e7e9e1598700fda2fa\"\u003e\u003ccode\u003ebe6b49a\u003c/code\u003e\u003c/a\u003e fix: remove tsbuildinfo cache file from published packages (\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/parser/issues/12187\"\u003e#12187\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/5311ed312eadf4e238324f2726ae0b1f3f2206e6\"\u003e\u003ccode\u003e5311ed3\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.58.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/493341709fe7d1d6433332b7bd2724e3332c7cdf\"\u003e\u003ccode\u003e4933417\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.58.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/8cde2d06fb9bc591a4c93452509ddbd600c76a35\"\u003e\u003ccode\u003e8cde2d0\u003c/code\u003e\u003c/a\u003e feat: support TypeScript 6 (\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/parser/issues/12124\"\u003e#12124\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/be4d54d26e695cc93605ffcca67dd75848e95c6f\"\u003e\u003ccode\u003ebe4d54d\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.57.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/c7c38aa252d7bf6708a225aebedc57686ac33dcd\"\u003e\u003ccode\u003ec7c38aa\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.57.1\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commits/v8.59.2/packages/parser\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `eslint` from 9.39.2 to 10.3.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/eslint/eslint/releases\"\u003eeslint's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev10.3.0\u003c/h2\u003e\n\u003ch2\u003eFeatures\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/379571a975f2b24d88037b9de2e72ec61d004130\"\u003e\u003ccode\u003e379571a\u003c/code\u003e\u003c/a\u003e feat: add suggestions for no-unused-private-class-members (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20773\"\u003e#20773\u003c/a\u003e) (sethamus)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eBug Fixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/b6ae5cf07b9b51802367539cb24b245b61eaa37c\"\u003e\u003ccode\u003eb6ae5cf\u003c/code\u003e\u003c/a\u003e fix: handle unavailable require cache (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20812\"\u003e#20812\u003c/a\u003e) (Simon Podlipsky)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/6fb3685bcbe9a6f72fd7dfb9129686b6fb96b0bd\"\u003e\u003ccode\u003e6fb3685\u003c/code\u003e\u003c/a\u003e fix: rule suggestions cause continuation in class body (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20787\"\u003e#20787\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eDocumentation\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/32cc7ab4ec653ce89da92deb5c40a9f4fc707fe5\"\u003e\u003ccode\u003e32cc7ab\u003c/code\u003e\u003c/a\u003e docs: fix typos in docs and comments (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20809\"\u003e#20809\u003c/a\u003e) (Tanuj Kanti)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/7f479376a2fa463d823ab762db6bb37ce8d2ee8f\"\u003e\u003ccode\u003e7f47937\u003c/code\u003e\u003c/a\u003e docs: Update README (GitHub Actions Bot)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eChores\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/d32235ec19ceea211fa86452afa383ca05f5c2f9\"\u003e\u003ccode\u003ed32235e\u003c/code\u003e\u003c/a\u003e ci: use pnpm in \u003ccode\u003eeslint-flat-config-utils\u003c/code\u003e type integration test (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20826\"\u003e#20826\u003c/a\u003e) (Francesco Trotta)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/3ffb14ea517de750ed1181579ef844af342e4096\"\u003e\u003ccode\u003e3ffb14e\u003c/code\u003e\u003c/a\u003e chore: clean up typos in comments and JSDoc (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20821\"\u003e#20821\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/22eb58a21cbde2fbd53a1fae99453d408672de50\"\u003e\u003ccode\u003e22eb58a\u003c/code\u003e\u003c/a\u003e chore: add missing continue-on-error to ecosystem-tests.yml (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20818\"\u003e#20818\u003c/a\u003e) (Josh Goldberg ✨)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/88bf0024cb36caebf2880516d9a1f81aa75dafe2\"\u003e\u003ccode\u003e88bf002\u003c/code\u003e\u003c/a\u003e ci: bump pnpm/action-setup from 6.0.1 to 6.0.3 (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20815\"\u003e#20815\u003c/a\u003e) (dependabot[bot])\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/97c8c330beae9557ad24e19f94eebc8d08d1a722\"\u003e\u003ccode\u003e97c8c33\u003c/code\u003e\u003c/a\u003e chore: update ilshidur/action-discord action to v0.4.0 (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20811\"\u003e#20811\u003c/a\u003e) (renovate[bot])\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/2f58136dd47364a4cae7054a64f7bf1e79693813\"\u003e\u003ccode\u003e2f58136\u003c/code\u003e\u003c/a\u003e chore: pin peter-evans/create-pull-request action to 5f6978f (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20810\"\u003e#20810\u003c/a\u003e) (renovate[bot])\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/77add7f1bc91ed17bba3be3289928a9146c5f5a1\"\u003e\u003ccode\u003e77add7f\u003c/code\u003e\u003c/a\u003e chore: add initial ecosystem plugin tests workflow (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/19643\"\u003e#19643\u003c/a\u003e) (Josh Goldberg ✨)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/4023b55490fae55e464fe35530ef038cdf5d79a5\"\u003e\u003ccode\u003e4023b55\u003c/code\u003e\u003c/a\u003e test: Add unit tests for SuppressionsService.prune() (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20797\"\u003e#20797\u003c/a\u003e) (kuldeep kumar)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/54080dad4f77bb39a1a843933d4ff3a2b7c175e2\"\u003e\u003ccode\u003e54080da\u003c/code\u003e\u003c/a\u003e test: add unit tests for ForkContext (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20778\"\u003e#20778\u003c/a\u003e) (kuldeep kumar)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/f0e2bcc4bf19253aaebfbd7df87824b0ca4a151f\"\u003e\u003ccode\u003ef0e2bcc\u003c/code\u003e\u003c/a\u003e test: add unit tests for SuppressionsService.suppress() method (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20765\"\u003e#20765\u003c/a\u003e) (kuldeep kumar)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/a7f0b94743a99bcdf8d07cff15ffbfa6a6c5f927\"\u003e\u003ccode\u003ea7f0b94\u003c/code\u003e\u003c/a\u003e chore: update dependency prettier to v3.8.3 (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20782\"\u003e#20782\u003c/a\u003e) (renovate[bot])\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/7bf93d9e79f6dbf77242cbb9a9b8be834730fccd\"\u003e\u003ccode\u003e7bf93d9\u003c/code\u003e\u003c/a\u003e chore: update TypeScript to v6 (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20677\"\u003e#20677\u003c/a\u003e) (sethamus)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/b42dd72e76e7f90e7f0be9458288d93353052adc\"\u003e\u003ccode\u003eb42dd72\u003c/code\u003e\u003c/a\u003e ci: bump pnpm/action-setup from 6.0.0 to 6.0.1 (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20781\"\u003e#20781\u003c/a\u003e) (dependabot[bot])\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/2b252be80f362cca7be3326a6dbe958680fdfe9a\"\u003e\u003ccode\u003e2b252be\u003c/code\u003e\u003c/a\u003e test: add unit tests for IdGenerator (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20775\"\u003e#20775\u003c/a\u003e) (kuldeep kumar)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev10.2.1\u003c/h2\u003e\n\u003ch2\u003eBug Fixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/14be92b6d1fa0923b8923830f2208e5e2705b002\"\u003e\u003ccode\u003e14be92b\u003c/code\u003e\u003c/a\u003e fix: model generator yield resumption paths in code path analysis (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20665\"\u003e#20665\u003c/a\u003e) (sethamus)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/84a19d2c32255db6b9cfc08644a607aae6d5cb62\"\u003e\u003ccode\u003e84a19d2\u003c/code\u003e\u003c/a\u003e fix: no-async-promise-executor false positives for shadowed Promise (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20740\"\u003e#20740\u003c/a\u003e) (xbinaryx)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/af764af0ec38225755fbf8a6f207f0c77b595a8d\"\u003e\u003ccode\u003eaf764af\u003c/code\u003e\u003c/a\u003e fix: clarify language and processor validation errors (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20729\"\u003e#20729\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/e251b89a38280973e468a4a9386c138f4f55d10d\"\u003e\u003ccode\u003ee251b89\u003c/code\u003e\u003c/a\u003e fix: update eslint (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20715\"\u003e#20715\u003c/a\u003e) (renovate[bot])\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eDocumentation\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/ca92ca0fb4599e8de1e2fb914e695fe7397cbe63\"\u003e\u003ccode\u003eca92ca0\u003c/code\u003e\u003c/a\u003e docs: reuse markdown-it instance for markdown filter (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20768\"\u003e#20768\u003c/a\u003e) (Amaresh  S M)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/57d2ee213305cee0cb55ef08e0480b57396269a9\"\u003e\u003ccode\u003e57d2ee2\u003c/code\u003e\u003c/a\u003e docs:  Enable Eleventy incremental mode for watch (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20767\"\u003e#20767\u003c/a\u003e) (Amaresh  S M)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/c1621b915742276e5f4b25efe790ca62296330dc\"\u003e\u003ccode\u003ec1621b9\u003c/code\u003e\u003c/a\u003e docs: fix typos in code-path-analyzer.js (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20700\"\u003e#20700\u003c/a\u003e) (Ayush Shukla)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/1418d522d10bde1960f4942afb548bc7160ec49e\"\u003e\u003ccode\u003e1418d52\u003c/code\u003e\u003c/a\u003e docs: Update README (GitHub Actions Bot)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/39771e6e600f0b0617fdeafff6dd07e4211ffde6\"\u003e\u003ccode\u003e39771e6\u003c/code\u003e\u003c/a\u003e docs: Update README (GitHub Actions Bot)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/71e04693def2df57268f08f3072a2749df6bf438\"\u003e\u003ccode\u003e71e0469\u003c/code\u003e\u003c/a\u003e docs: fix incomplete JSDoc param description in no-shadow rule (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20728\"\u003e#20728\u003c/a\u003e) (kuldeep kumar)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/22119ceb93e28f62262fc1d98ff1b1442d6e2dbf\"\u003e\u003ccode\u003e22119ce\u003c/code\u003e\u003c/a\u003e docs: clarify scope of for-direction rule with dead code examples (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20723\"\u003e#20723\u003c/a\u003e) (Amaresh  S M)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/8f3fb77f122a5641d1833cad5d93f3f54fa3be0b\"\u003e\u003ccode\u003e8f3fb77\u003c/code\u003e\u003c/a\u003e docs: document \u003ccode\u003emeta.docs.dialects\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20718\"\u003e#20718\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eChores\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/7ddfea9c4f62add1588c5c0b0da568c299246383\"\u003e\u003ccode\u003e7ddfea9\u003c/code\u003e\u003c/a\u003e chore: update dependency prettier to v3.8.2 (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20770\"\u003e#20770\u003c/a\u003e) (renovate[bot])\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/fac40e1de2ba7646cc7cd2d3f93fbdd1f8819001\"\u003e\u003ccode\u003efac40e1\u003c/code\u003e\u003c/a\u003e ci: bump pnpm/action-setup from 5.0.0 to 6.0.0 (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20763\"\u003e#20763\u003c/a\u003e) (dependabot[bot])\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/7246f923332522d8b3d46b6ee646fce88535f3fb\"\u003e\u003ccode\u003e7246f92\u003c/code\u003e\u003c/a\u003e test: add tests for SuppressionsService.load() error handling (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20734\"\u003e#20734\u003c/a\u003e) (kuldeep kumar)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/4f34b1e592b0f63d766d9903998e8e36eb49d3aa\"\u003e\u003ccode\u003e4f34b1e\u003c/code\u003e\u003c/a\u003e chore: update pnpm/action-setup action to v5 (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20762\"\u003e#20762\u003c/a\u003e) (renovate[bot])\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/78892043a36da4aa7640b59c99344b00c181048a\"\u003e\u003ccode\u003e7889204\u003c/code\u003e\u003c/a\u003e 10.3.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/5b69b4fce4dc407c8e960eba638b5a3409c4f1fd\"\u003e\u003ccode\u003e5b69b4f\u003c/code\u003e\u003c/a\u003e Build: changelog update for 10.3.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/d32235ec19ceea211fa86452afa383ca05f5c2f9\"\u003e\u003ccode\u003ed32235e\u003c/code\u003e\u003c/a\u003e ci: use pnpm in \u003ccode\u003eeslint-flat-config-utils\u003c/code\u003e type integration test (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20826\"\u003e#20826\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/b6ae5cf07b9b51802367539cb24b245b61eaa37c\"\u003e\u003ccode\u003eb6ae5cf\u003c/code\u003e\u003c/a\u003e fix: handle unavailable require cache (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20812\"\u003e#20812\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/3ffb14ea517de750ed1181579ef844af342e4096\"\u003e\u003ccode\u003e3ffb14e\u003c/code\u003e\u003c/a\u003e chore: clean up typos in comments and JSDoc (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20821\"\u003e#20821\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/6fb3685bcbe9a6f72fd7dfb9129686b6fb96b0bd\"\u003e\u003ccode\u003e6fb3685\u003c/code\u003e\u003c/a\u003e fix: rule suggestions cause continuation in class body (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20787\"\u003e#20787\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/22eb58a21cbde2fbd53a1fae99453d408672de50\"\u003e\u003ccode\u003e22eb58a\u003c/code\u003e\u003c/a\u003e chore: add missing continue-on-error to ecosystem-tests.yml (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20818\"\u003e#20818\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/88bf0024cb36caebf2880516d9a1f81aa75dafe2\"\u003e\u003ccode\u003e88bf002\u003c/code\u003e\u003c/a\u003e ci: bump pnpm/action-setup from 6.0.1 to 6.0.3 (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20815\"\u003e#20815\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/379571a975f2b24d88037b9de2e72ec61d004130\"\u003e\u003ccode\u003e379571a\u003c/code\u003e\u003c/a\u003e feat: add suggestions for no-unused-private-class-members (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20773\"\u003e#20773\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/97c8c330beae9557ad24e19f94eebc8d08d1a722\"\u003e\u003ccode\u003e97c8c33\u003c/code\u003e\u003c/a\u003e chore: update ilshidur/action-discord action to v0.4.0 (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20811\"\u003e#20811\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/eslint/eslint/compare/v9.39.2...v10.3.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `eslint-plugin-react-hooks` from 7.0.1 to 7.1.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/facebook/react/releases\"\u003eeslint-plugin-react-hooks's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eeslint-plugin-react-hooks@7.1.1 (April 17, 2026)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eNote:\u003c/strong\u003e 7.1.0 accidentally removed the \u003ccode\u003ecomponent-hook-factories\u003c/code\u003e rule, causing errors for users who referenced it in their ESLint config. This is now fixed.\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdd deprecated no-op \u003ccode\u003ecomponent-hook-factories\u003c/code\u003e rule for backwards compatibility. (\u003ca href=\"https://github.com/mofeiZ\"\u003e\u003ccode\u003e@​mofeiZ\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/36307\"\u003e#36307\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eeslint-plugin-react-hooks@7.1.0 (April 16, 2026)\u003c/h2\u003e\n\u003cp\u003eThis release adds ESLint v10 support, improves performance by skipping compilation for non-React files, and includes compiler lint improvements including better \u003ccode\u003eset-state-in-effect\u003c/code\u003e detection, improved ref validation, and more helpful error reporting.\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdd ESLint v10 support. (\u003ca href=\"https://github.com/azat-io\"\u003e\u003ccode\u003e@​azat-io\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/35720\"\u003e#35720\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSkip compilation for non-React files to improve performance. (\u003ca href=\"https://github.com/josephsavona\"\u003e\u003ccode\u003e@​josephsavona\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/35589\"\u003e#35589\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix exhaustive deps bug with Flow type casting. (\u003ca href=\"https://github.com/jorge-cab\"\u003e\u003ccode\u003e@​jorge-cab\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/35691\"\u003e#35691\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix \u003ccode\u003euseEffectEvent\u003c/code\u003e checks in component syntax. (\u003ca href=\"https://github.com/jbrown215\"\u003e\u003ccode\u003e@​jbrown215\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/35041\"\u003e#35041\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eImproved \u003ccode\u003eset-state-in-effect\u003c/code\u003e validation with fewer false negatives. (\u003ca href=\"https://github.com/jorge-cab\"\u003e\u003ccode\u003e@​jorge-cab\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/35134\"\u003e#35134\u003c/a\u003e, \u003ca href=\"https://github.com/josephsavona\"\u003e\u003ccode\u003e@​josephsavona\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/35147\"\u003e#35147\u003c/a\u003e, \u003ca href=\"https://github.com/jackpope\"\u003e\u003ccode\u003e@​jackpope\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/35214\"\u003e#35214\u003c/a\u003e, \u003ca href=\"https://github.com/chesnokov-tony\"\u003e\u003ccode\u003e@​chesnokov-tony\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/35419\"\u003e#35419\u003c/a\u003e, \u003ca href=\"https://github.com/jsleitor\"\u003e\u003ccode\u003e@​jsleitor\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/36107\"\u003e#36107\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eImproved ref validation for non-mutating functions and event handler props. (\u003ca href=\"https://github.com/josephsavona\"\u003e\u003ccode\u003e@​josephsavona\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/35893\"\u003e#35893\u003c/a\u003e, \u003ca href=\"https://github.com/kolvian\"\u003e\u003ccode\u003e@​kolvian\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/35062\"\u003e#35062\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCompiler now reports all errors instead of stopping at the first. (\u003ca href=\"https://github.com/josephsavona\"\u003e\u003ccode\u003e@​josephsavona\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/35873\"\u003e#35873\u003c/a\u003e–\u003ca href=\"https://redirect.github.com/facebook/react/pull/35884\"\u003e#35884\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eImproved source locations and error display in compiler diagnostics. (\u003ca href=\"https://github.com/nathanmarks\"\u003e\u003ccode\u003e@​nathanmarks\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/35348\"\u003e#35348\u003c/a\u003e, \u003ca href=\"https://github.com/josephsavona\"\u003e\u003ccode\u003e@​josephsavona\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/34963\"\u003e#34963\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/facebook/react/blob/main/packages/eslint-plugin-react-hooks/CHANGELOG.md\"\u003eeslint-plugin-react-hooks's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e7.1.1\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eNote:\u003c/strong\u003e 7.1.0 accidentally removed the \u003ccode\u003ecomponent-hook-factories\u003c/code\u003e rule, causing errors for users who referenced it in their ESLint config. This is now fixed.\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdd deprecated no-op \u003ccode\u003ecomponent-hook-factories\u003c/code\u003e rule for backwards compatibility. (\u003ca href=\"https://github.com/mofeiZ\"\u003e\u003ccode\u003e@​mofeiZ\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/36307\"\u003e#36307\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e7.1.0\u003c/h2\u003e\n\u003cp\u003eThis release adds ESLint v10 support, improves performance by skipping compilation for non-React...\n\n_Description has been truncated_","html_url":"https://github.com/localhostamit/pyqhub-mockgen/pull/6","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/localhostamit%2Fpyqhub-mockgen/issues/6","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/6/packages"},{"uuid":"4418166005","node_id":"PR_kwDOR1uAnc7aHKXo","number":6,"state":"open","title":"deps(deps): bump the all-dependencies group across 1 directory with 65 updates","user":"dependabot[bot]","labels":[],"assignees":[],"locked":false,"comments_count":1,"pull_request":true,"closed_at":null,"author_association":null,"state_reason":null,"created_at":"2026-05-11T04:54:52.000Z","updated_at":"2026-05-11T04:54:53.000Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"deps(deps): bump","group_name":"all-dependencies","update_count":65,"packages":[{"name":"@eslint-react/eslint-plugin","old_version":"2.13.0","new_version":"5.7.5","repository_url":"https://github.com/Rel1cx/eslint-react"},{"name":"@eslint/js","old_version":"9.39.2","new_version":"10.0.1","repository_url":"https://github.com/eslint/eslint"},{"name":"@typescript-eslint/eslint-plugin","old_version":"8.56.0","new_version":"8.59.2","repository_url":"https://github.com/typescript-eslint/typescript-eslint"},{"name":"@typescript-eslint/parser","old_version":"8.56.0","new_version":"8.59.2","repository_url":"https://github.com/typescript-eslint/typescript-eslint"},{"name":"eslint","old_version":"9.39.2","new_version":"10.3.0","repository_url":"https://github.com/eslint/eslint"},{"name":"eslint-plugin-react-hooks","old_version":"7.0.1","new_version":"7.1.1","repository_url":"https://github.com/facebook/react"},{"name":"globals","old_version":"17.3.0","new_version":"17.6.0","repository_url":"https://github.com/sindresorhus/globals"},{"name":"graphql","old_version":"16.12.0","new_version":"16.14.0","repository_url":"https://github.com/graphql/graphql-js"},{"name":"happy-dom","old_version":"20.6.2","new_version":"20.9.0","repository_url":"https://github.com/capricorn86/happy-dom"},{"name":"jiti","old_version":"2.6.1","new_version":"2.7.0","repository_url":"https://github.com/unjs/jiti"},{"name":"lint-staged","old_version":"16.2.7","new_version":"17.0.4","repository_url":"https://github.com/lint-staged/lint-staged"},{"name":"mermaid","old_version":"11.12.3","new_version":"11.14.0","repository_url":"https://github.com/mermaid-js/mermaid"},{"name":"prettier","old_version":"3.8.1","new_version":"3.8.3","repository_url":"https://github.com/prettier/prettier"},{"name":"react","old_version":"19.2.4","new_version":"19.2.6","repository_url":"https://github.com/facebook/react"},{"name":"typescript","old_version":"5.9.3","new_version":"6.0.3","repository_url":"https://github.com/microsoft/TypeScript"},{"name":"typescript-eslint","old_version":"8.56.0","new_version":"8.59.2","repository_url":"https://github.com/typescript-eslint/typescript-eslint"},{"name":"typescript-language-server","old_version":"5.1.3","new_version":"5.2.0","repository_url":"https://github.com/typescript-language-server/typescript-language-server"},{"name":"vite","old_version":"7.3.1","new_version":"8.0.11","repository_url":"https://github.com/vitejs/vite"},{"name":"vitepress","old_version":"2.0.0-alpha.16","new_version":"2.0.0-alpha.17","repository_url":"https://github.com/vuejs/vitepress"},{"name":"vitepress-plugin-llms","old_version":"1.11.0","new_version":"1.12.2","repository_url":"https://github.com/okineadev/vitepress-plugin-llms"},{"name":"vitest","old_version":"4.0.18","new_version":"4.1.5","repository_url":"https://github.com/vitest-dev/vitest"},{"name":"wrangler","old_version":"4.66.0","new_version":"4.90.0","repository_url":"https://github.com/cloudflare/workers-sdk"},{"name":"@ai-sdk/openai","old_version":"3.0.29","new_version":"3.0.63","repository_url":"https://github.com/vercel/ai"},{"name":"@better-auth/passkey","old_version":"1.4.18","new_version":"1.6.10","repository_url":"https://github.com/better-auth/better-auth"},{"name":"@better-auth/stripe","old_version":"1.4.18","new_version":"1.6.10","repository_url":"https://github.com/better-auth/better-auth"},{"name":"@trpc/server","old_version":"11.10.0","new_version":"11.17.0","repository_url":"https://github.com/trpc/trpc"},{"name":"ai","old_version":"6.0.91","new_version":"6.0.177","repository_url":"https://github.com/vercel/ai"},{"name":"better-auth","old_version":"1.4.18","new_version":"1.6.10","repository_url":"https://github.com/better-auth/better-auth"},{"name":"drizzle-orm","old_version":"0.45.1","new_version":"0.45.2","repository_url":"https://github.com/drizzle-team/drizzle-orm"},{"name":"postgres","old_version":"3.4.8","new_version":"3.4.9","repository_url":"https://github.com/porsager/postgres"},{"name":"resend","old_version":"6.9.2","new_version":"6.12.3","repository_url":"https://github.com/resend/resend-node"},{"name":"stripe","old_version":"20.3.1","new_version":"22.1.1","repository_url":"https://github.com/stripe/stripe-node"},{"name":"@cloudflare/workers-types","old_version":"4.20260218.0","new_version":"4.20260511.1","repository_url":"https://github.com/cloudflare/workerd"},{"name":"@types/bun","old_version":"1.3.9","new_version":"1.3.13","repository_url":"https://github.com/DefinitelyTyped/DefinitelyTyped"},{"name":"hono","old_version":"4.11.10","new_version":"4.12.18","repository_url":"https://github.com/honojs/hono"},{"name":"@tanstack/react-query","old_version":"5.90.21","new_version":"5.100.9","repository_url":"https://github.com/TanStack/query"},{"name":"@tanstack/react-router","old_version":"1.161.1","new_version":"1.169.2","repository_url":"https://github.com/TanStack/router"},{"name":"@trpc/client","old_version":"11.10.0","new_version":"11.17.0","repository_url":"https://github.com/trpc/trpc"},{"name":"@trpc/tanstack-react-query","old_version":"11.10.0","new_version":"11.17.0","repository_url":"https://github.com/trpc/trpc"},{"name":"jotai","old_version":"2.17.1","new_version":"2.20.0","repository_url":"https://github.com/pmndrs/jotai"},{"name":"lucide-react","old_version":"0.574.0","new_version":"1.14.0","repository_url":"https://github.com/lucide-icons/lucide"},{"name":"react-dom","old_version":"19.2.4","new_version":"19.2.6","repository_url":"https://github.com/facebook/react"},{"name":"tailwind-merge","old_version":"3.4.1","new_version":"3.6.0","repository_url":"https://github.com/dcastil/tailwind-merge"},{"name":"@tailwindcss/postcss","old_version":"4.2.0","new_version":"4.3.0","repository_url":"https://github.com/tailwindlabs/tailwindcss"},{"name":"@tanstack/react-query-devtools","old_version":"5.91.3","new_version":"5.100.9","repository_url":"https://github.com/TanStack/query"},{"name":"@tanstack/react-router-devtools","old_version":"1.161.1","new_version":"1.166.13","repository_url":"https://github.com/TanStack/router"},{"name":"@tanstack/router-plugin","old_version":"1.161.1","new_version":"1.167.35","repository_url":"https://github.com/TanStack/router"},{"name":"@types/node","old_version":"25.2.3","new_version":"25.6.2","repository_url":"https://github.com/DefinitelyTyped/DefinitelyTyped"},{"name":"@vitejs/plugin-react","old_version":"5.1.4","new_version":"6.0.1","repository_url":"https://github.com/vitejs/vite-plugin-react"},{"name":"@vitejs/plugin-react-swc","old_version":"4.2.3","new_version":"4.3.0","repository_url":"https://github.com/vitejs/vite-plugin-react"},{"name":"autoprefixer","old_version":"10.4.24","new_version":"10.5.0","repository_url":"https://github.com/postcss/autoprefixer"},{"name":"globby","old_version":"16.1.1","new_version":"16.2.0","repository_url":"https://github.com/sindresorhus/globby"},{"name":"@react-email/components","old_version":"1.0.8","new_version":"1.0.12","repository_url":"https://github.com/resend/react-email"},{"name":"@react-email/render","old_version":"2.0.4","new_version":"2.0.8","repository_url":"https://github.com/resend/react-email"},{"name":"@react-email/preview-server","old_version":"5.2.8","new_version":"5.2.10","repository_url":"https://github.com/resend/react-email"},{"name":"react-email","old_version":"5.2.8","new_version":"6.1.1","repository_url":"https://github.com/resend/react-email"},{"name":"@astrojs/react","old_version":"4.4.2","new_version":"5.0.4","repository_url":"https://github.com/withastro/astro"},{"name":"astro","old_version":"5.17.2","new_version":"6.3.1","repository_url":"https://github.com/withastro/astro"},{"name":"dotenv","old_version":"17.3.1","new_version":"17.4.2","repository_url":"https://github.com/motdotla/dotenv"},{"name":"drizzle-kit","old_version":"0.31.9","new_version":"0.31.10","repository_url":"https://github.com/drizzle-team/drizzle-orm"},{"name":"@modelcontextprotocol/sdk","old_version":"1.26.0","new_version":"1.29.0","repository_url":"https://github.com/modelcontextprotocol/typescript-sdk"},{"name":"got","old_version":"14.6.6","new_version":"15.0.5","repository_url":"https://github.com/sindresorhus/got"}],"path":null,"ecosystem":"npm"},"body":"Bumps the all-dependencies group with 62 updates in the / directory:\n\n| Package | From | To |\n| --- | --- | --- |\n| [@eslint-react/eslint-plugin](https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin) | `2.13.0` | `5.7.5` |\n| [@eslint/js](https://github.com/eslint/eslint/tree/HEAD/packages/js) | `9.39.2` | `10.0.1` |\n| [@typescript-eslint/eslint-plugin](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin) | `8.56.0` | `8.59.2` |\n| [@typescript-eslint/parser](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/parser) | `8.56.0` | `8.59.2` |\n| [eslint](https://github.com/eslint/eslint) | `9.39.2` | `10.3.0` |\n| [eslint-plugin-react-hooks](https://github.com/facebook/react/tree/HEAD/packages/eslint-plugin-react-hooks) | `7.0.1` | `7.1.1` |\n| [globals](https://github.com/sindresorhus/globals) | `17.3.0` | `17.6.0` |\n| [graphql](https://github.com/graphql/graphql-js) | `16.12.0` | `16.14.0` |\n| [happy-dom](https://github.com/capricorn86/happy-dom) | `20.6.2` | `20.9.0` |\n| [jiti](https://github.com/unjs/jiti) | `2.6.1` | `2.7.0` |\n| [lint-staged](https://github.com/lint-staged/lint-staged) | `16.2.7` | `17.0.4` |\n| [mermaid](https://github.com/mermaid-js/mermaid) | `11.12.3` | `11.14.0` |\n| [prettier](https://github.com/prettier/prettier) | `3.8.1` | `3.8.3` |\n| [react](https://github.com/facebook/react/tree/HEAD/packages/react) | `19.2.4` | `19.2.6` |\n| [typescript](https://github.com/microsoft/TypeScript) | `5.9.3` | `6.0.3` |\n| [typescript-eslint](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/typescript-eslint) | `8.56.0` | `8.59.2` |\n| [typescript-language-server](https://github.com/typescript-language-server/typescript-language-server) | `5.1.3` | `5.2.0` |\n| [vite](https://github.com/vitejs/vite/tree/HEAD/packages/vite) | `7.3.1` | `8.0.11` |\n| [vitepress](https://github.com/vuejs/vitepress) | `2.0.0-alpha.16` | `2.0.0-alpha.17` |\n| [vitepress-plugin-llms](https://github.com/okineadev/vitepress-plugin-llms) | `1.11.0` | `1.12.2` |\n| [vitest](https://github.com/vitest-dev/vitest/tree/HEAD/packages/vitest) | `4.0.18` | `4.1.5` |\n| [wrangler](https://github.com/cloudflare/workers-sdk/tree/HEAD/packages/wrangler) | `4.66.0` | `4.90.0` |\n| [@ai-sdk/openai](https://github.com/vercel/ai/tree/HEAD/packages/openai) | `3.0.29` | `3.0.63` |\n| [@better-auth/passkey](https://github.com/better-auth/better-auth/tree/HEAD/packages/passkey) | `1.4.18` | `1.6.10` |\n| [@better-auth/stripe](https://github.com/better-auth/better-auth/tree/HEAD/packages/stripe) | `1.4.18` | `1.6.10` |\n| [@trpc/server](https://github.com/trpc/trpc/tree/HEAD/packages/server) | `11.10.0` | `11.17.0` |\n| [ai](https://github.com/vercel/ai/tree/HEAD/packages/ai) | `6.0.91` | `6.0.177` |\n| [better-auth](https://github.com/better-auth/better-auth/tree/HEAD/packages/better-auth) | `1.4.18` | `1.6.10` |\n| [drizzle-orm](https://github.com/drizzle-team/drizzle-orm) | `0.45.1` | `0.45.2` |\n| [postgres](https://github.com/porsager/postgres) | `3.4.8` | `3.4.9` |\n| [resend](https://github.com/resend/resend-node) | `6.9.2` | `6.12.3` |\n| [stripe](https://github.com/stripe/stripe-node) | `20.3.1` | `22.1.1` |\n| [@cloudflare/workers-types](https://github.com/cloudflare/workerd) | `4.20260218.0` | `4.20260511.1` |\n| [@types/bun](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/bun) | `1.3.9` | `1.3.13` |\n| [hono](https://github.com/honojs/hono) | `4.11.10` | `4.12.18` |\n| [@tanstack/react-query](https://github.com/TanStack/query/tree/HEAD/packages/react-query) | `5.90.21` | `5.100.9` |\n| [@tanstack/react-router](https://github.com/TanStack/router/tree/HEAD/packages/react-router) | `1.161.1` | `1.169.2` |\n| [@trpc/client](https://github.com/trpc/trpc/tree/HEAD/packages/client) | `11.10.0` | `11.17.0` |\n| [@trpc/tanstack-react-query](https://github.com/trpc/trpc/tree/HEAD/packages/tanstack-react-query) | `11.10.0` | `11.17.0` |\n| [jotai](https://github.com/pmndrs/jotai) | `2.17.1` | `2.20.0` |\n| [lucide-react](https://github.com/lucide-icons/lucide/tree/HEAD/packages/lucide-react) | `0.574.0` | `1.14.0` |\n| [react-dom](https://github.com/facebook/react/tree/HEAD/packages/react-dom) | `19.2.4` | `19.2.6` |\n| [tailwind-merge](https://github.com/dcastil/tailwind-merge) | `3.4.1` | `3.6.0` |\n| [@tailwindcss/postcss](https://github.com/tailwindlabs/tailwindcss/tree/HEAD/packages/@tailwindcss-postcss) | `4.2.0` | `4.3.0` |\n| [@tanstack/react-query-devtools](https://github.com/TanStack/query/tree/HEAD/packages/react-query-devtools) | `5.91.3` | `5.100.9` |\n| [@tanstack/react-router-devtools](https://github.com/TanStack/router/tree/HEAD/packages/react-router-devtools) | `1.161.1` | `1.166.13` |\n| [@tanstack/router-plugin](https://github.com/TanStack/router/tree/HEAD/packages/router-plugin) | `1.161.1` | `1.167.35` |\n| [@types/node](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/node) | `25.2.3` | `25.6.2` |\n| [@vitejs/plugin-react](https://github.com/vitejs/vite-plugin-react/tree/HEAD/packages/plugin-react) | `5.1.4` | `6.0.1` |\n| [@vitejs/plugin-react-swc](https://github.com/vitejs/vite-plugin-react/tree/HEAD/packages/plugin-react-swc) | `4.2.3` | `4.3.0` |\n| [autoprefixer](https://github.com/postcss/autoprefixer) | `10.4.24` | `10.5.0` |\n| [globby](https://github.com/sindresorhus/globby) | `16.1.1` | `16.2.0` |\n| [@react-email/components](https://github.com/resend/react-email/tree/HEAD/packages/components) | `1.0.8` | `1.0.12` |\n| [@react-email/render](https://github.com/resend/react-email/tree/HEAD/packages/render) | `2.0.4` | `2.0.8` |\n| [@react-email/preview-server](https://github.com/resend/react-email/tree/HEAD/packages/preview-server) | `5.2.8` | `5.2.10` |\n| [react-email](https://github.com/resend/react-email/tree/HEAD/packages/react-email) | `5.2.8` | `6.1.1` |\n| [@astrojs/react](https://github.com/withastro/astro/tree/HEAD/packages/integrations/react) | `4.4.2` | `5.0.4` |\n| [astro](https://github.com/withastro/astro/tree/HEAD/packages/astro) | `5.17.2` | `6.3.1` |\n| [dotenv](https://github.com/motdotla/dotenv) | `17.3.1` | `17.4.2` |\n| [drizzle-kit](https://github.com/drizzle-team/drizzle-orm) | `0.31.9` | `0.31.10` |\n| [@modelcontextprotocol/sdk](https://github.com/modelcontextprotocol/typescript-sdk) | `1.26.0` | `1.29.0` |\n| [got](https://github.com/sindresorhus/got) | `14.6.6` | `15.0.5` |\n\n\nUpdates `@eslint-react/eslint-plugin` from 2.13.0 to 5.7.5\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/Rel1cx/eslint-react/releases\"\u003e@​eslint-react/eslint-plugin's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev5.7.5 (2026-05-08)\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003ch3\u003e🏗️ Internal\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eBumped \u003ccode\u003e@eslint/compat\u003c/code\u003e from 2.0.5 to 2.1.0.\u003c/li\u003e\n\u003cli\u003eBumped \u003ccode\u003e@types/node\u003c/code\u003e from 25.6.0 to 25.6.2.\u003c/li\u003e\n\u003cli\u003eBumped \u003ccode\u003enext\u003c/code\u003e from 16.2.5 to 16.2.6.\u003c/li\u003e\n\u003cli\u003eBumped \u003ccode\u003epublint\u003c/code\u003e from 0.3.19 to 0.3.20.\u003c/li\u003e\n\u003cli\u003eBumped \u003ccode\u003etsdown\u003c/code\u003e from 0.21.10 to 0.22.0.\u003c/li\u003e\n\u003cli\u003eBumped \u003ccode\u003epnpm\u003c/code\u003e from 10.33.4 to 11.0.8.\u003c/li\u003e\n\u003cli\u003eAdjusted website styles.\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/Rel1cx/eslint-react/compare/v5.7.4...v5.7.5\"\u003ehttps://github.com/Rel1cx/eslint-react/compare/v5.7.4...v5.7.5\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev5.7.4 (2026-05-07)\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003ch3\u003e🏗️ Internal\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eBumped \u003ccode\u003e@typescript-eslint\u003c/code\u003e packages from 8.59.1 to 8.59.2.\u003c/li\u003e\n\u003cli\u003eBumped \u003ccode\u003ereact\u003c/code\u003e and \u003ccode\u003ereact-dom\u003c/code\u003e from 19.2.5 to 19.2.6.\u003c/li\u003e\n\u003cli\u003eBumped \u003ccode\u003enext\u003c/code\u003e from 16.2.4 to 16.2.5.\u003c/li\u003e\n\u003cli\u003eBumped \u003ccode\u003enx\u003c/code\u003e from 22.7.1 to 23.0.0-canary.20260506-b594537.\u003c/li\u003e\n\u003cli\u003eBumped \u003ccode\u003efumadocs-core\u003c/code\u003e and \u003ccode\u003efumadocs-ui\u003c/code\u003e from 16.8.5 to 16.8.7.\u003c/li\u003e\n\u003cli\u003eBumped \u003ccode\u003epostcss\u003c/code\u003e from 8.5.13 to 8.5.14.\u003c/li\u003e\n\u003cli\u003eBumped \u003ccode\u003epublint\u003c/code\u003e from 0.3.18 to 0.3.19.\u003c/li\u003e\n\u003cli\u003eBumped \u003ccode\u003epnpm\u003c/code\u003e from 10.33.2 to 10.33.4.\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/Rel1cx/eslint-react/compare/v5.7.3...v5.7.4\"\u003ehttps://github.com/Rel1cx/eslint-react/compare/v5.7.3...v5.7.4\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev5.7.3 (2026-05-06)\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003ch3\u003e🐞 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003e\u003ccode\u003ereact-x/immutability\u003c/code\u003e\u003c/strong\u003e: Exempted ref mutations via a naming heuristic — any object whose identifier is \u003ccode\u003eref\u003c/code\u003e or ends with \u003ccode\u003eRef\u003c/code\u003e is treated as a mutable ref and skipped from immutability checks. This fixes false positives when mutating \u003ccode\u003eRefObject\u0026lt;T\u0026gt;\u003c/code\u003e values received as props (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1752\"\u003e#1752\u003c/a\u003e, \u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1751\"\u003e#1751\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003e\u003ccode\u003ereact-x/immutability\u003c/code\u003e\u003c/strong\u003e: Added \u003ccode\u003enoRefLikeStateName\u003c/code\u003e diagnostic to prevent state variables from being named \u003ccode\u003eref\u003c/code\u003e or ending with \u003ccode\u003eRef\u003c/code\u003e, which would otherwise bypass the ref exemption heuristic (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1752\"\u003e#1752\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e📝 Documentation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFixed the full rule name in \u003ccode\u003ereact-jsx/no-key-after-spread\u003c/code\u003e documentation (\u003ccode\u003ejsx/no-key-after-spread\u003c/code\u003e → \u003ccode\u003ejsx-no-key-after-spread\u003c/code\u003e) (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1750\"\u003e#1750\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/Rel1cx/eslint-react/compare/v5.7.2...v5.7.3\"\u003ehttps://github.com/Rel1cx/eslint-react/compare/v5.7.2...v5.7.3\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev5.7.2 (2026-05-04)\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003ch3\u003e🐞 Fixes\u003c/h3\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/Rel1cx/eslint-react/blob/main/CHANGELOG.md\"\u003e@​eslint-react/eslint-plugin's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev5.7.5 (2026-05-08)\u003c/h2\u003e\n\u003ch3\u003e🏗️ Internal\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eBumped \u003ccode\u003e@eslint/compat\u003c/code\u003e from 2.0.5 to 2.1.0.\u003c/li\u003e\n\u003cli\u003eBumped \u003ccode\u003e@types/node\u003c/code\u003e from 25.6.0 to 25.6.2.\u003c/li\u003e\n\u003cli\u003eBumped \u003ccode\u003enext\u003c/code\u003e from 16.2.5 to 16.2.6.\u003c/li\u003e\n\u003cli\u003eBumped \u003ccode\u003epublint\u003c/code\u003e from 0.3.19 to 0.3.20.\u003c/li\u003e\n\u003cli\u003eBumped \u003ccode\u003etsdown\u003c/code\u003e from 0.21.10 to 0.22.0.\u003c/li\u003e\n\u003cli\u003eBumped \u003ccode\u003epnpm\u003c/code\u003e from 10.33.4 to 11.0.8.\u003c/li\u003e\n\u003cli\u003eAdjusted website styles.\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/Rel1cx/eslint-react/compare/v5.7.4...v5.7.5\"\u003ehttps://github.com/Rel1cx/eslint-react/compare/v5.7.4...v5.7.5\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev5.7.4 (2026-05-07)\u003c/h2\u003e\n\u003ch3\u003e🏗️ Internal\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eBumped \u003ccode\u003e@typescript-eslint\u003c/code\u003e packages from 8.59.1 to 8.59.2.\u003c/li\u003e\n\u003cli\u003eBumped \u003ccode\u003ereact\u003c/code\u003e and \u003ccode\u003ereact-dom\u003c/code\u003e from 19.2.5 to 19.2.6.\u003c/li\u003e\n\u003cli\u003eBumped \u003ccode\u003enext\u003c/code\u003e from 16.2.4 to 16.2.5.\u003c/li\u003e\n\u003cli\u003eBumped \u003ccode\u003enx\u003c/code\u003e from 22.7.1 to 23.0.0-canary.20260506-b594537.\u003c/li\u003e\n\u003cli\u003eBumped \u003ccode\u003efumadocs-core\u003c/code\u003e and \u003ccode\u003efumadocs-ui\u003c/code\u003e from 16.8.5 to 16.8.7.\u003c/li\u003e\n\u003cli\u003eBumped \u003ccode\u003epostcss\u003c/code\u003e from 8.5.13 to 8.5.14.\u003c/li\u003e\n\u003cli\u003eBumped \u003ccode\u003epublint\u003c/code\u003e from 0.3.18 to 0.3.19.\u003c/li\u003e\n\u003cli\u003eBumped \u003ccode\u003epnpm\u003c/code\u003e from 10.33.2 to 10.33.4.\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/Rel1cx/eslint-react/compare/v5.7.3...v5.7.4\"\u003ehttps://github.com/Rel1cx/eslint-react/compare/v5.7.3...v5.7.4\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev5.7.3 (2026-05-06)\u003c/h2\u003e\n\u003ch3\u003e🐞 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003e\u003ccode\u003ereact-x/immutability\u003c/code\u003e\u003c/strong\u003e: Exempted ref mutations via a naming heuristic — any object whose identifier is \u003ccode\u003eref\u003c/code\u003e or ends with \u003ccode\u003eRef\u003c/code\u003e is treated as a mutable ref and skipped from immutability checks. This fixes false positives when mutating \u003ccode\u003eRefObject\u0026lt;T\u0026gt;\u003c/code\u003e values received as props (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1752\"\u003e#1752\u003c/a\u003e, \u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1751\"\u003e#1751\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003e\u003ccode\u003ereact-x/immutability\u003c/code\u003e\u003c/strong\u003e: Added \u003ccode\u003enoRefLikeStateName\u003c/code\u003e diagnostic to prevent state variables from being named \u003ccode\u003eref\u003c/code\u003e or ending with \u003ccode\u003eRef\u003c/code\u003e, which would otherwise bypass the ref exemption heuristic (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1752\"\u003e#1752\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e📝 Documentation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFixed the full rule name in \u003ccode\u003ereact-jsx/no-key-after-spread\u003c/code\u003e documentation (\u003ccode\u003ejsx/no-key-after-spread\u003c/code\u003e → \u003ccode\u003ejsx-no-key-after-spread\u003c/code\u003e) (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1750\"\u003e#1750\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/Rel1cx/eslint-react/compare/v5.7.2...v5.7.3\"\u003ehttps://github.com/Rel1cx/eslint-react/compare/v5.7.2...v5.7.3\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev5.7.2 (2026-05-04)\u003c/h2\u003e\n\u003ch3\u003e🐞 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003e\u003ccode\u003ereact-x/no-unused-state\u003c/code\u003e\u003c/strong\u003e: Removed the rule from the \u003ccode\u003erecommended\u003c/code\u003e preset for now (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1747\"\u003e#1747\u003c/a\u003e, \u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1748\"\u003e#1748\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e📝 Documentation\u003c/h3\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/de60fa2e3003c60e8c4f03970b5b84c7c9c84334\"\u003e\u003ccode\u003ede60fa2\u003c/code\u003e\u003c/a\u003e release: 5.7.5\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/2b075487d7952a8662c76305b64ce677776bab34\"\u003e\u003ccode\u003e2b07548\u003c/code\u003e\u003c/a\u003e release: 5.7.5-beta.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/9e186c17a28ff1d9e02e0a22f4f6b18193ceadca\"\u003e\u003ccode\u003e9e186c1\u003c/code\u003e\u003c/a\u003e release: 5.7.5-next.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/f7b012180b71b03a69e944b39fdc88811b16839b\"\u003e\u003ccode\u003ef7b0121\u003c/code\u003e\u003c/a\u003e chore: bump dependencies and adjust website styles (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1754\"\u003e#1754\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/99736d816cdcb56dd71be0ba8440c6b12017d862\"\u003e\u003ccode\u003e99736d8\u003c/code\u003e\u003c/a\u003e release: 5.7.4\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/bcd23f09215b120a119a53eacdb12e670ee897b9\"\u003e\u003ccode\u003ebcd23f0\u003c/code\u003e\u003c/a\u003e release: 5.7.4-beta.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/52071021ab5ae079fa69fc3996ac9109a76c230a\"\u003e\u003ccode\u003e5207102\u003c/code\u003e\u003c/a\u003e release: 5.7.4-next.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/b35fba3ea0e14827433efcc6017e8eaef0ca6486\"\u003e\u003ccode\u003eb35fba3\u003c/code\u003e\u003c/a\u003e Bump dependencies: eslint, react, next, and nx packages\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/a9098f22fc1a8c7b59e3b4916d0d5ff3cb2358be\"\u003e\u003ccode\u003ea9098f2\u003c/code\u003e\u003c/a\u003e release: 5.7.3\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/677db67c648814dbc500bdd40dea84ac9efa770c\"\u003e\u003ccode\u003e677db67\u003c/code\u003e\u003c/a\u003e release: 5.7.2\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/Rel1cx/eslint-react/commits/v5.7.5/plugins/eslint-plugin\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@eslint/js` from 9.39.2 to 10.0.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/eslint/eslint/releases\"\u003e@​eslint/js's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev10.0.1\u003c/h2\u003e\n\u003ch2\u003eBug Fixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/c87d5bded54c5cf491eb04c24c9d09bbbd42c23e\"\u003e\u003ccode\u003ec87d5bd\u003c/code\u003e\u003c/a\u003e fix: update eslint (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20531\"\u003e#20531\u003c/a\u003e) (renovate[bot])\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/d84100115c14691691058f00779c94e74fca946a\"\u003e\u003ccode\u003ed841001\u003c/code\u003e\u003c/a\u003e fix: update \u003ccode\u003eminimatch\u003c/code\u003e to \u003ccode\u003e10.2.1\u003c/code\u003e to address security vulnerabilities (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20519\"\u003e#20519\u003c/a\u003e) (루밀LuMir)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/04c21475b3004904948f02049f2888b401d82c78\"\u003e\u003ccode\u003e04c2147\u003c/code\u003e\u003c/a\u003e fix: update error message for unused suppressions (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20496\"\u003e#20496\u003c/a\u003e) (fnx)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/38b089c1726feac0e31a31d47941bd99e29ce003\"\u003e\u003ccode\u003e38b089c\u003c/code\u003e\u003c/a\u003e fix: update dependency \u003ccode\u003e@​eslint/config-array\u003c/code\u003e to ^0.23.1 (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20484\"\u003e#20484\u003c/a\u003e) (renovate[bot])\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eDocumentation\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/5b3dbce50a1404a9f118afe810cefeee79388a2a\"\u003e\u003ccode\u003e5b3dbce\u003c/code\u003e\u003c/a\u003e docs: add AI acknowledgement section to templates (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20431\"\u003e#20431\u003c/a\u003e) (루밀LuMir)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/6f23076037d5879f20fb3be2ef094293b1e8d38c\"\u003e\u003ccode\u003e6f23076\u003c/code\u003e\u003c/a\u003e docs: toggle nav in no-JS mode (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20476\"\u003e#20476\u003c/a\u003e) (Tanuj Kanti)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/b69cfb32a16c5d5e9986390d484fae1d21e406f9\"\u003e\u003ccode\u003eb69cfb3\u003c/code\u003e\u003c/a\u003e docs: Update README (GitHub Actions Bot)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eChores\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/e5c281ffd038a3a7a3e5364db0b9378e0ad83020\"\u003e\u003ccode\u003ee5c281f\u003c/code\u003e\u003c/a\u003e chore: updates for v9.39.3 release (Jenkins)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/8c3832adb77cd993b4a24891900d5eeaaf093cdc\"\u003e\u003ccode\u003e8c3832a\u003c/code\u003e\u003c/a\u003e chore: update \u003ccode\u003e@​typescript-eslint/parser\u003c/code\u003e to ^8.56.0 (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20514\"\u003e#20514\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/8330d238ae6adb68bb6a1c9381e38cfedd990d94\"\u003e\u003ccode\u003e8330d23\u003c/code\u003e\u003c/a\u003e test: add tests for config-api (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20493\"\u003e#20493\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/37d6e91e88fa6a2ca6d8726679096acff21ba6cc\"\u003e\u003ccode\u003e37d6e91\u003c/code\u003e\u003c/a\u003e chore: remove eslint v10 prereleases from eslint-config-eslint deps (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20494\"\u003e#20494\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/da7cd0e79197ad16e17052eef99df141de6dbfb1\"\u003e\u003ccode\u003eda7cd0e\u003c/code\u003e\u003c/a\u003e refactor: cleanup error message templates (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20479\"\u003e#20479\u003c/a\u003e) (Francesco Trotta)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/84fb885d49ac810e79a9491276b4828b53d913e5\"\u003e\u003ccode\u003e84fb885\u003c/code\u003e\u003c/a\u003e chore: package.json update for \u003ccode\u003e@​eslint/js\u003c/code\u003e release (Jenkins)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/1f667344b57c4c09b548d94bcfac1f91b6e5c63d\"\u003e\u003ccode\u003e1f66734\u003c/code\u003e\u003c/a\u003e chore: add \u003ccode\u003eeslint\u003c/code\u003e to \u003ccode\u003epeerDependencies\u003c/code\u003e of \u003ccode\u003e@eslint/js\u003c/code\u003e (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20467\"\u003e#20467\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev10.0.0\u003c/h2\u003e\n\u003ch2\u003eBreaking Changes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/f9e54f43a5e497cdfa179338b431093245cb787b\"\u003e\u003ccode\u003ef9e54f4\u003c/code\u003e\u003c/a\u003e feat!: estimate rule-tester failure location (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20420\"\u003e#20420\u003c/a\u003e) (ST-DDT)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/a176319d8ade1a7d9b2d7fb8f038f55a2662325f\"\u003e\u003ccode\u003ea176319\u003c/code\u003e\u003c/a\u003e feat!: replace \u003ccode\u003echalk\u003c/code\u003e with \u003ccode\u003estyleText\u003c/code\u003e and add \u003ccode\u003ecolor\u003c/code\u003e to \u003ccode\u003eResultsMeta\u003c/code\u003e (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20227\"\u003e#20227\u003c/a\u003e) (루밀LuMir)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/c7046e6c1e03c4ca0eee4888a1f2eba4c6454f84\"\u003e\u003ccode\u003ec7046e6\u003c/code\u003e\u003c/a\u003e feat!: enable JSX reference tracking (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20152\"\u003e#20152\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/fa31a608901684fbcd9906d1907e66561d16e5aa\"\u003e\u003ccode\u003efa31a60\u003c/code\u003e\u003c/a\u003e feat!: add \u003ccode\u003ename\u003c/code\u003e to configs (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20015\"\u003e#20015\u003c/a\u003e) (Kirk Waiblinger)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/3383e7ec9028166cafc8ea7986c2f7498d0049f0\"\u003e\u003ccode\u003e3383e7e\u003c/code\u003e\u003c/a\u003e fix!: remove deprecated \u003ccode\u003eSourceCode\u003c/code\u003e methods (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20137\"\u003e#20137\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/501abd0e916a35554c58b7c0365537f1fa3880ce\"\u003e\u003ccode\u003e501abd0\u003c/code\u003e\u003c/a\u003e feat!: update dependency minimatch to v10 (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20246\"\u003e#20246\u003c/a\u003e) (renovate[bot])\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/ca4d3b40085de47561f89656a2207d09946ed45e\"\u003e\u003ccode\u003eca4d3b4\u003c/code\u003e\u003c/a\u003e fix!: stricter rule tester assertions for valid test cases (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20125\"\u003e#20125\u003c/a\u003e) (唯然)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/96512a66c86402fb0538cdcb6cd30b9073f6bf3b\"\u003e\u003ccode\u003e96512a6\u003c/code\u003e\u003c/a\u003e fix!: Remove deprecated rule context methods (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20086\"\u003e#20086\u003c/a\u003e) (Nicholas C. Zakas)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/c69fdacdb2e886b9d965568a397aa8220db3fe90\"\u003e\u003ccode\u003ec69fdac\u003c/code\u003e\u003c/a\u003e feat!: remove eslintrc support (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20037\"\u003e#20037\u003c/a\u003e) (Francesco Trotta)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/208b5cc34a8374ff81412b5bec2e0800eebfbd04\"\u003e\u003ccode\u003e208b5cc\u003c/code\u003e\u003c/a\u003e feat!: Use \u003ccode\u003eScopeManager#addGlobals()\u003c/code\u003e (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20132\"\u003e#20132\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/a2ee188ea7a38a0c6155f3d39e2b00e1d0f36e14\"\u003e\u003ccode\u003ea2ee188\u003c/code\u003e\u003c/a\u003e fix!: add \u003ccode\u003euniqueItems: true\u003c/code\u003e in \u003ccode\u003eno-invalid-regexp\u003c/code\u003e option (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20155\"\u003e#20155\u003c/a\u003e) (Tanuj Kanti)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/a89059dbf2832d417dd493ee81483227ec44e4ab\"\u003e\u003ccode\u003ea89059d\u003c/code\u003e\u003c/a\u003e feat!: Program range span entire source text (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20133\"\u003e#20133\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/39a6424373d915fa9de0d7b0caba9a4dc3da9b53\"\u003e\u003ccode\u003e39a6424\u003c/code\u003e\u003c/a\u003e fix!: assert 'text' is a string across all RuleFixer methods (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20082\"\u003e#20082\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/f28fbf846244e043c92b355b224d121b06140b44\"\u003e\u003ccode\u003ef28fbf8\u003c/code\u003e\u003c/a\u003e fix!: Deprecate \u003ccode\u003e\u0026quot;always\u0026quot;\u003c/code\u003e and \u003ccode\u003e\u0026quot;as-needed\u0026quot;\u003c/code\u003e options of the \u003ccode\u003eradix\u003c/code\u003e rule (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20223\"\u003e#20223\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/aa3fb2b233e929b37220be940575f42c280e0b98\"\u003e\u003ccode\u003eaa3fb2b\u003c/code\u003e\u003c/a\u003e fix!: tighten \u003ccode\u003efunc-names\u003c/code\u003e schema (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20119\"\u003e#20119\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/f6c0ed0311dcfee853367d5068c765d066e6b756\"\u003e\u003ccode\u003ef6c0ed0\u003c/code\u003e\u003c/a\u003e feat!: report \u003ccode\u003eeslint-env\u003c/code\u003e comments as errors (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20128\"\u003e#20128\u003c/a\u003e) (Francesco Trotta)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/4bf739fb533e59f7f0a66b65f7bc80be0f37d8db\"\u003e\u003ccode\u003e4bf739f\u003c/code\u003e\u003c/a\u003e fix!: remove deprecated \u003ccode\u003eLintMessage#nodeType\u003c/code\u003e and \u003ccode\u003eTestCaseError#type\u003c/code\u003e (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20096\"\u003e#20096\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/523c076866400670fb2192a3f55dbf7ad3469247\"\u003e\u003ccode\u003e523c076\u003c/code\u003e\u003c/a\u003e feat!: drop support for jiti \u0026lt; 2.2.0 (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20016\"\u003e#20016\u003c/a\u003e) (michael faith)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/454a292c95f34dad232411ddac06408e6383bb64\"\u003e\u003ccode\u003e454a292\u003c/code\u003e\u003c/a\u003e feat!: update \u003ccode\u003eeslint:recommended\u003c/code\u003e configuration (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20210\"\u003e#20210\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/4f880ee02992e1bf0e96ebaba679985e2d1295f1\"\u003e\u003ccode\u003e4f880ee\u003c/code\u003e\u003c/a\u003e feat!: remove \u003ccode\u003ev10_*\u003c/code\u003e and inactive \u003ccode\u003eunstable_*\u003c/code\u003e flags (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20225\"\u003e#20225\u003c/a\u003e) (sethamus)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/f18115c363a4ac7671a4c7f30ee13d57ebba330f\"\u003e\u003ccode\u003ef18115c\u003c/code\u003e\u003c/a\u003e feat!: \u003ccode\u003eno-shadow-restricted-names\u003c/code\u003e report \u003ccode\u003eglobalThis\u003c/code\u003e by default (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20027\"\u003e#20027\u003c/a\u003e) (sethamus)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/c6358c31fbd3937b92d89be2618ffdf5a774604e\"\u003e\u003ccode\u003ec6358c3\u003c/code\u003e\u003c/a\u003e feat!: Require Node.js \u003ccode\u003e^20.19.0 || ^22.13.0 || \u0026gt;=24\u003c/code\u003e (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20160\"\u003e#20160\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eFeatures\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/bff9091927811497dbf066b0e3b85ecb37d43822\"\u003e\u003ccode\u003ebff9091\u003c/code\u003e\u003c/a\u003e feat: handle \u003ccode\u003eArray.fromAsync\u003c/code\u003e in \u003ccode\u003earray-callback-return\u003c/code\u003e (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20457\"\u003e#20457\u003c/a\u003e) (Francesco Trotta)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/290c594bb50c439fb71bc75521ee5360daa8c222\"\u003e\u003ccode\u003e290c594\u003c/code\u003e\u003c/a\u003e feat: add \u003ccode\u003eself\u003c/code\u003e to \u003ccode\u003eno-implied-eval\u003c/code\u003e rule (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20468\"\u003e#20468\u003c/a\u003e) (sethamus)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/43677de07ebd6e14bfac40a46ad749ba783c45f2\"\u003e\u003ccode\u003e43677de\u003c/code\u003e\u003c/a\u003e feat: fix handling of function and class expression names in \u003ccode\u003eno-shadow\u003c/code\u003e (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20432\"\u003e#20432\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/84fb885d49ac810e79a9491276b4828b53d913e5\"\u003e\u003ccode\u003e84fb885\u003c/code\u003e\u003c/a\u003e chore: package.json update for \u003ccode\u003e@​eslint/js\u003c/code\u003e release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/1f667344b57c4c09b548d94bcfac1f91b6e5c63d\"\u003e\u003ccode\u003e1f66734\u003c/code\u003e\u003c/a\u003e chore: add \u003ccode\u003eeslint\u003c/code\u003e to \u003ccode\u003epeerDependencies\u003c/code\u003e of \u003ccode\u003e@eslint/js\u003c/code\u003e (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20467\"\u003e#20467\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/f3fbc2f60cbe2c718364feb8c3fc0452c0df3c56\"\u003e\u003ccode\u003ef3fbc2f\u003c/code\u003e\u003c/a\u003e chore: set \u003ccode\u003e@eslint/js\u003c/code\u003e version to 10.0.0 to skip releasing it (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20466\"\u003e#20466\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/b4b3127f8542c599ce2dea804b6582ebc40c993d\"\u003e\u003ccode\u003eb4b3127\u003c/code\u003e\u003c/a\u003e chore: package.json update for \u003ccode\u003e@​eslint/js\u003c/code\u003e release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/0b14059491d830a49b3577931f4f68fbcfce6be5\"\u003e\u003ccode\u003e0b14059\u003c/code\u003e\u003c/a\u003e chore: package.json update for \u003ccode\u003e@​eslint/js\u003c/code\u003e release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/fa31a608901684fbcd9906d1907e66561d16e5aa\"\u003e\u003ccode\u003efa31a60\u003c/code\u003e\u003c/a\u003e feat!: add \u003ccode\u003ename\u003c/code\u003e to configs (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20015\"\u003e#20015\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/1e2cad5f6fa47ed6ed89d2a29798dda926d50990\"\u003e\u003ccode\u003e1e2cad5\u003c/code\u003e\u003c/a\u003e chore: package.json update for \u003ccode\u003e@​eslint/js\u003c/code\u003e release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/454a292c95f34dad232411ddac06408e6383bb64\"\u003e\u003ccode\u003e454a292\u003c/code\u003e\u003c/a\u003e feat!: update \u003ccode\u003eeslint:recommended\u003c/code\u003e configuration (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20210\"\u003e#20210\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/c6358c31fbd3937b92d89be2618ffdf5a774604e\"\u003e\u003ccode\u003ec6358c3\u003c/code\u003e\u003c/a\u003e feat!: Require Node.js \u003ccode\u003e^20.19.0 || ^22.13.0 || \u0026gt;=24\u003c/code\u003e (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20160\"\u003e#20160\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/eslint/eslint/commits/v10.0.1/packages/js\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@typescript-eslint/eslint-plugin` from 8.56.0 to 8.59.2\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases\"\u003e@​typescript-eslint/eslint-plugin's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev8.59.2\u003c/h2\u003e\n\u003ch2\u003e8.59.2 (2026-05-04)\u003c/h2\u003e\n\u003ch3\u003e🩹 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unsafe-type-assertion] handle crash on recursive template literal types (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12150\"\u003e#12150\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-deprecated] object destructuring values should be treated as declarations (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12292\"\u003e#12292\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003erule-tester:\u003c/strong\u003e add TypeScript as a peer dependency (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12288\"\u003e#12288\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e❤️ Thank You\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eDariusz Czajkowski\u003c/li\u003e\n\u003cli\u003eDima Barabash\u003c/li\u003e\n\u003cli\u003eKirk Waiblinger \u003ca href=\"https://github.com/kirkwaiblinger\"\u003e\u003ccode\u003e@​kirkwaiblinger\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.2\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003ev8.59.1\u003c/h2\u003e\n\u003ch2\u003e8.59.1 (2026-04-27)\u003c/h2\u003e\n\u003ch3\u003e🩹 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-type-assertion] fix crash \u0026quot;TypeError: checker.getTypeArguments is not a function\u0026quot; (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12246\"\u003e#12246\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-type-assertion] preserve index signatures in undefined unions (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12257\"\u003e#12257\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-type-assertion] preserve phantom type arguments in generic inference (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12269\"\u003e#12269\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-type-assertion] avoid false positive in logical assignment assertions (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12278\"\u003e#12278\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-type-arguments] handle instantiation expressions (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12220\"\u003e#12220\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-condition] treat void as nullish in no-unnecessary-condition (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12241\"\u003e#12241\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e❤️ Thank You\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eanasm266 \u003ca href=\"https://github.com/anasm266\"\u003e\u003ccode\u003e@​anasm266\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAnshika Jain \u003ca href=\"https://github.com/Anshikakalpana\"\u003e\u003ccode\u003e@​Anshikakalpana\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUlrich Stark\u003c/li\u003e\n\u003cli\u003eyugo innami \u003ca href=\"https://github.com/nami8824\"\u003e\u003ccode\u003e@​nami8824\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.1\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003ev8.59.0\u003c/h2\u003e\n\u003ch2\u003e8.59.0 (2026-04-20)\u003c/h2\u003e\n\u003ch3\u003e🚀 Features\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-type-assertion] report more cases based on assignability (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/11789\"\u003e#11789\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e❤️ Thank You\u003c/h3\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/CHANGELOG.md\"\u003e@​typescript-eslint/eslint-plugin's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e8.59.2 (2026-05-04)\u003c/h2\u003e\n\u003ch3\u003e🩹 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-deprecated] object destructuring values should be treated as declarations (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12292\"\u003e#12292\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unsafe-type-assertion] handle crash on recursive template literal types (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12150\"\u003e#12150\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e❤️ Thank You\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eDima Barabash\u003c/li\u003e\n\u003cli\u003eKirk Waiblinger \u003ca href=\"https://github.com/kirkwaiblinger\"\u003e\u003ccode\u003e@​kirkwaiblinger\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.2\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003e8.59.1 (2026-04-27)\u003c/h2\u003e\n\u003ch3\u003e🩹 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-condition] treat void as nullish in no-unnecessary-condition (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12241\"\u003e#12241\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-type-arguments] handle instantiation expressions (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12220\"\u003e#12220\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-type-assertion] avoid false positive in logical assignment assertions (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12278\"\u003e#12278\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-type-assertion] preserve phantom type arguments in generic inference (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12269\"\u003e#12269\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-type-assertion] preserve index signatures in undefined unions (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12257\"\u003e#12257\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-type-assertion] fix crash \u0026quot;TypeError: checker.getTypeArguments is not a function\u0026quot; (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12246\"\u003e#12246\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e❤️ Thank You\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eanasm266 \u003ca href=\"https://github.com/anasm266\"\u003e\u003ccode\u003e@​anasm266\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAnshika Jain \u003ca href=\"https://github.com/Anshikakalpana\"\u003e\u003ccode\u003e@​Anshikakalpana\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUlrich Stark\u003c/li\u003e\n\u003cli\u003eyugo innami \u003ca href=\"https://github.com/nami8824\"\u003e\u003ccode\u003e@​nami8824\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.1\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003e8.59.0 (2026-04-20)\u003c/h2\u003e\n\u003ch3\u003e🚀 Features\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-type-assertion] report more cases based on assignability (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/11789\"\u003e#11789\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e❤️ Thank You\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUlrich Stark\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.0\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/2ec35f1760aade4df4c631d76d78c7ed5e136333\"\u003e\u003ccode\u003e2ec35f1\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.59.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/ec3ef25390f7daf5a9ff33a60282bdbbb49ab0f3\"\u003e\u003ccode\u003eec3ef25\u003c/code\u003e\u003c/a\u003e test: make no-useless-empty-export tests fully static (\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin/issues/12260\"\u003e#12260\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/60d0a513870d833617374ff8ea256d86ca3cbbbb\"\u003e\u003ccode\u003e60d0a51\u003c/code\u003e\u003c/a\u003e chore(eslint-plugin): switch auto-generated test cases to hand-written in no-...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/5c53da230a70aba7d6f3d6474b5d249b430a95d0\"\u003e\u003ccode\u003e5c53da2\u003c/code\u003e\u003c/a\u003e fix(eslint-plugin): [no-deprecated] object destructuring values should be tre...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/80c28a1ada3f975a932a02587cefee632ccf6550\"\u003e\u003ccode\u003e80c28a1\u003c/code\u003e\u003c/a\u003e fix(eslint-plugin): [no-unsafe-type-assertion] handle crash on recursive temp...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/b7b2670123f76419630f88f3a807f85b7c535230\"\u003e\u003ccode\u003eb7b2670\u003c/code\u003e\u003c/a\u003e test: make no-this-alias tests fully static (\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin/issues/12258\"\u003e#12258\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/52457932e5507b5ca01e720a541f3f8d01e09b9d\"\u003e\u003ccode\u003e5245793\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.59.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/3cef12471659c42c9d4b179f4113a080b1fa2d66\"\u003e\u003ccode\u003e3cef124\u003c/code\u003e\u003c/a\u003e chore(eslint-plugin): switch auto-generated test cases to hand-written in dot...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/27c507b6e532abcd1efa51055f045b00f22055c3\"\u003e\u003ccode\u003e27c507b\u003c/code\u003e\u003c/a\u003e test: make sort-type-constituents tests fully static (\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin/issues/12262\"\u003e#12262\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/a03b31d422be35d8ddc979f48f9317e3f33dd1ce\"\u003e\u003ccode\u003ea03b31d\u003c/code\u003e\u003c/a\u003e chore(eslint-plugin): switch auto-generated test cases to hand-written in no-...\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commits/v8.59.2/packages/eslint-plugin\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@typescript-eslint/parser` from 8.56.0 to 8.59.2\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases\"\u003e@​typescript-eslint/parser's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev8.59.2\u003c/h2\u003e\n\u003ch2\u003e8.59.2 (2026-05-04)\u003c/h2\u003e\n\u003ch3\u003e🩹 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unsafe-type-assertion] handle crash on recursive template literal types (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12150\"\u003e#12150\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-deprecated] object destructuring values should be treated as declarations (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12292\"\u003e#12292\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003erule-tester:\u003c/strong\u003e add TypeScript as a peer dependency (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12288\"\u003e#12288\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e❤️ Thank You\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eDariusz Czajkowski\u003c/li\u003e\n\u003cli\u003eDima Barabash\u003c/li\u003e\n\u003cli\u003eKirk Waiblinger \u003ca href=\"https://github.com/kirkwaiblinger\"\u003e\u003ccode\u003e@​kirkwaiblinger\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.2\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003ev8.59.1\u003c/h2\u003e\n\u003ch2\u003e8.59.1 (2026-04-27)\u003c/h2\u003e\n\u003ch3\u003e🩹 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-type-assertion] fix crash \u0026quot;TypeError: checker.getTypeArguments is not a function\u0026quot; (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12246\"\u003e#12246\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-type-assertion] preserve index signatures in undefined unions (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12257\"\u003e#12257\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-type-assertion] preserve phantom type arguments in generic inference (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12269\"\u003e#12269\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-type-assertion] avoid false positive in logical assignment assertions (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12278\"\u003e#12278\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-type-arguments] handle instantiation expressions (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12220\"\u003e#12220\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-condition] treat void as nullish in no-unnecessary-condition (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12241\"\u003e#12241\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e❤️ Thank You\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eanasm266 \u003ca href=\"https://github.com/anasm266\"\u003e\u003ccode\u003e@​anasm266\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAnshika Jain \u003ca href=\"https://github.com/Anshikakalpana\"\u003e\u003ccode\u003e@​Anshikakalpana\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUlrich Stark\u003c/li\u003e\n\u003cli\u003eyugo innami \u003ca href=\"https://github.com/nami8824\"\u003e\u003ccode\u003e@​nami8824\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.1\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003ev8.59.0\u003c/h2\u003e\n\u003ch2\u003e8.59.0 (2026-04-20)\u003c/h2\u003e\n\u003ch3\u003e🚀 Features\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-type-assertion] report more cases based on assignability (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/11789\"\u003e#11789\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e❤️ Thank You\u003c/h3\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/parser/CHANGELOG.md\"\u003e@​typescript-eslint/parser's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e8.59.2 (2026-05-04)\u003c/h2\u003e\n\u003cp\u003eThis was a version bump only for parser to align it with other projects, there were no code changes.\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.2\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003e8.59.1 (2026-04-27)\u003c/h2\u003e\n\u003cp\u003eThis was a version bump only for parser to align it with other projects, there were no code changes.\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.1\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003e8.59.0 (2026-04-20)\u003c/h2\u003e\n\u003cp\u003eThis was a version bump only for parser to align it with other projects, there were no code changes.\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.0\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003e8.58.2 (2026-04-13)\u003c/h2\u003e\n\u003ch3\u003e🩹 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eremove tsbuildinfo cache file from published packages (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12187\"\u003e#12187\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e❤️ Thank You\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAbhijeet Singh \u003ca href=\"https://github.com/cseas\"\u003e\u003ccode\u003e@​cseas\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.58.2\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003e8.58.1 (2026-04-08)\u003c/h2\u003e\n\u003cp\u003eThis was a version bump only for parser to align it with other projects, there were no code changes.\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.58.1\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003e8.58.0 (2026-03-30)\u003c/h2\u003e\n\u003ch3\u003e🚀 Features\u003c/h3\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/2ec35f1760aade4df4c631d76d78c7ed5e136333\"\u003e\u003ccode\u003e2ec35f1\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.59.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/52457932e5507b5ca01e720a541f3f8d01e09b9d\"\u003e\u003ccode\u003e5245793\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.59.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/ea9ae4f8817873480e3501145059f63e39e8d8a1\"\u003e\u003ccode\u003eea9ae4f\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.59.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/90c2803a4c250e0343598d41e973f95e743bf4ce\"\u003e\u003ccode\u003e90c2803\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.58.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/be6b49a02d68db9bdc8985e7e9e1598700fda2fa\"\u003e\u003ccode\u003ebe6b49a\u003c/code\u003e\u003c/a\u003e fix: remove tsbuildinfo cache file from published packages (\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/parser/issues/12187\"\u003e#12187\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/5311ed312eadf4e238324f2726ae0b1f3f2206e6\"\u003e\u003ccode\u003e5311ed3\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.58.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/493341709fe7d1d6433332b7bd2724e3332c7cdf\"\u003e\u003ccode\u003e4933417\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.58.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/8cde2d06fb9bc591a4c93452509ddbd600c76a35\"\u003e\u003ccode\u003e8cde2d0\u003c/code\u003e\u003c/a\u003e feat: support TypeScript 6 (\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/parser/issues/12124\"\u003e#12124\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/be4d54d26e695cc93605ffcca67dd75848e95c6f\"\u003e\u003ccode\u003ebe4d54d\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.57.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/c7c38aa252d7bf6708a225aebedc57686ac33dcd\"\u003e\u003ccode\u003ec7c38aa\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.57.1\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commits/v8.59.2/packages/parser\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `eslint` from 9.39.2 to 10.3.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/eslint/eslint/releases\"\u003eeslint's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev10.3.0\u003c/h2\u003e\n\u003ch2\u003eFeatures\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/379571a975f2b24d88037b9de2e72ec61d004130\"\u003e\u003ccode\u003e379571a\u003c/code\u003e\u003c/a\u003e feat: add suggestions for no-unused-private-class-members (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20773\"\u003e#20773\u003c/a\u003e) (sethamus)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eBug Fixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/b6ae5cf07b9b51802367539cb24b245b61eaa37c\"\u003e\u003ccode\u003eb6ae5cf\u003c/code\u003e\u003c/a\u003e fix: handle unavailable require cache (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20812\"\u003e#20812\u003c/a\u003e) (Simon Podlipsky)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/6fb3685bcbe9a6f72fd7dfb9129686b6fb96b0bd\"\u003e\u003ccode\u003e6fb3685\u003c/code\u003e\u003c/a\u003e fix: rule suggestions cause continuation in class body (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20787\"\u003e#20787\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eDocumentation\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/32cc7ab4ec653ce89da92deb5c40a9f4fc707fe5\"\u003e\u003ccode\u003e32cc7ab\u003c/code\u003e\u003c/a\u003e docs: fix typos in docs and comments (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20809\"\u003e#20809\u003c/a\u003e) (Tanuj Kanti)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/7f479376a2fa463d823ab762db6bb37ce8d2ee8f\"\u003e\u003ccode\u003e7f47937\u003c/code\u003e\u003c/a\u003e docs: Update README (GitHub Actions Bot)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eChores\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/d32235ec19ceea211fa86452afa383ca05f5c2f9\"\u003e\u003ccode\u003ed32235e\u003c/code\u003e\u003c/a\u003e ci: use pnpm in \u003ccode\u003eeslint-flat-config-utils\u003c/code\u003e type integration test (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20826\"\u003e#20826\u003c/a\u003e) (Francesco Trotta)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/3ffb14ea517de750ed1181579ef844af342e4096\"\u003e\u003ccode\u003e3ffb14e\u003c/code\u003e\u003c/a\u003e chore: clean up typos in comments and JSDoc (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20821\"\u003e#20821\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/22eb58a21cbde2fbd53a1fae99453d408672de50\"\u003e\u003ccode\u003e22eb58a\u003c/code\u003e\u003c/a\u003e chore: add missing continue-on-error to ecosystem-tests.yml (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20818\"\u003e#20818\u003c/a\u003e) (Josh Goldberg ✨)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/88bf0024cb36caebf2880516d9a1f81aa75dafe2\"\u003e\u003ccode\u003e88bf002\u003c/code\u003e\u003c/a\u003e ci: bump pnpm/action-setup from 6.0.1 to 6.0.3 (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20815\"\u003e#20815\u003c/a\u003e) (dependabot[bot])\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/97c8c330beae9557ad24e19f94eebc8d08d1a722\"\u003e\u003ccode\u003e97c8c33\u003c/code\u003e\u003c/a\u003e chore: update ilshidur/action-discord action to v0.4.0 (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20811\"\u003e#20811\u003c/a\u003e) (renovate[bot])\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/2f58136dd47364a4cae7054a64f7bf1e79693813\"\u003e\u003ccode\u003e2f58136\u003c/code\u003e\u003c/a\u003e chore: pin peter-evans/create-pull-request action to 5f6978f (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20810\"\u003e#20810\u003c/a\u003e) (renovate[bot])\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/77add7f1bc91ed17bba3be3289928a9146c5f5a1\"\u003e\u003ccode\u003e77add7f\u003c/code\u003e\u003c/a\u003e chore: add initial ecosystem plugin tests workflow (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/19643\"\u003e#19643\u003c/a\u003e) (Josh Goldberg ✨)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/4023b55490fae55e464fe35530ef038cdf5d79a5\"\u003e\u003ccode\u003e4023b55\u003c/code\u003e\u003c/a\u003e test: Add unit tests for SuppressionsService.prune() (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20797\"\u003e#20797\u003c/a\u003e) (kuldeep kumar)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/54080dad4f77bb39a1a843933d4ff3a2b7c175e2\"\u003e\u003ccode\u003e54080da\u003c/code\u003e\u003c/a\u003e test: add unit tests for ForkContext (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20778\"\u003e#20778\u003c/a\u003e) (kuldeep kumar)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/f0e2bcc4bf19253aaebfbd7df87824b0ca4a151f\"\u003e\u003ccode\u003ef0e2bcc\u003c/code\u003e\u003c/a\u003e test: add unit tests for SuppressionsService.suppress() method (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20765\"\u003e#20765\u003c/a\u003e) (kuldeep kumar)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/a7f0b94743a99bcdf8d07cff15ffbfa6a6c5f927\"\u003e\u003ccode\u003ea7f0b94\u003c/code\u003e\u003c/a\u003e chore: update dependency prettier to v3.8.3 (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20782\"\u003e#20782\u003c/a\u003e) (renovate[bot])\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/7bf93d9e79f6dbf77242cbb9a9b8be834730fccd\"\u003e\u003ccode\u003e7bf93d9\u003c/code\u003e\u003c/a\u003e chore: update TypeScript to v6 (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20677\"\u003e#20677\u003c/a\u003e) (sethamus)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/b42dd72e76e7f90e7f0be9458288d93353052adc\"\u003e\u003ccode\u003eb42dd72\u003c/code\u003e\u003c/a\u003e ci: bump pnpm/action-setup from 6.0.0 to 6.0.1 (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20781\"\u003e#20781\u003c/a\u003e) (dependabot[bot])\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/2b252be80f362cca7be3326a6dbe958680fdfe9a\"\u003e\u003ccode\u003e2b252be\u003c/code\u003e\u003c/a\u003e test: add unit tests for IdGenerator (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20775\"\u003e#20775\u003c/a\u003e) (kuldeep kumar)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev10.2.1\u003c/h2\u003e\n\u003ch2\u003eBug Fixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/14be92b6d1fa0923b8923830f2208e5e2705b002\"\u003e\u003ccode\u003e14be92b\u003c/code\u003e\u003c/a\u003e fix: model generator yield resumption paths in code path analysis (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20665\"\u003e#20665\u003c/a\u003e) (sethamus)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/84a19d2c32255db6b9cfc08644a607aae6d5cb62\"\u003e\u003ccode\u003e84a19d2\u003c/code\u003e\u003c/a\u003e fix: no-async-promise-executor false positives for shadowed Promise (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20740\"\u003e#20740\u003c/a\u003e) (xbinaryx)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/af764af0ec38225755fbf8a6f207f0c77b595a8d\"\u003e\u003ccode\u003eaf764af\u003c/code\u003e\u003c/a\u003e fix: clarify language and processor validation errors (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20729\"\u003e#20729\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/e251b89a38280973e468a4a9386c138f4f55d10d\"\u003e\u003ccode\u003ee251b89\u003c/code\u003e\u003c/a\u003e fix: update eslint (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20715\"\u003e#20715\u003c/a\u003e) (renovate[bot])\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eDocumentation\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/ca92ca0fb4599e8de1e2fb914e695fe7397cbe63\"\u003e\u003ccode\u003eca92ca0\u003c/code\u003e\u003c/a\u003e docs: reuse markdown-it instance for markdown filter (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20768\"\u003e#20768\u003c/a\u003e) (Amaresh  S M)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/57d2ee213305cee0cb55ef08e0480b57396269a9\"\u003e\u003ccode\u003e57d2ee2\u003c/code\u003e\u003c/a\u003e docs:  Enable Eleventy incremental mode for watch (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20767\"\u003e#20767\u003c/a\u003e) (Amaresh  S M)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/c1621b915742276e5f4b25efe790ca62296330dc\"\u003e\u003ccode\u003ec1621b9\u003c/code\u003e\u003c/a\u003e docs: fix typos in code-path-analyzer.js (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20700\"\u003e#20700\u003c/a\u003e) (Ayush Shukla)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/1418d522d10bde1960f4942afb548bc7160ec49e\"\u003e\u003ccode\u003e1418d52\u003c/code\u003e\u003c/a\u003e docs: Update README (GitHub Actions Bot)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/39771e6e600f0b0617fdeafff6dd07e4211ffde6\"\u003e\u003ccode\u003e39771e6\u003c/code\u003e\u003c/a\u003e docs: Update README (GitHub Actions Bot)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/71e04693def2df57268f08f3072a2749df6bf438\"\u003e\u003ccode\u003e71e0469\u003c/code\u003e\u003c/a\u003e docs: fix incomplete JSDoc param description in no-shadow rule (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20728\"\u003e#20728\u003c/a\u003e) (kuldeep kumar)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/22119ceb93e28f62262fc1d98ff1b1442d6e2dbf\"\u003e\u003ccode\u003e22119ce\u003c/code\u003e\u003c/a\u003e docs: clarify scope of for-direction rule with dead code examples (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20723\"\u003e#20723\u003c/a\u003e) (Amaresh  S M)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/8f3fb77f122a5641d1833cad5d93f3f54fa3be0b\"\u003e\u003ccode\u003e8f3fb77\u003c/code\u003e\u003c/a\u003e docs: document \u003ccode\u003emeta.docs.dialects\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20718\"\u003e#20718\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eChores\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/7ddfea9c4f62add1588c5c0b0da568c299246383\"\u003e\u003ccode\u003e7ddfea9\u003c/code\u003e\u003c/a\u003e chore: update dependency prettier to v3.8.2 (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20770\"\u003e#20770\u003c/a\u003e) (renovate[bot])\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/fac40e1de2ba7646cc7cd2d3f93fbdd1f8819001\"\u003e\u003ccode\u003efac40e1\u003c/code\u003e\u003c/a\u003e ci: bump pnpm/action-setup from 5.0.0 to 6.0.0 (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20763\"\u003e#20763\u003c/a\u003e) (dependabot[bot])\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/7246f923332522d8b3d46b6ee646fce88535f3fb\"\u003e\u003ccode\u003e7246f92\u003c/code\u003e\u003c/a\u003e test: add tests for SuppressionsService.load() error handling (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20734\"\u003e#20734\u003c/a\u003e) (kuldeep kumar)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/4f34b1e592b0f63d766d9903998e8e36eb49d3aa\"\u003e\u003ccode\u003e4f34b1e\u003c/code\u003e\u003c/a\u003e chore: update pnpm/action-setup action to v5 (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20762\"\u003e#20762\u003c/a\u003e) (renovate[bot])\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/78892043a36da4aa7640b59c99344b00c181048a\"\u003e\u003ccode\u003e7889204\u003c/code\u003e\u003c/a\u003e 10.3.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/5b69b4fce4dc407c8e960eba638b5a3409c4f1fd\"\u003e\u003ccode\u003e5b69b4f\u003c/code\u003e\u003c/a\u003e Build: changelog update for 10.3.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/d32235ec19ceea211fa86452afa383ca05f5c2f9\"\u003e\u003ccode\u003ed32235e\u003c/code\u003e\u003c/a\u003e ci: use pnpm in \u003ccode\u003eeslint-flat-config-utils\u003c/code\u003e type integration test (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20826\"\u003e#20826\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/b6ae5cf07b9b51802367539cb24b245b61eaa37c\"\u003e\u003ccode\u003eb6ae5cf\u003c/code\u003e\u003c/a\u003e fix: handle unavailable require cache (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20812\"\u003e#20812\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/3ffb14ea517de750ed1181579ef844af342e4096\"\u003e\u003ccode\u003e3ffb14e\u003c/code\u003e\u003c/a\u003e chore: clean up typos in comments and JSDoc (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20821\"\u003e#20821\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/6fb3685bcbe9a6f72fd7dfb9129686b6fb96b0bd\"\u003e\u003ccode\u003e6fb3685\u003c/code\u003e\u003c/a\u003e fix: rule suggestions cause continuation in class body (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20787\"\u003e#20787\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/22eb58a21cbde2fbd53a1fae99453d408672de50\"\u003e\u003ccode\u003e22eb58a\u003c/code\u003e\u003c/a\u003e chore: add missing continue-on-error to ecosystem-tests.yml (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20818\"\u003e#20818\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/88bf0024cb36caebf2880516d9a1f81aa75dafe2\"\u003e\u003ccode\u003e88bf002\u003c/code\u003e\u003c/a\u003e ci: bump pnpm/action-setup from 6.0.1 to 6.0.3 (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20815\"\u003e#20815\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/379571a975f2b24d88037b9de2e72ec61d004130\"\u003e\u003ccode\u003e379571a\u003c/code\u003e\u003c/a\u003e feat: add suggestions for no-unused-private-class-members (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20773\"\u003e#20773\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/97c8c330beae9557ad24e19f94eebc8d08d1a722\"\u003e\u003ccode\u003e97c8c33\u003c/code\u003e\u003c/a\u003e chore: update ilshidur/action-discord action to v0.4.0 (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20811\"\u003e#20811\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/eslint/eslint/compare/v9.39.2...v10.3.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `eslint-plugin-react-hooks` from 7.0.1 to 7.1.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/facebook/react/releases\"\u003eeslint-plugin-react-hooks's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eeslint-plugin-react-hooks@7.1.1 (April 17, 2026)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eNote:\u003c/strong\u003e 7.1.0 accidentally removed the \u003ccode\u003ecomponent-hook-factories\u003c/code\u003e rule, causing errors for users who referenced it in their ESLint config. This is now fixed.\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdd deprecated no-op \u003ccode\u003ecomponent-hook-factories\u003c/code\u003e rule for backwards compatibility. (\u003ca href=\"https://github.com/mofeiZ\"\u003e\u003ccode\u003e@​mofeiZ\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/36307\"\u003e#36307\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eeslint-plugin-react-hooks@7.1.0 (April 16, 2026)\u003c/h2\u003e\n\u003cp\u003eThis release adds ESLint v10 support, improves performance by skipping compilation for non-React files, and includes compiler lint improvements including better \u003ccode\u003eset-state-in-effect\u003c/code\u003e detection, improved ref validation, and more helpful error reporting.\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdd ESLint v10 support. (\u003ca href=\"https://github.com/azat-io\"\u003e\u003ccode\u003e@​azat-io\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/35720\"\u003e#35720\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSkip compilation for non-React files to improve performance. (\u003ca href=\"https://github.com/josephsavona\"\u003e\u003ccode\u003e@​josephsavona\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/35589\"\u003e#35589\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix exhaustive deps bug with Flow type casting. (\u003ca href=\"https://github.com/jorge-cab\"\u003e\u003ccode\u003e@​jorge-cab\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/35691\"\u003e#35691\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix \u003ccode\u003euseEffectEvent\u003c/code\u003e checks in component syntax. (\u003ca href=\"https://github.com/jbrown215\"\u003e\u003ccode\u003e@​jbrown215\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/35041\"\u003e#35041\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eImproved \u003ccode\u003eset-state-in-effect\u003c/code\u003e validation with fewer false negatives. (\u003ca href=\"https://github.com/jorge-cab\"\u003e\u003ccode\u003e@​jorge-cab\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/35134\"\u003e#35134\u003c/a\u003e, \u003ca href=\"https://github.com/josephsavona\"\u003e\u003ccode\u003e@​josephsavona\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/35147\"\u003e#35147\u003c/a\u003e, \u003ca href=\"https://github.com/jackpope\"\u003e\u003ccode\u003e@​jackpope\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/35214\"\u003e#35214\u003c/a\u003e, \u003ca href=\"https://github.com/chesnokov-tony\"\u003e\u003ccode\u003e@​chesnokov-tony\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/35419\"\u003e#35419\u003c/a\u003e, \u003ca href=\"https://github.com/jsleitor\"\u003e\u003ccode\u003e@​jsleitor\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/36107\"\u003e#36107\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eImproved ref validation for non-mutating functions and event handler props. (\u003ca href=\"https://github.com/josephsavona\"\u003e\u003ccode\u003e@​josephsavona\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/35893\"\u003e#35893\u003c/a\u003e, \u003ca href=\"https://github.com/kolvian\"\u003e\u003ccode\u003e@​kolvian\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/35062\"\u003e#35062\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCompiler now reports all errors instead of stopping at the first. (\u003ca href=\"https://github.com/josephsavona\"\u003e\u003ccode\u003e@​josephsavona\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/35873\"\u003e#35873\u003c/a\u003e–\u003ca href=\"https://redirect.github.com/facebook/react/pull/35884\"\u003e#35884\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eImproved source locations and error display in compiler diagnostics. (\u003ca href=\"https://github.com/nathanmarks\"\u003e\u003ccode\u003e@​nathanmarks\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/35348\"\u003e#35348\u003c/a\u003e, \u003ca href=\"https://github.com/josephsavona\"\u003e\u003ccode\u003e@​josephsavona\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/34963\"\u003e#34963\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/facebook/react/blob/main/packages/eslint-plugin-react-hooks/CHANGELOG.md\"\u003eeslint-plugin-react-hooks's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e7.1.1\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eNote:\u003c/strong\u003e 7.1.0 accidentally removed the \u003ccode\u003ecomponent-hook-factories\u003c/code\u003e rule, causing errors for users who referenced it in their ESLint config. This is now fixed.\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdd deprecated no-op \u003ccode\u003ecomponent-hook-factories\u003c/code\u003e rule for backwards compatibility. (\u003ca href=\"https://github.com/mofeiZ\"\u003e\u003ccode\u003e@​mofeiZ\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/36307\"\u003e#36307\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e7.1.0\u003c/h2\u003e\n\u003cp\u003eThis release adds ESLint v10 support, improves performance by skipping compilation for non-React...\n\n_Description has been truncated_","html_url":"https://github.com/devahmadsaad/react-starter-kit/pull/6","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/devahmadsaad%2Freact-starter-kit/issues/6","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/6/packages"},{"uuid":"4418154880","node_id":"PR_kwDORgtP787aHIEO","number":9,"state":"closed","title":"deps(deps): bump the all-dependencies group across 1 directory with 65 updates","user":"dependabot[bot]","labels":[],"assignees":[],"locked":false,"comments_count":2,"pull_request":true,"closed_at":"2026-05-18T05:23:49.000Z","author_association":null,"state_reason":null,"created_at":"2026-05-11T04:52:14.000Z","updated_at":"2026-05-18T05:23:51.000Z","time_to_close":606695,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"deps(deps): bump","group_name":"all-dependencies","update_count":65,"packages":[{"name":"@eslint-react/eslint-plugin","old_version":"2.13.0","new_version":"5.7.5","repository_url":"https://github.com/Rel1cx/eslint-react"},{"name":"@eslint/js","old_version":"9.39.2","new_version":"10.0.1","repository_url":"https://github.com/eslint/eslint"},{"name":"@typescript-eslint/eslint-plugin","old_version":"8.56.0","new_version":"8.59.2","repository_url":"https://github.com/typescript-eslint/typescript-eslint"},{"name":"@typescript-eslint/parser","old_version":"8.56.0","new_version":"8.59.2","repository_url":"https://github.com/typescript-eslint/typescript-eslint"},{"name":"eslint","old_version":"9.39.2","new_version":"10.3.0","repository_url":"https://github.com/eslint/eslint"},{"name":"eslint-plugin-react-hooks","old_version":"7.0.1","new_version":"7.1.1","repository_url":"https://github.com/facebook/react"},{"name":"globals","old_version":"17.3.0","new_version":"17.6.0","repository_url":"https://github.com/sindresorhus/globals"},{"name":"graphql","old_version":"16.12.0","new_version":"16.14.0","repository_url":"https://github.com/graphql/graphql-js"},{"name":"happy-dom","old_version":"20.6.2","new_version":"20.9.0","repository_url":"https://github.com/capricorn86/happy-dom"},{"name":"jiti","old_version":"2.6.1","new_version":"2.7.0","repository_url":"https://github.com/unjs/jiti"},{"name":"lint-staged","old_version":"16.2.7","new_version":"17.0.4","repository_url":"https://github.com/lint-staged/lint-staged"},{"name":"mermaid","old_version":"11.12.3","new_version":"11.14.0","repository_url":"https://github.com/mermaid-js/mermaid"},{"name":"prettier","old_version":"3.8.1","new_version":"3.8.3","repository_url":"https://github.com/prettier/prettier"},{"name":"react","old_version":"19.2.4","new_version":"19.2.6","repository_url":"https://github.com/facebook/react"},{"name":"typescript","old_version":"5.9.3","new_version":"6.0.3","repository_url":"https://github.com/microsoft/TypeScript"},{"name":"typescript-eslint","old_version":"8.56.0","new_version":"8.59.2","repository_url":"https://github.com/typescript-eslint/typescript-eslint"},{"name":"typescript-language-server","old_version":"5.1.3","new_version":"5.2.0","repository_url":"https://github.com/typescript-language-server/typescript-language-server"},{"name":"vite","old_version":"7.3.1","new_version":"8.0.11","repository_url":"https://github.com/vitejs/vite"},{"name":"vitepress","old_version":"2.0.0-alpha.16","new_version":"2.0.0-alpha.17","repository_url":"https://github.com/vuejs/vitepress"},{"name":"vitepress-plugin-llms","old_version":"1.11.0","new_version":"1.12.2","repository_url":"https://github.com/okineadev/vitepress-plugin-llms"},{"name":"vitest","old_version":"4.0.18","new_version":"4.1.5","repository_url":"https://github.com/vitest-dev/vitest"},{"name":"wrangler","old_version":"4.66.0","new_version":"4.90.0","repository_url":"https://github.com/cloudflare/workers-sdk"},{"name":"@ai-sdk/openai","old_version":"3.0.29","new_version":"3.0.63","repository_url":"https://github.com/vercel/ai"},{"name":"@better-auth/passkey","old_version":"1.4.18","new_version":"1.6.10","repository_url":"https://github.com/better-auth/better-auth"},{"name":"@better-auth/stripe","old_version":"1.4.18","new_version":"1.6.10","repository_url":"https://github.com/better-auth/better-auth"},{"name":"@trpc/server","old_version":"11.10.0","new_version":"11.17.0","repository_url":"https://github.com/trpc/trpc"},{"name":"ai","old_version":"6.0.91","new_version":"6.0.177","repository_url":"https://github.com/vercel/ai"},{"name":"better-auth","old_version":"1.4.18","new_version":"1.6.10","repository_url":"https://github.com/better-auth/better-auth"},{"name":"drizzle-orm","old_version":"0.45.1","new_version":"0.45.2","repository_url":"https://github.com/drizzle-team/drizzle-orm"},{"name":"postgres","old_version":"3.4.8","new_version":"3.4.9","repository_url":"https://github.com/porsager/postgres"},{"name":"resend","old_version":"6.9.2","new_version":"6.12.3","repository_url":"https://github.com/resend/resend-node"},{"name":"stripe","old_version":"20.3.1","new_version":"22.1.1","repository_url":"https://github.com/stripe/stripe-node"},{"name":"@cloudflare/workers-types","old_version":"4.20260218.0","new_version":"4.20260511.1","repository_url":"https://github.com/cloudflare/workerd"},{"name":"@types/bun","old_version":"1.3.9","new_version":"1.3.13","repository_url":"https://github.com/DefinitelyTyped/DefinitelyTyped"},{"name":"hono","old_version":"4.11.10","new_version":"4.12.18","repository_url":"https://github.com/honojs/hono"},{"name":"@tanstack/react-query","old_version":"5.90.21","new_version":"5.100.9","repository_url":"https://github.com/TanStack/query"},{"name":"@tanstack/react-router","old_version":"1.161.1","new_version":"1.169.2","repository_url":"https://github.com/TanStack/router"},{"name":"@trpc/client","old_version":"11.10.0","new_version":"11.17.0","repository_url":"https://github.com/trpc/trpc"},{"name":"@trpc/tanstack-react-query","old_version":"11.10.0","new_version":"11.17.0","repository_url":"https://github.com/trpc/trpc"},{"name":"jotai","old_version":"2.17.1","new_version":"2.20.0","repository_url":"https://github.com/pmndrs/jotai"},{"name":"lucide-react","old_version":"0.574.0","new_version":"1.14.0","repository_url":"https://github.com/lucide-icons/lucide"},{"name":"react-dom","old_version":"19.2.4","new_version":"19.2.6","repository_url":"https://github.com/facebook/react"},{"name":"tailwind-merge","old_version":"3.4.1","new_version":"3.6.0","repository_url":"https://github.com/dcastil/tailwind-merge"},{"name":"@tailwindcss/postcss","old_version":"4.2.0","new_version":"4.3.0","repository_url":"https://github.com/tailwindlabs/tailwindcss"},{"name":"@tanstack/react-query-devtools","old_version":"5.91.3","new_version":"5.100.9","repository_url":"https://github.com/TanStack/query"},{"name":"@tanstack/react-router-devtools","old_version":"1.161.1","new_version":"1.166.13","repository_url":"https://github.com/TanStack/router"},{"name":"@tanstack/router-plugin","old_version":"1.161.1","new_version":"1.167.35","repository_url":"https://github.com/TanStack/router"},{"name":"@types/node","old_version":"25.2.3","new_version":"25.6.2","repository_url":"https://github.com/DefinitelyTyped/DefinitelyTyped"},{"name":"@vitejs/plugin-react","old_version":"5.1.4","new_version":"6.0.1","repository_url":"https://github.com/vitejs/vite-plugin-react"},{"name":"@vitejs/plugin-react-swc","old_version":"4.2.3","new_version":"4.3.0","repository_url":"https://github.com/vitejs/vite-plugin-react"},{"name":"autoprefixer","old_version":"10.4.24","new_version":"10.5.0","repository_url":"https://github.com/postcss/autoprefixer"},{"name":"globby","old_version":"16.1.1","new_version":"16.2.0","repository_url":"https://github.com/sindresorhus/globby"},{"name":"@react-email/components","old_version":"1.0.8","new_version":"1.0.12","repository_url":"https://github.com/resend/react-email"},{"name":"@react-email/render","old_version":"2.0.4","new_version":"2.0.8","repository_url":"https://github.com/resend/react-email"},{"name":"@react-email/preview-server","old_version":"5.2.8","new_version":"5.2.10","repository_url":"https://github.com/resend/react-email"},{"name":"react-email","old_version":"5.2.8","new_version":"6.1.1","repository_url":"https://github.com/resend/react-email"},{"name":"@astrojs/react","old_version":"4.4.2","new_version":"5.0.4","repository_url":"https://github.com/withastro/astro"},{"name":"astro","old_version":"5.17.2","new_version":"6.3.1","repository_url":"https://github.com/withastro/astro"},{"name":"dotenv","old_version":"17.3.1","new_version":"17.4.2","repository_url":"https://github.com/motdotla/dotenv"},{"name":"drizzle-kit","old_version":"0.31.9","new_version":"0.31.10","repository_url":"https://github.com/drizzle-team/drizzle-orm"},{"name":"@modelcontextprotocol/sdk","old_version":"1.26.0","new_version":"1.29.0","repository_url":"https://github.com/modelcontextprotocol/typescript-sdk"},{"name":"got","old_version":"14.6.6","new_version":"15.0.5","repository_url":"https://github.com/sindresorhus/got"}],"path":null,"ecosystem":"npm"},"body":"Bumps the all-dependencies group with 62 updates in the / directory:\n\n| Package | From | To |\n| --- | --- | --- |\n| [@eslint-react/eslint-plugin](https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin) | `2.13.0` | `5.7.5` |\n| [@eslint/js](https://github.com/eslint/eslint/tree/HEAD/packages/js) | `9.39.2` | `10.0.1` |\n| [@typescript-eslint/eslint-plugin](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin) | `8.56.0` | `8.59.2` |\n| [@typescript-eslint/parser](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/parser) | `8.56.0` | `8.59.2` |\n| [eslint](https://github.com/eslint/eslint) | `9.39.2` | `10.3.0` |\n| [eslint-plugin-react-hooks](https://github.com/facebook/react/tree/HEAD/packages/eslint-plugin-react-hooks) | `7.0.1` | `7.1.1` |\n| [globals](https://github.com/sindresorhus/globals) | `17.3.0` | `17.6.0` |\n| [graphql](https://github.com/graphql/graphql-js) | `16.12.0` | `16.14.0` |\n| [happy-dom](https://github.com/capricorn86/happy-dom) | `20.6.2` | `20.9.0` |\n| [jiti](https://github.com/unjs/jiti) | `2.6.1` | `2.7.0` |\n| [lint-staged](https://github.com/lint-staged/lint-staged) | `16.2.7` | `17.0.4` |\n| [mermaid](https://github.com/mermaid-js/mermaid) | `11.12.3` | `11.14.0` |\n| [prettier](https://github.com/prettier/prettier) | `3.8.1` | `3.8.3` |\n| [react](https://github.com/facebook/react/tree/HEAD/packages/react) | `19.2.4` | `19.2.6` |\n| [typescript](https://github.com/microsoft/TypeScript) | `5.9.3` | `6.0.3` |\n| [typescript-eslint](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/typescript-eslint) | `8.56.0` | `8.59.2` |\n| [typescript-language-server](https://github.com/typescript-language-server/typescript-language-server) | `5.1.3` | `5.2.0` |\n| [vite](https://github.com/vitejs/vite/tree/HEAD/packages/vite) | `7.3.1` | `8.0.11` |\n| [vitepress](https://github.com/vuejs/vitepress) | `2.0.0-alpha.16` | `2.0.0-alpha.17` |\n| [vitepress-plugin-llms](https://github.com/okineadev/vitepress-plugin-llms) | `1.11.0` | `1.12.2` |\n| [vitest](https://github.com/vitest-dev/vitest/tree/HEAD/packages/vitest) | `4.0.18` | `4.1.5` |\n| [wrangler](https://github.com/cloudflare/workers-sdk/tree/HEAD/packages/wrangler) | `4.66.0` | `4.90.0` |\n| [@ai-sdk/openai](https://github.com/vercel/ai/tree/HEAD/packages/openai) | `3.0.29` | `3.0.63` |\n| [@better-auth/passkey](https://github.com/better-auth/better-auth/tree/HEAD/packages/passkey) | `1.4.18` | `1.6.10` |\n| [@better-auth/stripe](https://github.com/better-auth/better-auth/tree/HEAD/packages/stripe) | `1.4.18` | `1.6.10` |\n| [@trpc/server](https://github.com/trpc/trpc/tree/HEAD/packages/server) | `11.10.0` | `11.17.0` |\n| [ai](https://github.com/vercel/ai/tree/HEAD/packages/ai) | `6.0.91` | `6.0.177` |\n| [better-auth](https://github.com/better-auth/better-auth/tree/HEAD/packages/better-auth) | `1.4.18` | `1.6.10` |\n| [drizzle-orm](https://github.com/drizzle-team/drizzle-orm) | `0.45.1` | `0.45.2` |\n| [postgres](https://github.com/porsager/postgres) | `3.4.8` | `3.4.9` |\n| [resend](https://github.com/resend/resend-node) | `6.9.2` | `6.12.3` |\n| [stripe](https://github.com/stripe/stripe-node) | `20.3.1` | `22.1.1` |\n| [@cloudflare/workers-types](https://github.com/cloudflare/workerd) | `4.20260218.0` | `4.20260511.1` |\n| [@types/bun](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/bun) | `1.3.9` | `1.3.13` |\n| [hono](https://github.com/honojs/hono) | `4.11.10` | `4.12.18` |\n| [@tanstack/react-query](https://github.com/TanStack/query/tree/HEAD/packages/react-query) | `5.90.21` | `5.100.9` |\n| [@tanstack/react-router](https://github.com/TanStack/router/tree/HEAD/packages/react-router) | `1.161.1` | `1.169.2` |\n| [@trpc/client](https://github.com/trpc/trpc/tree/HEAD/packages/client) | `11.10.0` | `11.17.0` |\n| [@trpc/tanstack-react-query](https://github.com/trpc/trpc/tree/HEAD/packages/tanstack-react-query) | `11.10.0` | `11.17.0` |\n| [jotai](https://github.com/pmndrs/jotai) | `2.17.1` | `2.20.0` |\n| [lucide-react](https://github.com/lucide-icons/lucide/tree/HEAD/packages/lucide-react) | `0.574.0` | `1.14.0` |\n| [react-dom](https://github.com/facebook/react/tree/HEAD/packages/react-dom) | `19.2.4` | `19.2.6` |\n| [tailwind-merge](https://github.com/dcastil/tailwind-merge) | `3.4.1` | `3.6.0` |\n| [@tailwindcss/postcss](https://github.com/tailwindlabs/tailwindcss/tree/HEAD/packages/@tailwindcss-postcss) | `4.2.0` | `4.3.0` |\n| [@tanstack/react-query-devtools](https://github.com/TanStack/query/tree/HEAD/packages/react-query-devtools) | `5.91.3` | `5.100.9` |\n| [@tanstack/react-router-devtools](https://github.com/TanStack/router/tree/HEAD/packages/react-router-devtools) | `1.161.1` | `1.166.13` |\n| [@tanstack/router-plugin](https://github.com/TanStack/router/tree/HEAD/packages/router-plugin) | `1.161.1` | `1.167.35` |\n| [@types/node](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/node) | `25.2.3` | `25.6.2` |\n| [@vitejs/plugin-react](https://github.com/vitejs/vite-plugin-react/tree/HEAD/packages/plugin-react) | `5.1.4` | `6.0.1` |\n| [@vitejs/plugin-react-swc](https://github.com/vitejs/vite-plugin-react/tree/HEAD/packages/plugin-react-swc) | `4.2.3` | `4.3.0` |\n| [autoprefixer](https://github.com/postcss/autoprefixer) | `10.4.24` | `10.5.0` |\n| [globby](https://github.com/sindresorhus/globby) | `16.1.1` | `16.2.0` |\n| [@react-email/components](https://github.com/resend/react-email/tree/HEAD/packages/components) | `1.0.8` | `1.0.12` |\n| [@react-email/render](https://github.com/resend/react-email/tree/HEAD/packages/render) | `2.0.4` | `2.0.8` |\n| [@react-email/preview-server](https://github.com/resend/react-email/tree/HEAD/packages/preview-server) | `5.2.8` | `5.2.10` |\n| [react-email](https://github.com/resend/react-email/tree/HEAD/packages/react-email) | `5.2.8` | `6.1.1` |\n| [@astrojs/react](https://github.com/withastro/astro/tree/HEAD/packages/integrations/react) | `4.4.2` | `5.0.4` |\n| [astro](https://github.com/withastro/astro/tree/HEAD/packages/astro) | `5.17.2` | `6.3.1` |\n| [dotenv](https://github.com/motdotla/dotenv) | `17.3.1` | `17.4.2` |\n| [drizzle-kit](https://github.com/drizzle-team/drizzle-orm) | `0.31.9` | `0.31.10` |\n| [@modelcontextprotocol/sdk](https://github.com/modelcontextprotocol/typescript-sdk) | `1.26.0` | `1.29.0` |\n| [got](https://github.com/sindresorhus/got) | `14.6.6` | `15.0.5` |\n\n\nUpdates `@eslint-react/eslint-plugin` from 2.13.0 to 5.7.5\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/Rel1cx/eslint-react/releases\"\u003e@​eslint-react/eslint-plugin's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev5.7.5 (2026-05-08)\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003ch3\u003e🏗️ Internal\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eBumped \u003ccode\u003e@eslint/compat\u003c/code\u003e from 2.0.5 to 2.1.0.\u003c/li\u003e\n\u003cli\u003eBumped \u003ccode\u003e@types/node\u003c/code\u003e from 25.6.0 to 25.6.2.\u003c/li\u003e\n\u003cli\u003eBumped \u003ccode\u003enext\u003c/code\u003e from 16.2.5 to 16.2.6.\u003c/li\u003e\n\u003cli\u003eBumped \u003ccode\u003epublint\u003c/code\u003e from 0.3.19 to 0.3.20.\u003c/li\u003e\n\u003cli\u003eBumped \u003ccode\u003etsdown\u003c/code\u003e from 0.21.10 to 0.22.0.\u003c/li\u003e\n\u003cli\u003eBumped \u003ccode\u003epnpm\u003c/code\u003e from 10.33.4 to 11.0.8.\u003c/li\u003e\n\u003cli\u003eAdjusted website styles.\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/Rel1cx/eslint-react/compare/v5.7.4...v5.7.5\"\u003ehttps://github.com/Rel1cx/eslint-react/compare/v5.7.4...v5.7.5\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev5.7.4 (2026-05-07)\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003ch3\u003e🏗️ Internal\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eBumped \u003ccode\u003e@typescript-eslint\u003c/code\u003e packages from 8.59.1 to 8.59.2.\u003c/li\u003e\n\u003cli\u003eBumped \u003ccode\u003ereact\u003c/code\u003e and \u003ccode\u003ereact-dom\u003c/code\u003e from 19.2.5 to 19.2.6.\u003c/li\u003e\n\u003cli\u003eBumped \u003ccode\u003enext\u003c/code\u003e from 16.2.4 to 16.2.5.\u003c/li\u003e\n\u003cli\u003eBumped \u003ccode\u003enx\u003c/code\u003e from 22.7.1 to 23.0.0-canary.20260506-b594537.\u003c/li\u003e\n\u003cli\u003eBumped \u003ccode\u003efumadocs-core\u003c/code\u003e and \u003ccode\u003efumadocs-ui\u003c/code\u003e from 16.8.5 to 16.8.7.\u003c/li\u003e\n\u003cli\u003eBumped \u003ccode\u003epostcss\u003c/code\u003e from 8.5.13 to 8.5.14.\u003c/li\u003e\n\u003cli\u003eBumped \u003ccode\u003epublint\u003c/code\u003e from 0.3.18 to 0.3.19.\u003c/li\u003e\n\u003cli\u003eBumped \u003ccode\u003epnpm\u003c/code\u003e from 10.33.2 to 10.33.4.\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/Rel1cx/eslint-react/compare/v5.7.3...v5.7.4\"\u003ehttps://github.com/Rel1cx/eslint-react/compare/v5.7.3...v5.7.4\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev5.7.3 (2026-05-06)\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003ch3\u003e🐞 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003e\u003ccode\u003ereact-x/immutability\u003c/code\u003e\u003c/strong\u003e: Exempted ref mutations via a naming heuristic — any object whose identifier is \u003ccode\u003eref\u003c/code\u003e or ends with \u003ccode\u003eRef\u003c/code\u003e is treated as a mutable ref and skipped from immutability checks. This fixes false positives when mutating \u003ccode\u003eRefObject\u0026lt;T\u0026gt;\u003c/code\u003e values received as props (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1752\"\u003e#1752\u003c/a\u003e, \u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1751\"\u003e#1751\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003e\u003ccode\u003ereact-x/immutability\u003c/code\u003e\u003c/strong\u003e: Added \u003ccode\u003enoRefLikeStateName\u003c/code\u003e diagnostic to prevent state variables from being named \u003ccode\u003eref\u003c/code\u003e or ending with \u003ccode\u003eRef\u003c/code\u003e, which would otherwise bypass the ref exemption heuristic (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1752\"\u003e#1752\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e📝 Documentation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFixed the full rule name in \u003ccode\u003ereact-jsx/no-key-after-spread\u003c/code\u003e documentation (\u003ccode\u003ejsx/no-key-after-spread\u003c/code\u003e → \u003ccode\u003ejsx-no-key-after-spread\u003c/code\u003e) (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1750\"\u003e#1750\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/Rel1cx/eslint-react/compare/v5.7.2...v5.7.3\"\u003ehttps://github.com/Rel1cx/eslint-react/compare/v5.7.2...v5.7.3\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev5.7.2 (2026-05-04)\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003ch3\u003e🐞 Fixes\u003c/h3\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/Rel1cx/eslint-react/blob/main/CHANGELOG.md\"\u003e@​eslint-react/eslint-plugin's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev5.7.5 (2026-05-08)\u003c/h2\u003e\n\u003ch3\u003e🏗️ Internal\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eBumped \u003ccode\u003e@eslint/compat\u003c/code\u003e from 2.0.5 to 2.1.0.\u003c/li\u003e\n\u003cli\u003eBumped \u003ccode\u003e@types/node\u003c/code\u003e from 25.6.0 to 25.6.2.\u003c/li\u003e\n\u003cli\u003eBumped \u003ccode\u003enext\u003c/code\u003e from 16.2.5 to 16.2.6.\u003c/li\u003e\n\u003cli\u003eBumped \u003ccode\u003epublint\u003c/code\u003e from 0.3.19 to 0.3.20.\u003c/li\u003e\n\u003cli\u003eBumped \u003ccode\u003etsdown\u003c/code\u003e from 0.21.10 to 0.22.0.\u003c/li\u003e\n\u003cli\u003eBumped \u003ccode\u003epnpm\u003c/code\u003e from 10.33.4 to 11.0.8.\u003c/li\u003e\n\u003cli\u003eAdjusted website styles.\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/Rel1cx/eslint-react/compare/v5.7.4...v5.7.5\"\u003ehttps://github.com/Rel1cx/eslint-react/compare/v5.7.4...v5.7.5\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev5.7.4 (2026-05-07)\u003c/h2\u003e\n\u003ch3\u003e🏗️ Internal\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eBumped \u003ccode\u003e@typescript-eslint\u003c/code\u003e packages from 8.59.1 to 8.59.2.\u003c/li\u003e\n\u003cli\u003eBumped \u003ccode\u003ereact\u003c/code\u003e and \u003ccode\u003ereact-dom\u003c/code\u003e from 19.2.5 to 19.2.6.\u003c/li\u003e\n\u003cli\u003eBumped \u003ccode\u003enext\u003c/code\u003e from 16.2.4 to 16.2.5.\u003c/li\u003e\n\u003cli\u003eBumped \u003ccode\u003enx\u003c/code\u003e from 22.7.1 to 23.0.0-canary.20260506-b594537.\u003c/li\u003e\n\u003cli\u003eBumped \u003ccode\u003efumadocs-core\u003c/code\u003e and \u003ccode\u003efumadocs-ui\u003c/code\u003e from 16.8.5 to 16.8.7.\u003c/li\u003e\n\u003cli\u003eBumped \u003ccode\u003epostcss\u003c/code\u003e from 8.5.13 to 8.5.14.\u003c/li\u003e\n\u003cli\u003eBumped \u003ccode\u003epublint\u003c/code\u003e from 0.3.18 to 0.3.19.\u003c/li\u003e\n\u003cli\u003eBumped \u003ccode\u003epnpm\u003c/code\u003e from 10.33.2 to 10.33.4.\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/Rel1cx/eslint-react/compare/v5.7.3...v5.7.4\"\u003ehttps://github.com/Rel1cx/eslint-react/compare/v5.7.3...v5.7.4\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev5.7.3 (2026-05-06)\u003c/h2\u003e\n\u003ch3\u003e🐞 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003e\u003ccode\u003ereact-x/immutability\u003c/code\u003e\u003c/strong\u003e: Exempted ref mutations via a naming heuristic — any object whose identifier is \u003ccode\u003eref\u003c/code\u003e or ends with \u003ccode\u003eRef\u003c/code\u003e is treated as a mutable ref and skipped from immutability checks. This fixes false positives when mutating \u003ccode\u003eRefObject\u0026lt;T\u0026gt;\u003c/code\u003e values received as props (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1752\"\u003e#1752\u003c/a\u003e, \u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1751\"\u003e#1751\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003e\u003ccode\u003ereact-x/immutability\u003c/code\u003e\u003c/strong\u003e: Added \u003ccode\u003enoRefLikeStateName\u003c/code\u003e diagnostic to prevent state variables from being named \u003ccode\u003eref\u003c/code\u003e or ending with \u003ccode\u003eRef\u003c/code\u003e, which would otherwise bypass the ref exemption heuristic (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1752\"\u003e#1752\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e📝 Documentation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFixed the full rule name in \u003ccode\u003ereact-jsx/no-key-after-spread\u003c/code\u003e documentation (\u003ccode\u003ejsx/no-key-after-spread\u003c/code\u003e → \u003ccode\u003ejsx-no-key-after-spread\u003c/code\u003e) (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1750\"\u003e#1750\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/Rel1cx/eslint-react/compare/v5.7.2...v5.7.3\"\u003ehttps://github.com/Rel1cx/eslint-react/compare/v5.7.2...v5.7.3\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev5.7.2 (2026-05-04)\u003c/h2\u003e\n\u003ch3\u003e🐞 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003e\u003ccode\u003ereact-x/no-unused-state\u003c/code\u003e\u003c/strong\u003e: Removed the rule from the \u003ccode\u003erecommended\u003c/code\u003e preset for now (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1747\"\u003e#1747\u003c/a\u003e, \u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1748\"\u003e#1748\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e📝 Documentation\u003c/h3\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/de60fa2e3003c60e8c4f03970b5b84c7c9c84334\"\u003e\u003ccode\u003ede60fa2\u003c/code\u003e\u003c/a\u003e release: 5.7.5\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/2b075487d7952a8662c76305b64ce677776bab34\"\u003e\u003ccode\u003e2b07548\u003c/code\u003e\u003c/a\u003e release: 5.7.5-beta.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/9e186c17a28ff1d9e02e0a22f4f6b18193ceadca\"\u003e\u003ccode\u003e9e186c1\u003c/code\u003e\u003c/a\u003e release: 5.7.5-next.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/f7b012180b71b03a69e944b39fdc88811b16839b\"\u003e\u003ccode\u003ef7b0121\u003c/code\u003e\u003c/a\u003e chore: bump dependencies and adjust website styles (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1754\"\u003e#1754\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/99736d816cdcb56dd71be0ba8440c6b12017d862\"\u003e\u003ccode\u003e99736d8\u003c/code\u003e\u003c/a\u003e release: 5.7.4\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/bcd23f09215b120a119a53eacdb12e670ee897b9\"\u003e\u003ccode\u003ebcd23f0\u003c/code\u003e\u003c/a\u003e release: 5.7.4-beta.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/52071021ab5ae079fa69fc3996ac9109a76c230a\"\u003e\u003ccode\u003e5207102\u003c/code\u003e\u003c/a\u003e release: 5.7.4-next.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/b35fba3ea0e14827433efcc6017e8eaef0ca6486\"\u003e\u003ccode\u003eb35fba3\u003c/code\u003e\u003c/a\u003e Bump dependencies: eslint, react, next, and nx packages\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/a9098f22fc1a8c7b59e3b4916d0d5ff3cb2358be\"\u003e\u003ccode\u003ea9098f2\u003c/code\u003e\u003c/a\u003e release: 5.7.3\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/677db67c648814dbc500bdd40dea84ac9efa770c\"\u003e\u003ccode\u003e677db67\u003c/code\u003e\u003c/a\u003e release: 5.7.2\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/Rel1cx/eslint-react/commits/v5.7.5/plugins/eslint-plugin\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@eslint/js` from 9.39.2 to 10.0.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/eslint/eslint/releases\"\u003e@​eslint/js's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev10.0.1\u003c/h2\u003e\n\u003ch2\u003eBug Fixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/c87d5bded54c5cf491eb04c24c9d09bbbd42c23e\"\u003e\u003ccode\u003ec87d5bd\u003c/code\u003e\u003c/a\u003e fix: update eslint (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20531\"\u003e#20531\u003c/a\u003e) (renovate[bot])\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/d84100115c14691691058f00779c94e74fca946a\"\u003e\u003ccode\u003ed841001\u003c/code\u003e\u003c/a\u003e fix: update \u003ccode\u003eminimatch\u003c/code\u003e to \u003ccode\u003e10.2.1\u003c/code\u003e to address security vulnerabilities (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20519\"\u003e#20519\u003c/a\u003e) (루밀LuMir)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/04c21475b3004904948f02049f2888b401d82c78\"\u003e\u003ccode\u003e04c2147\u003c/code\u003e\u003c/a\u003e fix: update error message for unused suppressions (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20496\"\u003e#20496\u003c/a\u003e) (fnx)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/38b089c1726feac0e31a31d47941bd99e29ce003\"\u003e\u003ccode\u003e38b089c\u003c/code\u003e\u003c/a\u003e fix: update dependency \u003ccode\u003e@​eslint/config-array\u003c/code\u003e to ^0.23.1 (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20484\"\u003e#20484\u003c/a\u003e) (renovate[bot])\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eDocumentation\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/5b3dbce50a1404a9f118afe810cefeee79388a2a\"\u003e\u003ccode\u003e5b3dbce\u003c/code\u003e\u003c/a\u003e docs: add AI acknowledgement section to templates (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20431\"\u003e#20431\u003c/a\u003e) (루밀LuMir)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/6f23076037d5879f20fb3be2ef094293b1e8d38c\"\u003e\u003ccode\u003e6f23076\u003c/code\u003e\u003c/a\u003e docs: toggle nav in no-JS mode (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20476\"\u003e#20476\u003c/a\u003e) (Tanuj Kanti)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/b69cfb32a16c5d5e9986390d484fae1d21e406f9\"\u003e\u003ccode\u003eb69cfb3\u003c/code\u003e\u003c/a\u003e docs: Update README (GitHub Actions Bot)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eChores\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/e5c281ffd038a3a7a3e5364db0b9378e0ad83020\"\u003e\u003ccode\u003ee5c281f\u003c/code\u003e\u003c/a\u003e chore: updates for v9.39.3 release (Jenkins)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/8c3832adb77cd993b4a24891900d5eeaaf093cdc\"\u003e\u003ccode\u003e8c3832a\u003c/code\u003e\u003c/a\u003e chore: update \u003ccode\u003e@​typescript-eslint/parser\u003c/code\u003e to ^8.56.0 (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20514\"\u003e#20514\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/8330d238ae6adb68bb6a1c9381e38cfedd990d94\"\u003e\u003ccode\u003e8330d23\u003c/code\u003e\u003c/a\u003e test: add tests for config-api (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20493\"\u003e#20493\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/37d6e91e88fa6a2ca6d8726679096acff21ba6cc\"\u003e\u003ccode\u003e37d6e91\u003c/code\u003e\u003c/a\u003e chore: remove eslint v10 prereleases from eslint-config-eslint deps (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20494\"\u003e#20494\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/da7cd0e79197ad16e17052eef99df141de6dbfb1\"\u003e\u003ccode\u003eda7cd0e\u003c/code\u003e\u003c/a\u003e refactor: cleanup error message templates (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20479\"\u003e#20479\u003c/a\u003e) (Francesco Trotta)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/84fb885d49ac810e79a9491276b4828b53d913e5\"\u003e\u003ccode\u003e84fb885\u003c/code\u003e\u003c/a\u003e chore: package.json update for \u003ccode\u003e@​eslint/js\u003c/code\u003e release (Jenkins)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/1f667344b57c4c09b548d94bcfac1f91b6e5c63d\"\u003e\u003ccode\u003e1f66734\u003c/code\u003e\u003c/a\u003e chore: add \u003ccode\u003eeslint\u003c/code\u003e to \u003ccode\u003epeerDependencies\u003c/code\u003e of \u003ccode\u003e@eslint/js\u003c/code\u003e (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20467\"\u003e#20467\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev10.0.0\u003c/h2\u003e\n\u003ch2\u003eBreaking Changes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/f9e54f43a5e497cdfa179338b431093245cb787b\"\u003e\u003ccode\u003ef9e54f4\u003c/code\u003e\u003c/a\u003e feat!: estimate rule-tester failure location (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20420\"\u003e#20420\u003c/a\u003e) (ST-DDT)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/a176319d8ade1a7d9b2d7fb8f038f55a2662325f\"\u003e\u003ccode\u003ea176319\u003c/code\u003e\u003c/a\u003e feat!: replace \u003ccode\u003echalk\u003c/code\u003e with \u003ccode\u003estyleText\u003c/code\u003e and add \u003ccode\u003ecolor\u003c/code\u003e to \u003ccode\u003eResultsMeta\u003c/code\u003e (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20227\"\u003e#20227\u003c/a\u003e) (루밀LuMir)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/c7046e6c1e03c4ca0eee4888a1f2eba4c6454f84\"\u003e\u003ccode\u003ec7046e6\u003c/code\u003e\u003c/a\u003e feat!: enable JSX reference tracking (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20152\"\u003e#20152\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/fa31a608901684fbcd9906d1907e66561d16e5aa\"\u003e\u003ccode\u003efa31a60\u003c/code\u003e\u003c/a\u003e feat!: add \u003ccode\u003ename\u003c/code\u003e to configs (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20015\"\u003e#20015\u003c/a\u003e) (Kirk Waiblinger)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/3383e7ec9028166cafc8ea7986c2f7498d0049f0\"\u003e\u003ccode\u003e3383e7e\u003c/code\u003e\u003c/a\u003e fix!: remove deprecated \u003ccode\u003eSourceCode\u003c/code\u003e methods (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20137\"\u003e#20137\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/501abd0e916a35554c58b7c0365537f1fa3880ce\"\u003e\u003ccode\u003e501abd0\u003c/code\u003e\u003c/a\u003e feat!: update dependency minimatch to v10 (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20246\"\u003e#20246\u003c/a\u003e) (renovate[bot])\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/ca4d3b40085de47561f89656a2207d09946ed45e\"\u003e\u003ccode\u003eca4d3b4\u003c/code\u003e\u003c/a\u003e fix!: stricter rule tester assertions for valid test cases (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20125\"\u003e#20125\u003c/a\u003e) (唯然)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/96512a66c86402fb0538cdcb6cd30b9073f6bf3b\"\u003e\u003ccode\u003e96512a6\u003c/code\u003e\u003c/a\u003e fix!: Remove deprecated rule context methods (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20086\"\u003e#20086\u003c/a\u003e) (Nicholas C. Zakas)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/c69fdacdb2e886b9d965568a397aa8220db3fe90\"\u003e\u003ccode\u003ec69fdac\u003c/code\u003e\u003c/a\u003e feat!: remove eslintrc support (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20037\"\u003e#20037\u003c/a\u003e) (Francesco Trotta)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/208b5cc34a8374ff81412b5bec2e0800eebfbd04\"\u003e\u003ccode\u003e208b5cc\u003c/code\u003e\u003c/a\u003e feat!: Use \u003ccode\u003eScopeManager#addGlobals()\u003c/code\u003e (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20132\"\u003e#20132\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/a2ee188ea7a38a0c6155f3d39e2b00e1d0f36e14\"\u003e\u003ccode\u003ea2ee188\u003c/code\u003e\u003c/a\u003e fix!: add \u003ccode\u003euniqueItems: true\u003c/code\u003e in \u003ccode\u003eno-invalid-regexp\u003c/code\u003e option (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20155\"\u003e#20155\u003c/a\u003e) (Tanuj Kanti)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/a89059dbf2832d417dd493ee81483227ec44e4ab\"\u003e\u003ccode\u003ea89059d\u003c/code\u003e\u003c/a\u003e feat!: Program range span entire source text (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20133\"\u003e#20133\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/39a6424373d915fa9de0d7b0caba9a4dc3da9b53\"\u003e\u003ccode\u003e39a6424\u003c/code\u003e\u003c/a\u003e fix!: assert 'text' is a string across all RuleFixer methods (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20082\"\u003e#20082\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/f28fbf846244e043c92b355b224d121b06140b44\"\u003e\u003ccode\u003ef28fbf8\u003c/code\u003e\u003c/a\u003e fix!: Deprecate \u003ccode\u003e\u0026quot;always\u0026quot;\u003c/code\u003e and \u003ccode\u003e\u0026quot;as-needed\u0026quot;\u003c/code\u003e options of the \u003ccode\u003eradix\u003c/code\u003e rule (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20223\"\u003e#20223\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/aa3fb2b233e929b37220be940575f42c280e0b98\"\u003e\u003ccode\u003eaa3fb2b\u003c/code\u003e\u003c/a\u003e fix!: tighten \u003ccode\u003efunc-names\u003c/code\u003e schema (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20119\"\u003e#20119\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/f6c0ed0311dcfee853367d5068c765d066e6b756\"\u003e\u003ccode\u003ef6c0ed0\u003c/code\u003e\u003c/a\u003e feat!: report \u003ccode\u003eeslint-env\u003c/code\u003e comments as errors (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20128\"\u003e#20128\u003c/a\u003e) (Francesco Trotta)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/4bf739fb533e59f7f0a66b65f7bc80be0f37d8db\"\u003e\u003ccode\u003e4bf739f\u003c/code\u003e\u003c/a\u003e fix!: remove deprecated \u003ccode\u003eLintMessage#nodeType\u003c/code\u003e and \u003ccode\u003eTestCaseError#type\u003c/code\u003e (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20096\"\u003e#20096\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/523c076866400670fb2192a3f55dbf7ad3469247\"\u003e\u003ccode\u003e523c076\u003c/code\u003e\u003c/a\u003e feat!: drop support for jiti \u0026lt; 2.2.0 (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20016\"\u003e#20016\u003c/a\u003e) (michael faith)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/454a292c95f34dad232411ddac06408e6383bb64\"\u003e\u003ccode\u003e454a292\u003c/code\u003e\u003c/a\u003e feat!: update \u003ccode\u003eeslint:recommended\u003c/code\u003e configuration (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20210\"\u003e#20210\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/4f880ee02992e1bf0e96ebaba679985e2d1295f1\"\u003e\u003ccode\u003e4f880ee\u003c/code\u003e\u003c/a\u003e feat!: remove \u003ccode\u003ev10_*\u003c/code\u003e and inactive \u003ccode\u003eunstable_*\u003c/code\u003e flags (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20225\"\u003e#20225\u003c/a\u003e) (sethamus)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/f18115c363a4ac7671a4c7f30ee13d57ebba330f\"\u003e\u003ccode\u003ef18115c\u003c/code\u003e\u003c/a\u003e feat!: \u003ccode\u003eno-shadow-restricted-names\u003c/code\u003e report \u003ccode\u003eglobalThis\u003c/code\u003e by default (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20027\"\u003e#20027\u003c/a\u003e) (sethamus)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/c6358c31fbd3937b92d89be2618ffdf5a774604e\"\u003e\u003ccode\u003ec6358c3\u003c/code\u003e\u003c/a\u003e feat!: Require Node.js \u003ccode\u003e^20.19.0 || ^22.13.0 || \u0026gt;=24\u003c/code\u003e (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20160\"\u003e#20160\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eFeatures\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/bff9091927811497dbf066b0e3b85ecb37d43822\"\u003e\u003ccode\u003ebff9091\u003c/code\u003e\u003c/a\u003e feat: handle \u003ccode\u003eArray.fromAsync\u003c/code\u003e in \u003ccode\u003earray-callback-return\u003c/code\u003e (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20457\"\u003e#20457\u003c/a\u003e) (Francesco Trotta)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/290c594bb50c439fb71bc75521ee5360daa8c222\"\u003e\u003ccode\u003e290c594\u003c/code\u003e\u003c/a\u003e feat: add \u003ccode\u003eself\u003c/code\u003e to \u003ccode\u003eno-implied-eval\u003c/code\u003e rule (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20468\"\u003e#20468\u003c/a\u003e) (sethamus)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/43677de07ebd6e14bfac40a46ad749ba783c45f2\"\u003e\u003ccode\u003e43677de\u003c/code\u003e\u003c/a\u003e feat: fix handling of function and class expression names in \u003ccode\u003eno-shadow\u003c/code\u003e (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20432\"\u003e#20432\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/84fb885d49ac810e79a9491276b4828b53d913e5\"\u003e\u003ccode\u003e84fb885\u003c/code\u003e\u003c/a\u003e chore: package.json update for \u003ccode\u003e@​eslint/js\u003c/code\u003e release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/1f667344b57c4c09b548d94bcfac1f91b6e5c63d\"\u003e\u003ccode\u003e1f66734\u003c/code\u003e\u003c/a\u003e chore: add \u003ccode\u003eeslint\u003c/code\u003e to \u003ccode\u003epeerDependencies\u003c/code\u003e of \u003ccode\u003e@eslint/js\u003c/code\u003e (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20467\"\u003e#20467\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/f3fbc2f60cbe2c718364feb8c3fc0452c0df3c56\"\u003e\u003ccode\u003ef3fbc2f\u003c/code\u003e\u003c/a\u003e chore: set \u003ccode\u003e@eslint/js\u003c/code\u003e version to 10.0.0 to skip releasing it (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20466\"\u003e#20466\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/b4b3127f8542c599ce2dea804b6582ebc40c993d\"\u003e\u003ccode\u003eb4b3127\u003c/code\u003e\u003c/a\u003e chore: package.json update for \u003ccode\u003e@​eslint/js\u003c/code\u003e release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/0b14059491d830a49b3577931f4f68fbcfce6be5\"\u003e\u003ccode\u003e0b14059\u003c/code\u003e\u003c/a\u003e chore: package.json update for \u003ccode\u003e@​eslint/js\u003c/code\u003e release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/fa31a608901684fbcd9906d1907e66561d16e5aa\"\u003e\u003ccode\u003efa31a60\u003c/code\u003e\u003c/a\u003e feat!: add \u003ccode\u003ename\u003c/code\u003e to configs (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20015\"\u003e#20015\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/1e2cad5f6fa47ed6ed89d2a29798dda926d50990\"\u003e\u003ccode\u003e1e2cad5\u003c/code\u003e\u003c/a\u003e chore: package.json update for \u003ccode\u003e@​eslint/js\u003c/code\u003e release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/454a292c95f34dad232411ddac06408e6383bb64\"\u003e\u003ccode\u003e454a292\u003c/code\u003e\u003c/a\u003e feat!: update \u003ccode\u003eeslint:recommended\u003c/code\u003e configuration (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20210\"\u003e#20210\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/c6358c31fbd3937b92d89be2618ffdf5a774604e\"\u003e\u003ccode\u003ec6358c3\u003c/code\u003e\u003c/a\u003e feat!: Require Node.js \u003ccode\u003e^20.19.0 || ^22.13.0 || \u0026gt;=24\u003c/code\u003e (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20160\"\u003e#20160\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/eslint/eslint/commits/v10.0.1/packages/js\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@typescript-eslint/eslint-plugin` from 8.56.0 to 8.59.2\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases\"\u003e@​typescript-eslint/eslint-plugin's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev8.59.2\u003c/h2\u003e\n\u003ch2\u003e8.59.2 (2026-05-04)\u003c/h2\u003e\n\u003ch3\u003e🩹 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unsafe-type-assertion] handle crash on recursive template literal types (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12150\"\u003e#12150\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-deprecated] object destructuring values should be treated as declarations (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12292\"\u003e#12292\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003erule-tester:\u003c/strong\u003e add TypeScript as a peer dependency (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12288\"\u003e#12288\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e❤️ Thank You\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eDariusz Czajkowski\u003c/li\u003e\n\u003cli\u003eDima Barabash\u003c/li\u003e\n\u003cli\u003eKirk Waiblinger \u003ca href=\"https://github.com/kirkwaiblinger\"\u003e\u003ccode\u003e@​kirkwaiblinger\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.2\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003ev8.59.1\u003c/h2\u003e\n\u003ch2\u003e8.59.1 (2026-04-27)\u003c/h2\u003e\n\u003ch3\u003e🩹 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-type-assertion] fix crash \u0026quot;TypeError: checker.getTypeArguments is not a function\u0026quot; (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12246\"\u003e#12246\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-type-assertion] preserve index signatures in undefined unions (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12257\"\u003e#12257\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-type-assertion] preserve phantom type arguments in generic inference (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12269\"\u003e#12269\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-type-assertion] avoid false positive in logical assignment assertions (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12278\"\u003e#12278\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-type-arguments] handle instantiation expressions (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12220\"\u003e#12220\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-condition] treat void as nullish in no-unnecessary-condition (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12241\"\u003e#12241\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e❤️ Thank You\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eanasm266 \u003ca href=\"https://github.com/anasm266\"\u003e\u003ccode\u003e@​anasm266\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAnshika Jain \u003ca href=\"https://github.com/Anshikakalpana\"\u003e\u003ccode\u003e@​Anshikakalpana\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUlrich Stark\u003c/li\u003e\n\u003cli\u003eyugo innami \u003ca href=\"https://github.com/nami8824\"\u003e\u003ccode\u003e@​nami8824\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.1\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003ev8.59.0\u003c/h2\u003e\n\u003ch2\u003e8.59.0 (2026-04-20)\u003c/h2\u003e\n\u003ch3\u003e🚀 Features\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-type-assertion] report more cases based on assignability (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/11789\"\u003e#11789\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e❤️ Thank You\u003c/h3\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/CHANGELOG.md\"\u003e@​typescript-eslint/eslint-plugin's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e8.59.2 (2026-05-04)\u003c/h2\u003e\n\u003ch3\u003e🩹 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-deprecated] object destructuring values should be treated as declarations (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12292\"\u003e#12292\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unsafe-type-assertion] handle crash on recursive template literal types (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12150\"\u003e#12150\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e❤️ Thank You\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eDima Barabash\u003c/li\u003e\n\u003cli\u003eKirk Waiblinger \u003ca href=\"https://github.com/kirkwaiblinger\"\u003e\u003ccode\u003e@​kirkwaiblinger\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.2\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003e8.59.1 (2026-04-27)\u003c/h2\u003e\n\u003ch3\u003e🩹 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-condition] treat void as nullish in no-unnecessary-condition (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12241\"\u003e#12241\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-type-arguments] handle instantiation expressions (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12220\"\u003e#12220\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-type-assertion] avoid false positive in logical assignment assertions (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12278\"\u003e#12278\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-type-assertion] preserve phantom type arguments in generic inference (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12269\"\u003e#12269\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-type-assertion] preserve index signatures in undefined unions (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12257\"\u003e#12257\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-type-assertion] fix crash \u0026quot;TypeError: checker.getTypeArguments is not a function\u0026quot; (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12246\"\u003e#12246\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e❤️ Thank You\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eanasm266 \u003ca href=\"https://github.com/anasm266\"\u003e\u003ccode\u003e@​anasm266\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAnshika Jain \u003ca href=\"https://github.com/Anshikakalpana\"\u003e\u003ccode\u003e@​Anshikakalpana\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUlrich Stark\u003c/li\u003e\n\u003cli\u003eyugo innami \u003ca href=\"https://github.com/nami8824\"\u003e\u003ccode\u003e@​nami8824\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.1\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003e8.59.0 (2026-04-20)\u003c/h2\u003e\n\u003ch3\u003e🚀 Features\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-type-assertion] report more cases based on assignability (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/11789\"\u003e#11789\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e❤️ Thank You\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUlrich Stark\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.0\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/2ec35f1760aade4df4c631d76d78c7ed5e136333\"\u003e\u003ccode\u003e2ec35f1\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.59.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/ec3ef25390f7daf5a9ff33a60282bdbbb49ab0f3\"\u003e\u003ccode\u003eec3ef25\u003c/code\u003e\u003c/a\u003e test: make no-useless-empty-export tests fully static (\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin/issues/12260\"\u003e#12260\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/60d0a513870d833617374ff8ea256d86ca3cbbbb\"\u003e\u003ccode\u003e60d0a51\u003c/code\u003e\u003c/a\u003e chore(eslint-plugin): switch auto-generated test cases to hand-written in no-...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/5c53da230a70aba7d6f3d6474b5d249b430a95d0\"\u003e\u003ccode\u003e5c53da2\u003c/code\u003e\u003c/a\u003e fix(eslint-plugin): [no-deprecated] object destructuring values should be tre...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/80c28a1ada3f975a932a02587cefee632ccf6550\"\u003e\u003ccode\u003e80c28a1\u003c/code\u003e\u003c/a\u003e fix(eslint-plugin): [no-unsafe-type-assertion] handle crash on recursive temp...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/b7b2670123f76419630f88f3a807f85b7c535230\"\u003e\u003ccode\u003eb7b2670\u003c/code\u003e\u003c/a\u003e test: make no-this-alias tests fully static (\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin/issues/12258\"\u003e#12258\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/52457932e5507b5ca01e720a541f3f8d01e09b9d\"\u003e\u003ccode\u003e5245793\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.59.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/3cef12471659c42c9d4b179f4113a080b1fa2d66\"\u003e\u003ccode\u003e3cef124\u003c/code\u003e\u003c/a\u003e chore(eslint-plugin): switch auto-generated test cases to hand-written in dot...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/27c507b6e532abcd1efa51055f045b00f22055c3\"\u003e\u003ccode\u003e27c507b\u003c/code\u003e\u003c/a\u003e test: make sort-type-constituents tests fully static (\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin/issues/12262\"\u003e#12262\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/a03b31d422be35d8ddc979f48f9317e3f33dd1ce\"\u003e\u003ccode\u003ea03b31d\u003c/code\u003e\u003c/a\u003e chore(eslint-plugin): switch auto-generated test cases to hand-written in no-...\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commits/v8.59.2/packages/eslint-plugin\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@typescript-eslint/parser` from 8.56.0 to 8.59.2\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases\"\u003e@​typescript-eslint/parser's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev8.59.2\u003c/h2\u003e\n\u003ch2\u003e8.59.2 (2026-05-04)\u003c/h2\u003e\n\u003ch3\u003e🩹 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unsafe-type-assertion] handle crash on recursive template literal types (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12150\"\u003e#12150\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-deprecated] object destructuring values should be treated as declarations (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12292\"\u003e#12292\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003erule-tester:\u003c/strong\u003e add TypeScript as a peer dependency (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12288\"\u003e#12288\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e❤️ Thank You\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eDariusz Czajkowski\u003c/li\u003e\n\u003cli\u003eDima Barabash\u003c/li\u003e\n\u003cli\u003eKirk Waiblinger \u003ca href=\"https://github.com/kirkwaiblinger\"\u003e\u003ccode\u003e@​kirkwaiblinger\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.2\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003ev8.59.1\u003c/h2\u003e\n\u003ch2\u003e8.59.1 (2026-04-27)\u003c/h2\u003e\n\u003ch3\u003e🩹 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-type-assertion] fix crash \u0026quot;TypeError: checker.getTypeArguments is not a function\u0026quot; (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12246\"\u003e#12246\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-type-assertion] preserve index signatures in undefined unions (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12257\"\u003e#12257\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-type-assertion] preserve phantom type arguments in generic inference (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12269\"\u003e#12269\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-type-assertion] avoid false positive in logical assignment assertions (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12278\"\u003e#12278\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-type-arguments] handle instantiation expressions (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12220\"\u003e#12220\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-condition] treat void as nullish in no-unnecessary-condition (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12241\"\u003e#12241\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e❤️ Thank You\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eanasm266 \u003ca href=\"https://github.com/anasm266\"\u003e\u003ccode\u003e@​anasm266\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAnshika Jain \u003ca href=\"https://github.com/Anshikakalpana\"\u003e\u003ccode\u003e@​Anshikakalpana\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUlrich Stark\u003c/li\u003e\n\u003cli\u003eyugo innami \u003ca href=\"https://github.com/nami8824\"\u003e\u003ccode\u003e@​nami8824\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.1\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003ev8.59.0\u003c/h2\u003e\n\u003ch2\u003e8.59.0 (2026-04-20)\u003c/h2\u003e\n\u003ch3\u003e🚀 Features\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-type-assertion] report more cases based on assignability (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/11789\"\u003e#11789\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e❤️ Thank You\u003c/h3\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/parser/CHANGELOG.md\"\u003e@​typescript-eslint/parser's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e8.59.2 (2026-05-04)\u003c/h2\u003e\n\u003cp\u003eThis was a version bump only for parser to align it with other projects, there were no code changes.\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.2\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003e8.59.1 (2026-04-27)\u003c/h2\u003e\n\u003cp\u003eThis was a version bump only for parser to align it with other projects, there were no code changes.\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.1\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003e8.59.0 (2026-04-20)\u003c/h2\u003e\n\u003cp\u003eThis was a version bump only for parser to align it with other projects, there were no code changes.\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.0\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003e8.58.2 (2026-04-13)\u003c/h2\u003e\n\u003ch3\u003e🩹 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eremove tsbuildinfo cache file from published packages (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12187\"\u003e#12187\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e❤️ Thank You\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAbhijeet Singh \u003ca href=\"https://github.com/cseas\"\u003e\u003ccode\u003e@​cseas\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.58.2\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003e8.58.1 (2026-04-08)\u003c/h2\u003e\n\u003cp\u003eThis was a version bump only for parser to align it with other projects, there were no code changes.\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.58.1\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003e8.58.0 (2026-03-30)\u003c/h2\u003e\n\u003ch3\u003e🚀 Features\u003c/h3\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/2ec35f1760aade4df4c631d76d78c7ed5e136333\"\u003e\u003ccode\u003e2ec35f1\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.59.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/52457932e5507b5ca01e720a541f3f8d01e09b9d\"\u003e\u003ccode\u003e5245793\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.59.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/ea9ae4f8817873480e3501145059f63e39e8d8a1\"\u003e\u003ccode\u003eea9ae4f\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.59.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/90c2803a4c250e0343598d41e973f95e743bf4ce\"\u003e\u003ccode\u003e90c2803\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.58.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/be6b49a02d68db9bdc8985e7e9e1598700fda2fa\"\u003e\u003ccode\u003ebe6b49a\u003c/code\u003e\u003c/a\u003e fix: remove tsbuildinfo cache file from published packages (\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/parser/issues/12187\"\u003e#12187\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/5311ed312eadf4e238324f2726ae0b1f3f2206e6\"\u003e\u003ccode\u003e5311ed3\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.58.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/493341709fe7d1d6433332b7bd2724e3332c7cdf\"\u003e\u003ccode\u003e4933417\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.58.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/8cde2d06fb9bc591a4c93452509ddbd600c76a35\"\u003e\u003ccode\u003e8cde2d0\u003c/code\u003e\u003c/a\u003e feat: support TypeScript 6 (\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/parser/issues/12124\"\u003e#12124\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/be4d54d26e695cc93605ffcca67dd75848e95c6f\"\u003e\u003ccode\u003ebe4d54d\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.57.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/c7c38aa252d7bf6708a225aebedc57686ac33dcd\"\u003e\u003ccode\u003ec7c38aa\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.57.1\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commits/v8.59.2/packages/parser\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `eslint` from 9.39.2 to 10.3.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/eslint/eslint/releases\"\u003eeslint's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev10.3.0\u003c/h2\u003e\n\u003ch2\u003eFeatures\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/379571a975f2b24d88037b9de2e72ec61d004130\"\u003e\u003ccode\u003e379571a\u003c/code\u003e\u003c/a\u003e feat: add suggestions for no-unused-private-class-members (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20773\"\u003e#20773\u003c/a\u003e) (sethamus)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eBug Fixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/b6ae5cf07b9b51802367539cb24b245b61eaa37c\"\u003e\u003ccode\u003eb6ae5cf\u003c/code\u003e\u003c/a\u003e fix: handle unavailable require cache (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20812\"\u003e#20812\u003c/a\u003e) (Simon Podlipsky)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/6fb3685bcbe9a6f72fd7dfb9129686b6fb96b0bd\"\u003e\u003ccode\u003e6fb3685\u003c/code\u003e\u003c/a\u003e fix: rule suggestions cause continuation in class body (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20787\"\u003e#20787\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eDocumentation\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/32cc7ab4ec653ce89da92deb5c40a9f4fc707fe5\"\u003e\u003ccode\u003e32cc7ab\u003c/code\u003e\u003c/a\u003e docs: fix typos in docs and comments (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20809\"\u003e#20809\u003c/a\u003e) (Tanuj Kanti)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/7f479376a2fa463d823ab762db6bb37ce8d2ee8f\"\u003e\u003ccode\u003e7f47937\u003c/code\u003e\u003c/a\u003e docs: Update README (GitHub Actions Bot)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eChores\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/d32235ec19ceea211fa86452afa383ca05f5c2f9\"\u003e\u003ccode\u003ed32235e\u003c/code\u003e\u003c/a\u003e ci: use pnpm in \u003ccode\u003eeslint-flat-config-utils\u003c/code\u003e type integration test (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20826\"\u003e#20826\u003c/a\u003e) (Francesco Trotta)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/3ffb14ea517de750ed1181579ef844af342e4096\"\u003e\u003ccode\u003e3ffb14e\u003c/code\u003e\u003c/a\u003e chore: clean up typos in comments and JSDoc (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20821\"\u003e#20821\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/22eb58a21cbde2fbd53a1fae99453d408672de50\"\u003e\u003ccode\u003e22eb58a\u003c/code\u003e\u003c/a\u003e chore: add missing continue-on-error to ecosystem-tests.yml (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20818\"\u003e#20818\u003c/a\u003e) (Josh Goldberg ✨)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/88bf0024cb36caebf2880516d9a1f81aa75dafe2\"\u003e\u003ccode\u003e88bf002\u003c/code\u003e\u003c/a\u003e ci: bump pnpm/action-setup from 6.0.1 to 6.0.3 (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20815\"\u003e#20815\u003c/a\u003e) (dependabot[bot])\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/97c8c330beae9557ad24e19f94eebc8d08d1a722\"\u003e\u003ccode\u003e97c8c33\u003c/code\u003e\u003c/a\u003e chore: update ilshidur/action-discord action to v0.4.0 (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20811\"\u003e#20811\u003c/a\u003e) (renovate[bot])\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/2f58136dd47364a4cae7054a64f7bf1e79693813\"\u003e\u003ccode\u003e2f58136\u003c/code\u003e\u003c/a\u003e chore: pin peter-evans/create-pull-request action to 5f6978f (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20810\"\u003e#20810\u003c/a\u003e) (renovate[bot])\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/77add7f1bc91ed17bba3be3289928a9146c5f5a1\"\u003e\u003ccode\u003e77add7f\u003c/code\u003e\u003c/a\u003e chore: add initial ecosystem plugin tests workflow (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/19643\"\u003e#19643\u003c/a\u003e) (Josh Goldberg ✨)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/4023b55490fae55e464fe35530ef038cdf5d79a5\"\u003e\u003ccode\u003e4023b55\u003c/code\u003e\u003c/a\u003e test: Add unit tests for SuppressionsService.prune() (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20797\"\u003e#20797\u003c/a\u003e) (kuldeep kumar)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/54080dad4f77bb39a1a843933d4ff3a2b7c175e2\"\u003e\u003ccode\u003e54080da\u003c/code\u003e\u003c/a\u003e test: add unit tests for ForkContext (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20778\"\u003e#20778\u003c/a\u003e) (kuldeep kumar)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/f0e2bcc4bf19253aaebfbd7df87824b0ca4a151f\"\u003e\u003ccode\u003ef0e2bcc\u003c/code\u003e\u003c/a\u003e test: add unit tests for SuppressionsService.suppress() method (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20765\"\u003e#20765\u003c/a\u003e) (kuldeep kumar)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/a7f0b94743a99bcdf8d07cff15ffbfa6a6c5f927\"\u003e\u003ccode\u003ea7f0b94\u003c/code\u003e\u003c/a\u003e chore: update dependency prettier to v3.8.3 (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20782\"\u003e#20782\u003c/a\u003e) (renovate[bot])\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/7bf93d9e79f6dbf77242cbb9a9b8be834730fccd\"\u003e\u003ccode\u003e7bf93d9\u003c/code\u003e\u003c/a\u003e chore: update TypeScript to v6 (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20677\"\u003e#20677\u003c/a\u003e) (sethamus)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/b42dd72e76e7f90e7f0be9458288d93353052adc\"\u003e\u003ccode\u003eb42dd72\u003c/code\u003e\u003c/a\u003e ci: bump pnpm/action-setup from 6.0.0 to 6.0.1 (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20781\"\u003e#20781\u003c/a\u003e) (dependabot[bot])\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/2b252be80f362cca7be3326a6dbe958680fdfe9a\"\u003e\u003ccode\u003e2b252be\u003c/code\u003e\u003c/a\u003e test: add unit tests for IdGenerator (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20775\"\u003e#20775\u003c/a\u003e) (kuldeep kumar)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev10.2.1\u003c/h2\u003e\n\u003ch2\u003eBug Fixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/14be92b6d1fa0923b8923830f2208e5e2705b002\"\u003e\u003ccode\u003e14be92b\u003c/code\u003e\u003c/a\u003e fix: model generator yield resumption paths in code path analysis (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20665\"\u003e#20665\u003c/a\u003e) (sethamus)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/84a19d2c32255db6b9cfc08644a607aae6d5cb62\"\u003e\u003ccode\u003e84a19d2\u003c/code\u003e\u003c/a\u003e fix: no-async-promise-executor false positives for shadowed Promise (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20740\"\u003e#20740\u003c/a\u003e) (xbinaryx)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/af764af0ec38225755fbf8a6f207f0c77b595a8d\"\u003e\u003ccode\u003eaf764af\u003c/code\u003e\u003c/a\u003e fix: clarify language and processor validation errors (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20729\"\u003e#20729\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/e251b89a38280973e468a4a9386c138f4f55d10d\"\u003e\u003ccode\u003ee251b89\u003c/code\u003e\u003c/a\u003e fix: update eslint (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20715\"\u003e#20715\u003c/a\u003e) (renovate[bot])\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eDocumentation\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/ca92ca0fb4599e8de1e2fb914e695fe7397cbe63\"\u003e\u003ccode\u003eca92ca0\u003c/code\u003e\u003c/a\u003e docs: reuse markdown-it instance for markdown filter (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20768\"\u003e#20768\u003c/a\u003e) (Amaresh  S M)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/57d2ee213305cee0cb55ef08e0480b57396269a9\"\u003e\u003ccode\u003e57d2ee2\u003c/code\u003e\u003c/a\u003e docs:  Enable Eleventy incremental mode for watch (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20767\"\u003e#20767\u003c/a\u003e) (Amaresh  S M)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/c1621b915742276e5f4b25efe790ca62296330dc\"\u003e\u003ccode\u003ec1621b9\u003c/code\u003e\u003c/a\u003e docs: fix typos in code-path-analyzer.js (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20700\"\u003e#20700\u003c/a\u003e) (Ayush Shukla)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/1418d522d10bde1960f4942afb548bc7160ec49e\"\u003e\u003ccode\u003e1418d52\u003c/code\u003e\u003c/a\u003e docs: Update README (GitHub Actions Bot)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/39771e6e600f0b0617fdeafff6dd07e4211ffde6\"\u003e\u003ccode\u003e39771e6\u003c/code\u003e\u003c/a\u003e docs: Update README (GitHub Actions Bot)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/71e04693def2df57268f08f3072a2749df6bf438\"\u003e\u003ccode\u003e71e0469\u003c/code\u003e\u003c/a\u003e docs: fix incomplete JSDoc param description in no-shadow rule (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20728\"\u003e#20728\u003c/a\u003e) (kuldeep kumar)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/22119ceb93e28f62262fc1d98ff1b1442d6e2dbf\"\u003e\u003ccode\u003e22119ce\u003c/code\u003e\u003c/a\u003e docs: clarify scope of for-direction rule with dead code examples (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20723\"\u003e#20723\u003c/a\u003e) (Amaresh  S M)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/8f3fb77f122a5641d1833cad5d93f3f54fa3be0b\"\u003e\u003ccode\u003e8f3fb77\u003c/code\u003e\u003c/a\u003e docs: document \u003ccode\u003emeta.docs.dialects\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20718\"\u003e#20718\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eChores\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/7ddfea9c4f62add1588c5c0b0da568c299246383\"\u003e\u003ccode\u003e7ddfea9\u003c/code\u003e\u003c/a\u003e chore: update dependency prettier to v3.8.2 (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20770\"\u003e#20770\u003c/a\u003e) (renovate[bot])\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/fac40e1de2ba7646cc7cd2d3f93fbdd1f8819001\"\u003e\u003ccode\u003efac40e1\u003c/code\u003e\u003c/a\u003e ci: bump pnpm/action-setup from 5.0.0 to 6.0.0 (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20763\"\u003e#20763\u003c/a\u003e) (dependabot[bot])\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/7246f923332522d8b3d46b6ee646fce88535f3fb\"\u003e\u003ccode\u003e7246f92\u003c/code\u003e\u003c/a\u003e test: add tests for SuppressionsService.load() error handling (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20734\"\u003e#20734\u003c/a\u003e) (kuldeep kumar)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/4f34b1e592b0f63d766d9903998e8e36eb49d3aa\"\u003e\u003ccode\u003e4f34b1e\u003c/code\u003e\u003c/a\u003e chore: update pnpm/action-setup action to v5 (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20762\"\u003e#20762\u003c/a\u003e) (renovate[bot])\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/78892043a36da4aa7640b59c99344b00c181048a\"\u003e\u003ccode\u003e7889204\u003c/code\u003e\u003c/a\u003e 10.3.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/5b69b4fce4dc407c8e960eba638b5a3409c4f1fd\"\u003e\u003ccode\u003e5b69b4f\u003c/code\u003e\u003c/a\u003e Build: changelog update for 10.3.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/d32235ec19ceea211fa86452afa383ca05f5c2f9\"\u003e\u003ccode\u003ed32235e\u003c/code\u003e\u003c/a\u003e ci: use pnpm in \u003ccode\u003eeslint-flat-config-utils\u003c/code\u003e type integration test (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20826\"\u003e#20826\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/b6ae5cf07b9b51802367539cb24b245b61eaa37c\"\u003e\u003ccode\u003eb6ae5cf\u003c/code\u003e\u003c/a\u003e fix: handle unavailable require cache (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20812\"\u003e#20812\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/3ffb14ea517de750ed1181579ef844af342e4096\"\u003e\u003ccode\u003e3ffb14e\u003c/code\u003e\u003c/a\u003e chore: clean up typos in comments and JSDoc (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20821\"\u003e#20821\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/6fb3685bcbe9a6f72fd7dfb9129686b6fb96b0bd\"\u003e\u003ccode\u003e6fb3685\u003c/code\u003e\u003c/a\u003e fix: rule suggestions cause continuation in class body (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20787\"\u003e#20787\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/22eb58a21cbde2fbd53a1fae99453d408672de50\"\u003e\u003ccode\u003e22eb58a\u003c/code\u003e\u003c/a\u003e chore: add missing continue-on-error to ecosystem-tests.yml (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20818\"\u003e#20818\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/88bf0024cb36caebf2880516d9a1f81aa75dafe2\"\u003e\u003ccode\u003e88bf002\u003c/code\u003e\u003c/a\u003e ci: bump pnpm/action-setup from 6.0.1 to 6.0.3 (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20815\"\u003e#20815\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/379571a975f2b24d88037b9de2e72ec61d004130\"\u003e\u003ccode\u003e379571a\u003c/code\u003e\u003c/a\u003e feat: add suggestions for no-unused-private-class-members (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20773\"\u003e#20773\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/97c8c330beae9557ad24e19f94eebc8d08d1a722\"\u003e\u003ccode\u003e97c8c33\u003c/code\u003e\u003c/a\u003e chore: update ilshidur/action-discord action to v0.4.0 (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20811\"\u003e#20811\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/eslint/eslint/compare/v9.39.2...v10.3.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `eslint-plugin-react-hooks` from 7.0.1 to 7.1.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/facebook/react/releases\"\u003eeslint-plugin-react-hooks's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eeslint-plugin-react-hooks@7.1.1 (April 17, 2026)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eNote:\u003c/strong\u003e 7.1.0 accidentally removed the \u003ccode\u003ecomponent-hook-factories\u003c/code\u003e rule, causing errors for users who referenced it in their ESLint config. This is now fixed.\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdd deprecated no-op \u003ccode\u003ecomponent-hook-factories\u003c/code\u003e rule for backwards compatibility. (\u003ca href=\"https://github.com/mofeiZ\"\u003e\u003ccode\u003e@​mofeiZ\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/36307\"\u003e#36307\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eeslint-plugin-react-hooks@7.1.0 (April 16, 2026)\u003c/h2\u003e\n\u003cp\u003eThis release adds ESLint v10 support, improves performance by skipping compilation for non-React files, and includes compiler lint improvements including better \u003ccode\u003eset-state-in-effect\u003c/code\u003e detection, improved ref validation, and more helpful error reporting.\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdd ESLint v10 support. (\u003ca href=\"https://github.com/azat-io\"\u003e\u003ccode\u003e@​azat-io\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/35720\"\u003e#35720\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSkip compilation for non-React files to improve performance. (\u003ca href=\"https://github.com/josephsavona\"\u003e\u003ccode\u003e@​josephsavona\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/35589\"\u003e#35589\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix exhaustive deps bug with Flow type casting. (\u003ca href=\"https://github.com/jorge-cab\"\u003e\u003ccode\u003e@​jorge-cab\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/35691\"\u003e#35691\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix \u003ccode\u003euseEffectEvent\u003c/code\u003e checks in component syntax. (\u003ca href=\"https://github.com/jbrown215\"\u003e\u003ccode\u003e@​jbrown215\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/35041\"\u003e#35041\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eImproved \u003ccode\u003eset-state-in-effect\u003c/code\u003e validation with fewer false negatives. (\u003ca href=\"https://github.com/jorge-cab\"\u003e\u003ccode\u003e@​jorge-cab\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/35134\"\u003e#35134\u003c/a\u003e, \u003ca href=\"https://github.com/josephsavona\"\u003e\u003ccode\u003e@​josephsavona\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/35147\"\u003e#35147\u003c/a\u003e, \u003ca href=\"https://github.com/jackpope\"\u003e\u003ccode\u003e@​jackpope\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/35214\"\u003e#35214\u003c/a\u003e, \u003ca href=\"https://github.com/chesnokov-tony\"\u003e\u003ccode\u003e@​chesnokov-tony\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/35419\"\u003e#35419\u003c/a\u003e, \u003ca href=\"https://github.com/jsleitor\"\u003e\u003ccode\u003e@​jsleitor\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/36107\"\u003e#36107\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eImproved ref validation for non-mutating functions and event handler props. (\u003ca href=\"https://github.com/josephsavona\"\u003e\u003ccode\u003e@​josephsavona\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/35893\"\u003e#35893\u003c/a\u003e, \u003ca href=\"https://github.com/kolvian\"\u003e\u003ccode\u003e@​kolvian\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/35062\"\u003e#35062\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCompiler now reports all errors instead of stopping at the first. (\u003ca href=\"https://github.com/josephsavona\"\u003e\u003ccode\u003e@​josephsavona\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/35873\"\u003e#35873\u003c/a\u003e–\u003ca href=\"https://redirect.github.com/facebook/react/pull/35884\"\u003e#35884\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eImproved source locations and error display in compiler diagnostics. (\u003ca href=\"https://github.com/nathanmarks\"\u003e\u003ccode\u003e@​nathanmarks\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/35348\"\u003e#35348\u003c/a\u003e, \u003ca href=\"https://github.com/josephsavona\"\u003e\u003ccode\u003e@​josephsavona\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/34963\"\u003e#34963\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/facebook/react/blob/main/packages/eslint-plugin-react-hooks/CHANGELOG.md\"\u003eeslint-plugin-react-hooks's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e7.1.1\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eNote:\u003c/strong\u003e 7.1.0 accidentally removed the \u003ccode\u003ecomponent-hook-factories\u003c/code\u003e rule, causing errors for users who referenced it in their ESLint config. This is now fixed.\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdd deprecated no-op \u003ccode\u003ecomponent-hook-factories\u003c/code\u003e rule for backwards compatibility. (\u003ca href=\"https://github.com/mofeiZ\"\u003e\u003ccode\u003e@​mofeiZ\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/36307\"\u003e#36307\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e7.1.0\u003c/h2\u003e\n\u003cp\u003eThis release adds ESLint v10 support, improves performance by skipping compilation for non-React...\n\n_Description has been truncated_","html_url":"https://github.com/husseyg9285/hussy-app/pull/9","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/husseyg9285%2Fhussy-app/issues/9","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/9/packages"},{"uuid":"4418154402","node_id":"PR_kwDORy1EH87aHH9v","number":5,"state":"open","title":"deps(deps): bump the all-dependencies group across 1 directory with 54 updates","user":"dependabot[bot]","labels":[],"assignees":[],"locked":false,"comments_count":1,"pull_request":true,"closed_at":null,"author_association":null,"state_reason":null,"created_at":"2026-05-11T04:52:06.000Z","updated_at":"2026-05-11T04:52:06.000Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"deps(deps): bump","group_name":"all-dependencies","update_count":54,"packages":[{"name":"@biomejs/biome","old_version":"2.4.9","new_version":"2.4.15","repository_url":"https://github.com/biomejs/biome"},{"name":"graphql","old_version":"16.12.0","new_version":"16.14.0","repository_url":"https://github.com/graphql/graphql-js"},{"name":"happy-dom","old_version":"20.6.2","new_version":"20.9.0","repository_url":"https://github.com/capricorn86/happy-dom"},{"name":"jiti","old_version":"2.6.1","new_version":"2.7.0","repository_url":"https://github.com/unjs/jiti"},{"name":"lint-staged","old_version":"16.2.7","new_version":"17.0.4","repository_url":"https://github.com/lint-staged/lint-staged"},{"name":"mermaid","old_version":"11.12.3","new_version":"11.14.0","repository_url":"https://github.com/mermaid-js/mermaid"},{"name":"react","old_version":"19.2.4","new_version":"19.2.6","repository_url":"https://github.com/facebook/react"},{"name":"typescript","old_version":"5.9.3","new_version":"6.0.3","repository_url":"https://github.com/microsoft/TypeScript"},{"name":"typescript-language-server","old_version":"5.1.3","new_version":"5.2.0","repository_url":"https://github.com/typescript-language-server/typescript-language-server"},{"name":"vite","old_version":"7.3.1","new_version":"8.0.11","repository_url":"https://github.com/vitejs/vite"},{"name":"vitepress","old_version":"2.0.0-alpha.16","new_version":"2.0.0-alpha.17","repository_url":"https://github.com/vuejs/vitepress"},{"name":"vitepress-plugin-llms","old_version":"1.11.0","new_version":"1.12.2","repository_url":"https://github.com/okineadev/vitepress-plugin-llms"},{"name":"vitest","old_version":"4.0.18","new_version":"4.1.5","repository_url":"https://github.com/vitest-dev/vitest"},{"name":"wrangler","old_version":"4.66.0","new_version":"4.90.0","repository_url":"https://github.com/cloudflare/workers-sdk"},{"name":"@ai-sdk/openai","old_version":"3.0.29","new_version":"3.0.63","repository_url":"https://github.com/vercel/ai"},{"name":"@better-auth/passkey","old_version":"1.4.18","new_version":"1.6.10","repository_url":"https://github.com/better-auth/better-auth"},{"name":"@better-auth/stripe","old_version":"1.4.18","new_version":"1.6.10","repository_url":"https://github.com/better-auth/better-auth"},{"name":"@trpc/server","old_version":"11.10.0","new_version":"11.17.0","repository_url":"https://github.com/trpc/trpc"},{"name":"ai","old_version":"6.0.91","new_version":"6.0.177","repository_url":"https://github.com/vercel/ai"},{"name":"better-auth","old_version":"1.4.18","new_version":"1.6.10","repository_url":"https://github.com/better-auth/better-auth"},{"name":"drizzle-orm","old_version":"0.45.1","new_version":"0.45.2","repository_url":"https://github.com/drizzle-team/drizzle-orm"},{"name":"stripe","old_version":"20.3.1","new_version":"22.1.1","repository_url":"https://github.com/stripe/stripe-node"},{"name":"@cloudflare/workers-types","old_version":"4.20260218.0","new_version":"4.20260511.1","repository_url":"https://github.com/cloudflare/workerd"},{"name":"@types/bun","old_version":"1.3.9","new_version":"1.3.13","repository_url":"https://github.com/DefinitelyTyped/DefinitelyTyped"},{"name":"hono","old_version":"4.11.10","new_version":"4.12.18","repository_url":"https://github.com/honojs/hono"},{"name":"zod","old_version":"4.3.6","new_version":"4.4.3","repository_url":"https://github.com/colinhacks/zod"},{"name":"@tanstack/react-query","old_version":"5.90.21","new_version":"5.100.9","repository_url":"https://github.com/TanStack/query"},{"name":"@tanstack/react-router","old_version":"1.161.1","new_version":"1.169.2","repository_url":"https://github.com/TanStack/router"},{"name":"@trpc/client","old_version":"11.10.0","new_version":"11.17.0","repository_url":"https://github.com/trpc/trpc"},{"name":"@trpc/tanstack-react-query","old_version":"11.10.0","new_version":"11.17.0","repository_url":"https://github.com/trpc/trpc"},{"name":"jotai","old_version":"2.17.1","new_version":"2.20.0","repository_url":"https://github.com/pmndrs/jotai"},{"name":"lucide-react","old_version":"0.574.0","new_version":"1.14.0","repository_url":"https://github.com/lucide-icons/lucide"},{"name":"react-dom","old_version":"19.2.4","new_version":"19.2.6","repository_url":"https://github.com/facebook/react"},{"name":"tailwind-merge","old_version":"3.4.1","new_version":"3.6.0","repository_url":"https://github.com/dcastil/tailwind-merge"},{"name":"@tailwindcss/postcss","old_version":"4.2.0","new_version":"4.3.0","repository_url":"https://github.com/tailwindlabs/tailwindcss"},{"name":"@tanstack/react-query-devtools","old_version":"5.91.3","new_version":"5.100.9","repository_url":"https://github.com/TanStack/query"},{"name":"@tanstack/react-router-devtools","old_version":"1.161.1","new_version":"1.166.13","repository_url":"https://github.com/TanStack/router"},{"name":"@tanstack/router-plugin","old_version":"1.161.1","new_version":"1.167.35","repository_url":"https://github.com/TanStack/router"},{"name":"@types/node","old_version":"25.2.3","new_version":"25.6.2","repository_url":"https://github.com/DefinitelyTyped/DefinitelyTyped"},{"name":"@vitejs/plugin-react","old_version":"5.1.4","new_version":"6.0.1","repository_url":"https://github.com/vitejs/vite-plugin-react"},{"name":"@vitejs/plugin-react-swc","old_version":"4.2.3","new_version":"4.3.0","repository_url":"https://github.com/vitejs/vite-plugin-react"},{"name":"autoprefixer","old_version":"10.4.24","new_version":"10.5.0","repository_url":"https://github.com/postcss/autoprefixer"},{"name":"globby","old_version":"16.1.1","new_version":"16.2.0","repository_url":"https://github.com/sindresorhus/globby"},{"name":"@react-email/components","old_version":"1.0.8","new_version":"1.0.12","repository_url":"https://github.com/resend/react-email"},{"name":"@react-email/render","old_version":"2.0.4","new_version":"2.0.8","repository_url":"https://github.com/resend/react-email"},{"name":"@react-email/preview-server","old_version":"5.2.8","new_version":"5.2.10","repository_url":"https://github.com/resend/react-email"},{"name":"react-email","old_version":"5.2.8","new_version":"6.1.1","repository_url":"https://github.com/resend/react-email"},{"name":"@astrojs/react","old_version":"4.4.2","new_version":"5.0.4","repository_url":"https://github.com/withastro/astro"},{"name":"astro","old_version":"5.17.2","new_version":"6.3.1","repository_url":"https://github.com/withastro/astro"},{"name":"drizzle-kit","old_version":"0.31.9","new_version":"0.31.10","repository_url":"https://github.com/drizzle-team/drizzle-orm"},{"name":"@modelcontextprotocol/sdk","old_version":"1.26.0","new_version":"1.29.0","repository_url":"https://github.com/modelcontextprotocol/typescript-sdk"},{"name":"got","old_version":"14.6.6","new_version":"15.0.5","repository_url":"https://github.com/sindresorhus/got"}],"path":null,"ecosystem":"npm"},"body":"Bumps the all-dependencies group with 52 updates in the / directory:\n\n| Package | From | To |\n| --- | --- | --- |\n| [@biomejs/biome](https://github.com/biomejs/biome/tree/HEAD/packages/@biomejs/biome) | `2.4.9` | `2.4.15` |\n| [graphql](https://github.com/graphql/graphql-js) | `16.12.0` | `16.14.0` |\n| [happy-dom](https://github.com/capricorn86/happy-dom) | `20.6.2` | `20.9.0` |\n| [jiti](https://github.com/unjs/jiti) | `2.6.1` | `2.7.0` |\n| [lint-staged](https://github.com/lint-staged/lint-staged) | `16.2.7` | `17.0.4` |\n| [mermaid](https://github.com/mermaid-js/mermaid) | `11.12.3` | `11.14.0` |\n| [react](https://github.com/facebook/react/tree/HEAD/packages/react) | `19.2.4` | `19.2.6` |\n| [typescript](https://github.com/microsoft/TypeScript) | `5.9.3` | `6.0.3` |\n| [typescript-language-server](https://github.com/typescript-language-server/typescript-language-server) | `5.1.3` | `5.2.0` |\n| [vite](https://github.com/vitejs/vite/tree/HEAD/packages/vite) | `7.3.1` | `8.0.11` |\n| [vitepress](https://github.com/vuejs/vitepress) | `2.0.0-alpha.16` | `2.0.0-alpha.17` |\n| [vitepress-plugin-llms](https://github.com/okineadev/vitepress-plugin-llms) | `1.11.0` | `1.12.2` |\n| [vitest](https://github.com/vitest-dev/vitest/tree/HEAD/packages/vitest) | `4.0.18` | `4.1.5` |\n| [wrangler](https://github.com/cloudflare/workers-sdk/tree/HEAD/packages/wrangler) | `4.66.0` | `4.90.0` |\n| [@ai-sdk/openai](https://github.com/vercel/ai/tree/HEAD/packages/openai) | `3.0.29` | `3.0.63` |\n| [@better-auth/passkey](https://github.com/better-auth/better-auth/tree/HEAD/packages/passkey) | `1.4.18` | `1.6.10` |\n| [@better-auth/stripe](https://github.com/better-auth/better-auth/tree/HEAD/packages/stripe) | `1.4.18` | `1.6.10` |\n| [@trpc/server](https://github.com/trpc/trpc/tree/HEAD/packages/server) | `11.10.0` | `11.17.0` |\n| [ai](https://github.com/vercel/ai/tree/HEAD/packages/ai) | `6.0.91` | `6.0.177` |\n| [better-auth](https://github.com/better-auth/better-auth/tree/HEAD/packages/better-auth) | `1.4.18` | `1.6.10` |\n| [drizzle-orm](https://github.com/drizzle-team/drizzle-orm) | `0.45.1` | `0.45.2` |\n| [stripe](https://github.com/stripe/stripe-node) | `20.3.1` | `22.1.1` |\n| [@cloudflare/workers-types](https://github.com/cloudflare/workerd) | `4.20260218.0` | `4.20260511.1` |\n| [@types/bun](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/bun) | `1.3.9` | `1.3.13` |\n| [hono](https://github.com/honojs/hono) | `4.11.10` | `4.12.18` |\n| [zod](https://github.com/colinhacks/zod) | `4.3.6` | `4.4.3` |\n| [@tanstack/react-query](https://github.com/TanStack/query/tree/HEAD/packages/react-query) | `5.90.21` | `5.100.9` |\n| [@tanstack/react-router](https://github.com/TanStack/router/tree/HEAD/packages/react-router) | `1.161.1` | `1.169.2` |\n| [@trpc/client](https://github.com/trpc/trpc/tree/HEAD/packages/client) | `11.10.0` | `11.17.0` |\n| [@trpc/tanstack-react-query](https://github.com/trpc/trpc/tree/HEAD/packages/tanstack-react-query) | `11.10.0` | `11.17.0` |\n| [jotai](https://github.com/pmndrs/jotai) | `2.17.1` | `2.20.0` |\n| [lucide-react](https://github.com/lucide-icons/lucide/tree/HEAD/packages/lucide-react) | `0.574.0` | `1.14.0` |\n| [react-dom](https://github.com/facebook/react/tree/HEAD/packages/react-dom) | `19.2.4` | `19.2.6` |\n| [tailwind-merge](https://github.com/dcastil/tailwind-merge) | `3.4.1` | `3.6.0` |\n| [@tailwindcss/postcss](https://github.com/tailwindlabs/tailwindcss/tree/HEAD/packages/@tailwindcss-postcss) | `4.2.0` | `4.3.0` |\n| [@tanstack/react-query-devtools](https://github.com/TanStack/query/tree/HEAD/packages/react-query-devtools) | `5.91.3` | `5.100.9` |\n| [@tanstack/react-router-devtools](https://github.com/TanStack/router/tree/HEAD/packages/react-router-devtools) | `1.161.1` | `1.166.13` |\n| [@tanstack/router-plugin](https://github.com/TanStack/router/tree/HEAD/packages/router-plugin) | `1.161.1` | `1.167.35` |\n| [@types/node](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/node) | `25.2.3` | `25.6.2` |\n| [@vitejs/plugin-react](https://github.com/vitejs/vite-plugin-react/tree/HEAD/packages/plugin-react) | `5.1.4` | `6.0.1` |\n| [@vitejs/plugin-react-swc](https://github.com/vitejs/vite-plugin-react/tree/HEAD/packages/plugin-react-swc) | `4.2.3` | `4.3.0` |\n| [autoprefixer](https://github.com/postcss/autoprefixer) | `10.4.24` | `10.5.0` |\n| [globby](https://github.com/sindresorhus/globby) | `16.1.1` | `16.2.0` |\n| [@react-email/components](https://github.com/resend/react-email/tree/HEAD/packages/components) | `1.0.8` | `1.0.12` |\n| [@react-email/render](https://github.com/resend/react-email/tree/HEAD/packages/render) | `2.0.4` | `2.0.8` |\n| [@react-email/preview-server](https://github.com/resend/react-email/tree/HEAD/packages/preview-server) | `5.2.8` | `5.2.10` |\n| [react-email](https://github.com/resend/react-email/tree/HEAD/packages/react-email) | `5.2.8` | `6.1.1` |\n| [@astrojs/react](https://github.com/withastro/astro/tree/HEAD/packages/integrations/react) | `4.4.2` | `5.0.4` |\n| [astro](https://github.com/withastro/astro/tree/HEAD/packages/astro) | `5.17.2` | `6.3.1` |\n| [drizzle-kit](https://github.com/drizzle-team/drizzle-orm) | `0.31.9` | `0.31.10` |\n| [@modelcontextprotocol/sdk](https://github.com/modelcontextprotocol/typescript-sdk) | `1.26.0` | `1.29.0` |\n| [got](https://github.com/sindresorhus/got) | `14.6.6` | `15.0.5` |\n\n\nUpdates `@biomejs/biome` from 2.4.9 to 2.4.15\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/biomejs/biome/releases\"\u003e@​biomejs/biome's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eBiome CLI v2.4.15\u003c/h2\u003e\n\u003ch2\u003e2.4.15\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/biomejs/biome/pull/9394\"\u003e#9394\u003c/a\u003e \u003ca href=\"https://github.com/biomejs/biome/commit/ba3480e62da6ac7f0f9d99126f1459a72306368b\"\u003e\u003ccode\u003eba3480e\u003c/code\u003e\u003c/a\u003e Thanks \u003ca href=\"https://github.com/dyc3\"\u003e\u003ccode\u003e@​dyc3\u003c/code\u003e\u003c/a\u003e! - Added the nursery rule \u003ca href=\"https://biomejs.dev/linter/rules/use-test-hooks-in-order\"\u003e\u003ccode\u003euseTestHooksInOrder\u003c/code\u003e\u003c/a\u003e in the \u003ccode\u003etest\u003c/code\u003e domain. The rule enforces that Jest/Vitest lifecycle hooks (\u003ccode\u003ebeforeAll\u003c/code\u003e, \u003ccode\u003ebeforeEach\u003c/code\u003e, \u003ccode\u003eafterEach\u003c/code\u003e, \u003ccode\u003eafterAll\u003c/code\u003e) are declared in the order they execute, making test setup and teardown easier to reason about.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/biomejs/biome/pull/10254\"\u003e#10254\u003c/a\u003e \u003ca href=\"https://github.com/biomejs/biome/commit/e0a54ccc0a0c892fff2270ae772bcecf0d34e79a\"\u003e\u003ccode\u003ee0a54cc\u003c/code\u003e\u003c/a\u003e Thanks \u003ca href=\"https://github.com/dyc3\"\u003e\u003ccode\u003e@​dyc3\u003c/code\u003e\u003c/a\u003e! - Added a new nursery rule \u003ca href=\"https://biomejs.dev/linter/rules/use-vue-next-tick-promise/\"\u003e\u003ccode\u003euseVueNextTickPromise\u003c/code\u003e\u003c/a\u003e, which enforces Promise syntax when using Vue \u003ccode\u003enextTick\u003c/code\u003e.\u003c/p\u003e\n\u003cp\u003eFor example, the following snippet triggers the rule:\u003c/p\u003e\n\u003cpre lang=\"js\"\u003e\u003ccode\u003eimport { nextTick } from \u0026quot;vue\u0026quot;;\n\u003cp\u003enextTick(() =\u0026gt; {\nupdateDom();\n});\n\u003c/code\u003e\u003c/pre\u003e\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/biomejs/biome/pull/10219\"\u003e#10219\u003c/a\u003e \u003ca href=\"https://github.com/biomejs/biome/commit/64aee454ac2db2ade31089c1438dd761c94a8d57\"\u003e\u003ccode\u003e64aee45\u003c/code\u003e\u003c/a\u003e Thanks \u003ca href=\"https://github.com/dyc3\"\u003e\u003ccode\u003e@​dyc3\u003c/code\u003e\u003c/a\u003e! - Added a new nursery rule \u003ca href=\"https://biomejs.dev/linter/rules/no-vue-v-on-number-values/\"\u003e\u003ccode\u003enoVueVOnNumberValues\u003c/code\u003e\u003c/a\u003e, that disallows deprecated number modifiers on Vue \u003ccode\u003ev-on\u003c/code\u003e directives.\u003c/p\u003e\n\u003cp\u003eFor example, the following snippet triggers the rule:\u003c/p\u003e\n\u003cpre lang=\"vue\"\u003e\u003ccode\u003e\u0026lt;input @keyup.13=\u0026quot;submit\u0026quot; /\u0026gt;\n\u003c/code\u003e\u003c/pre\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/biomejs/biome/pull/10195\"\u003e#10195\u003c/a\u003e \u003ca href=\"https://github.com/biomejs/biome/commit/7b8d4e161a225f14bc9e070e04cc8572ee988bb2\"\u003e\u003ccode\u003e7b8d4e1\u003c/code\u003e\u003c/a\u003e Thanks \u003ca href=\"https://github.com/dyc3\"\u003e\u003ccode\u003e@​dyc3\u003c/code\u003e\u003c/a\u003e! - Added the new nursery rule \u003ca href=\"https://biomejs.dev/linter/rules/use-vue-valid-v-for/\"\u003e\u003ccode\u003euseVueValidVFor\u003c/code\u003e\u003c/a\u003e, which validates Vue \u003ccode\u003ev-for\u003c/code\u003e directives and reports invalid aliases, missing component keys, and keys that do not use iteration variables.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/biomejs/biome/pull/10238\"\u003e#10238\u003c/a\u003e \u003ca href=\"https://github.com/biomejs/biome/commit/1110256c6d60500ebc05b9d2738fe77345c7ffd6\"\u003e\u003ccode\u003e1110256\u003c/code\u003e\u003c/a\u003e Thanks \u003ca href=\"https://github.com/dyc3\"\u003e\u003ccode\u003e@​dyc3\u003c/code\u003e\u003c/a\u003e! - Added the recommended nursery rule \u003ca href=\"https://biomejs.dev/linter/rules/no-vue-import-compiler-macros/\"\u003e\u003ccode\u003enoVueImportCompilerMacros\u003c/code\u003e\u003c/a\u003e, which disallows importing Vue compiler macros such as \u003ccode\u003edefineProps\u003c/code\u003e from \u003ccode\u003evue\u003c/code\u003e because they are automatically available.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/biomejs/biome/pull/10201\"\u003e#10201\u003c/a\u003e \u003ca href=\"https://github.com/biomejs/biome/commit/1a08f89df55eafe1d8463696d1be53f8dea90a80\"\u003e\u003ccode\u003e1a08f89\u003c/code\u003e\u003c/a\u003e Thanks \u003ca href=\"https://github.com/realknove\"\u003e\u003ccode\u003e@​realknove\u003c/code\u003e\u003c/a\u003e! - Fixed \u003ca href=\"https://redirect.github.com/biomejs/biome/issues/10193\"\u003e#10193\u003c/a\u003e: \u003ccode\u003estyle/useReadonlyClassProperties\u003c/code\u003e no longer reports class properties as readonly-able when they are assigned inside arrow callbacks nested in class property initializers.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/biomejs/biome/pull/9574\"\u003e#9574\u003c/a\u003e \u003ca href=\"https://github.com/biomejs/biome/commit/3bd2b6adf0be44eda922ad7610781dd2e387bdb6\"\u003e\u003ccode\u003e3bd2b6a\u003c/code\u003e\u003c/a\u003e Thanks \u003ca href=\"https://github.com/Conaclos\"\u003e\u003ccode\u003e@​Conaclos\u003c/code\u003e\u003c/a\u003e! - Fixed \u003ca href=\"https://redirect.github.com/biomejs/biome/issues/9530\"\u003e#9530\u003c/a\u003e. The diagnostics of \u003ca href=\"https://biomejs.dev/assist/actions/organize-imports/\"\u003e\u003ccode\u003eorganizeImports\u003c/code\u003e\u003c/a\u003e are now more detailed and more precise. They are also better at localizing where the issue is.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/biomejs/biome/pull/10205\"\u003e#10205\u003c/a\u003e \u003ca href=\"https://github.com/biomejs/biome/commit/a704a6c40392e71aad5127ab35c771486116937e\"\u003e\u003ccode\u003ea704a6c\u003c/code\u003e\u003c/a\u003e Thanks \u003ca href=\"https://github.com/Conaclos\"\u003e\u003ccode\u003e@​Conaclos\u003c/code\u003e\u003c/a\u003e! - Fixed \u003ca href=\"https://redirect.github.com/biomejs/biome/issues/10185\"\u003e#10185\u003c/a\u003e. \u003ca href=\"https://biomejs.dev/assist/actions/organize-imports/\"\u003e`organizeImports\u003c/a\u003e now errors when it encounters an unknown predefined group.\u003c/p\u003e\n\u003cp\u003eThe following configuration is now reported as invalid because \u003ccode\u003e:INEXISTENT:\u003c/code\u003e is an unknown predefined group.\u003c/p\u003e\n\u003cpre lang=\"json\"\u003e\u003ccode\u003e{\n  \u0026quot;assist\u0026quot;: {\n    \u0026quot;actions\u0026quot;: {\n      \u0026quot;source\u0026quot;: {\n        \u0026quot;organizeImports\u0026quot;: { \u0026quot;options\u0026quot;: { \u0026quot;groups\u0026quot;: [\u0026quot;:INEXISTENT:\u0026quot;] } }\n      }\n    }\n  }\n}\n\u003c/code\u003e\u003c/pre\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/biomejs/biome/blob/main/packages/@biomejs/biome/CHANGELOG.md\"\u003e@​biomejs/biome's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e2.4.15\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/biomejs/biome/pull/9394\"\u003e#9394\u003c/a\u003e \u003ca href=\"https://github.com/biomejs/biome/commit/ba3480e62da6ac7f0f9d99126f1459a72306368b\"\u003e\u003ccode\u003eba3480e\u003c/code\u003e\u003c/a\u003e Thanks \u003ca href=\"https://github.com/dyc3\"\u003e\u003ccode\u003e@​dyc3\u003c/code\u003e\u003c/a\u003e! - Added the nursery rule \u003ca href=\"https://biomejs.dev/linter/rules/use-test-hooks-in-order\"\u003e\u003ccode\u003euseTestHooksInOrder\u003c/code\u003e\u003c/a\u003e in the \u003ccode\u003etest\u003c/code\u003e domain. The rule enforces that Jest/Vitest lifecycle hooks (\u003ccode\u003ebeforeAll\u003c/code\u003e, \u003ccode\u003ebeforeEach\u003c/code\u003e, \u003ccode\u003eafterEach\u003c/code\u003e, \u003ccode\u003eafterAll\u003c/code\u003e) are declared in the order they execute, making test setup and teardown easier to reason about.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/biomejs/biome/pull/10254\"\u003e#10254\u003c/a\u003e \u003ca href=\"https://github.com/biomejs/biome/commit/e0a54ccc0a0c892fff2270ae772bcecf0d34e79a\"\u003e\u003ccode\u003ee0a54cc\u003c/code\u003e\u003c/a\u003e Thanks \u003ca href=\"https://github.com/dyc3\"\u003e\u003ccode\u003e@​dyc3\u003c/code\u003e\u003c/a\u003e! - Added a new nursery rule \u003ca href=\"https://biomejs.dev/linter/rules/use-vue-next-tick-promise/\"\u003e\u003ccode\u003euseVueNextTickPromise\u003c/code\u003e\u003c/a\u003e, which enforces Promise syntax when using Vue \u003ccode\u003enextTick\u003c/code\u003e.\u003c/p\u003e\n\u003cp\u003eFor example, the following snippet triggers the rule:\u003c/p\u003e\n\u003cpre lang=\"js\"\u003e\u003ccode\u003eimport { nextTick } from \u0026quot;vue\u0026quot;;\n\u003cp\u003enextTick(() =\u0026gt; {\nupdateDom();\n});\n\u003c/code\u003e\u003c/pre\u003e\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/biomejs/biome/pull/10219\"\u003e#10219\u003c/a\u003e \u003ca href=\"https://github.com/biomejs/biome/commit/64aee454ac2db2ade31089c1438dd761c94a8d57\"\u003e\u003ccode\u003e64aee45\u003c/code\u003e\u003c/a\u003e Thanks \u003ca href=\"https://github.com/dyc3\"\u003e\u003ccode\u003e@​dyc3\u003c/code\u003e\u003c/a\u003e! - Added a new nursery rule \u003ca href=\"https://biomejs.dev/linter/rules/no-vue-v-on-number-values/\"\u003e\u003ccode\u003enoVueVOnNumberValues\u003c/code\u003e\u003c/a\u003e, that disallows deprecated number modifiers on Vue \u003ccode\u003ev-on\u003c/code\u003e directives.\u003c/p\u003e\n\u003cp\u003eFor example, the following snippet triggers the rule:\u003c/p\u003e\n\u003cpre lang=\"vue\"\u003e\u003ccode\u003e\u0026lt;input @keyup.13=\u0026quot;submit\u0026quot; /\u0026gt;\n\u003c/code\u003e\u003c/pre\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/biomejs/biome/pull/10195\"\u003e#10195\u003c/a\u003e \u003ca href=\"https://github.com/biomejs/biome/commit/7b8d4e161a225f14bc9e070e04cc8572ee988bb2\"\u003e\u003ccode\u003e7b8d4e1\u003c/code\u003e\u003c/a\u003e Thanks \u003ca href=\"https://github.com/dyc3\"\u003e\u003ccode\u003e@​dyc3\u003c/code\u003e\u003c/a\u003e! - Added the new nursery rule \u003ca href=\"https://biomejs.dev/linter/rules/use-vue-valid-v-for/\"\u003e\u003ccode\u003euseVueValidVFor\u003c/code\u003e\u003c/a\u003e, which validates Vue \u003ccode\u003ev-for\u003c/code\u003e directives and reports invalid aliases, missing component keys, and keys that do not use iteration variables.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/biomejs/biome/pull/10238\"\u003e#10238\u003c/a\u003e \u003ca href=\"https://github.com/biomejs/biome/commit/1110256c6d60500ebc05b9d2738fe77345c7ffd6\"\u003e\u003ccode\u003e1110256\u003c/code\u003e\u003c/a\u003e Thanks \u003ca href=\"https://github.com/dyc3\"\u003e\u003ccode\u003e@​dyc3\u003c/code\u003e\u003c/a\u003e! - Added the recommended nursery rule \u003ca href=\"https://biomejs.dev/linter/rules/no-vue-import-compiler-macros/\"\u003e\u003ccode\u003enoVueImportCompilerMacros\u003c/code\u003e\u003c/a\u003e, which disallows importing Vue compiler macros such as \u003ccode\u003edefineProps\u003c/code\u003e from \u003ccode\u003evue\u003c/code\u003e because they are automatically available.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/biomejs/biome/pull/10201\"\u003e#10201\u003c/a\u003e \u003ca href=\"https://github.com/biomejs/biome/commit/1a08f89df55eafe1d8463696d1be53f8dea90a80\"\u003e\u003ccode\u003e1a08f89\u003c/code\u003e\u003c/a\u003e Thanks \u003ca href=\"https://github.com/realknove\"\u003e\u003ccode\u003e@​realknove\u003c/code\u003e\u003c/a\u003e! - Fixed \u003ca href=\"https://redirect.github.com/biomejs/biome/issues/10193\"\u003e#10193\u003c/a\u003e: \u003ccode\u003estyle/useReadonlyClassProperties\u003c/code\u003e no longer reports class properties as readonly-able when they are assigned inside arrow callbacks nested in class property initializers.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/biomejs/biome/pull/9574\"\u003e#9574\u003c/a\u003e \u003ca href=\"https://github.com/biomejs/biome/commit/3bd2b6adf0be44eda922ad7610781dd2e387bdb6\"\u003e\u003ccode\u003e3bd2b6a\u003c/code\u003e\u003c/a\u003e Thanks \u003ca href=\"https://github.com/Conaclos\"\u003e\u003ccode\u003e@​Conaclos\u003c/code\u003e\u003c/a\u003e! - Fixed \u003ca href=\"https://redirect.github.com/biomejs/biome/issues/9530\"\u003e#9530\u003c/a\u003e. The diagnostics of \u003ca href=\"https://biomejs.dev/assist/actions/organize-imports/\"\u003e\u003ccode\u003eorganizeImports\u003c/code\u003e\u003c/a\u003e are now more detailed and more precise. They are also better at localizing where the issue is.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/biomejs/biome/pull/10205\"\u003e#10205\u003c/a\u003e \u003ca href=\"https://github.com/biomejs/biome/commit/a704a6c40392e71aad5127ab35c771486116937e\"\u003e\u003ccode\u003ea704a6c\u003c/code\u003e\u003c/a\u003e Thanks \u003ca href=\"https://github.com/Conaclos\"\u003e\u003ccode\u003e@​Conaclos\u003c/code\u003e\u003c/a\u003e! - Fixed \u003ca href=\"https://redirect.github.com/biomejs/biome/issues/10185\"\u003e#10185\u003c/a\u003e. \u003ca href=\"https://biomejs.dev/assist/actions/organize-imports/\"\u003e`organizeImports\u003c/a\u003e now errors when it encounters an unknown predefined group.\u003c/p\u003e\n\u003cp\u003eThe following configuration is now reported as invalid because \u003ccode\u003e:INEXISTENT:\u003c/code\u003e is an unknown predefined group.\u003c/p\u003e\n\u003cpre lang=\"json\"\u003e\u003ccode\u003e{\n  \u0026quot;assist\u0026quot;: {\n    \u0026quot;actions\u0026quot;: {\n      \u0026quot;source\u0026quot;: {\n        \u0026quot;organizeImports\u0026quot;: { \u0026quot;options\u0026quot;: { \u0026quot;groups\u0026quot;: [\u0026quot;:INEXISTENT:\u0026quot;] } }\n      }\n    }\n  }\n}\n\u003c/code\u003e\u003c/pre\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/biomejs/biome/commit/9dd3271eef16090416b6e77615a01e3bfbcf7993\"\u003e\u003ccode\u003e9dd3271\u003c/code\u003e\u003c/a\u003e ci: release (\u003ca href=\"https://github.com/biomejs/biome/tree/HEAD/packages/@biomejs/biome/issues/10210\"\u003e#10210\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/biomejs/biome/commit/7b8d4e161a225f14bc9e070e04cc8572ee988bb2\"\u003e\u003ccode\u003e7b8d4e1\u003c/code\u003e\u003c/a\u003e feat(lint/html/vue): add \u003ccode\u003euseVueValidVFor\u003c/code\u003e (\u003ca href=\"https://github.com/biomejs/biome/tree/HEAD/packages/@biomejs/biome/issues/10195\"\u003e#10195\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/biomejs/biome/commit/ba3480e62da6ac7f0f9d99126f1459a72306368b\"\u003e\u003ccode\u003eba3480e\u003c/code\u003e\u003c/a\u003e feat(lint/js): add \u003ccode\u003euseTestHooksInOrder\u003c/code\u003e (\u003ca href=\"https://github.com/biomejs/biome/tree/HEAD/packages/@biomejs/biome/issues/9394\"\u003e#9394\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/biomejs/biome/commit/e0a54ccc0a0c892fff2270ae772bcecf0d34e79a\"\u003e\u003ccode\u003ee0a54cc\u003c/code\u003e\u003c/a\u003e feat(lint/js/vue): add \u003ccode\u003euseVueNextTickPromise\u003c/code\u003e (\u003ca href=\"https://github.com/biomejs/biome/tree/HEAD/packages/@biomejs/biome/issues/10254\"\u003e#10254\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/biomejs/biome/commit/1110256c6d60500ebc05b9d2738fe77345c7ffd6\"\u003e\u003ccode\u003e1110256\u003c/code\u003e\u003c/a\u003e feat(lint/vue): add \u003ccode\u003enoVueImportCompilerMacros\u003c/code\u003e (\u003ca href=\"https://github.com/biomejs/biome/tree/HEAD/packages/@biomejs/biome/issues/10238\"\u003e#10238\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/biomejs/biome/commit/7f7419cc831cc0725c44669964d8ad8f318d4375\"\u003e\u003ccode\u003e7f7419c\u003c/code\u003e\u003c/a\u003e fix: grammar in extends docstring (\u003ca href=\"https://github.com/biomejs/biome/tree/HEAD/packages/@biomejs/biome/issues/10263\"\u003e#10263\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/biomejs/biome/commit/0ae58406b4752f296adfccf94b1d2a042c4cddc7\"\u003e\u003ccode\u003e0ae5840\u003c/code\u003e\u003c/a\u003e feat(lint/js): add \u003ccode\u003euseThisForClassMethods\u003c/code\u003e (\u003ca href=\"https://github.com/biomejs/biome/tree/HEAD/packages/@biomejs/biome/issues/9807\"\u003e#9807\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/biomejs/biome/commit/83f7385f14d68704510ea4c028cfa20317698fc0\"\u003e\u003ccode\u003e83f7385\u003c/code\u003e\u003c/a\u003e feat(lint/js): add \u003ccode\u003enoBaseToString\u003c/code\u003e (\u003ca href=\"https://github.com/biomejs/biome/tree/HEAD/packages/@biomejs/biome/issues/9838\"\u003e#9838\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/biomejs/biome/commit/64aee454ac2db2ade31089c1438dd761c94a8d57\"\u003e\u003ccode\u003e64aee45\u003c/code\u003e\u003c/a\u003e feat(lint/html/vue): add \u003ccode\u003enoVueVOnNumberValues\u003c/code\u003e (\u003ca href=\"https://github.com/biomejs/biome/tree/HEAD/packages/@biomejs/biome/issues/10219\"\u003e#10219\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/biomejs/biome/commit/46393e0240944064eb2a33c1810fc4204ced0cf7\"\u003e\u003ccode\u003e46393e0\u003c/code\u003e\u003c/a\u003e ci: release (\u003ca href=\"https://github.com/biomejs/biome/tree/HEAD/packages/@biomejs/biome/issues/10100\"\u003e#10100\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/biomejs/biome/commits/@biomejs/biome@2.4.15/packages/@biomejs/biome\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `graphql` from 16.12.0 to 16.14.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/graphql/graphql-js/releases\"\u003egraphql's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev16.14.0 (2026-05-03)\u003c/h2\u003e\n\u003ch4\u003eNew Feature 🚀\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/graphql/graphql-js/pull/4317\"\u003e#4317\u003c/a\u003e Allow configuration of the \u003ccode\u003eofType\u003c/code\u003e introspection depth (\u003ca href=\"https://github.com/Nols1000\"\u003e\u003ccode\u003e@​Nols1000\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/graphql/graphql-js/pull/4521\"\u003e#4521\u003c/a\u003e Add experimental support for directives on directive definitions (\u003ca href=\"https://github.com/BoD\"\u003e\u003ccode\u003e@​BoD\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch4\u003eBug Fix 🐞\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/graphql/graphql-js/pull/4652\"\u003e#4652\u003c/a\u003e Fix valueFromAST variable own-property checks\n(\u003ca href=\"https://github.com/abishekgiri\"\u003e\u003ccode\u003e@​abishekgiri\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch4\u003eDocs 📝\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/graphql/graphql-js/pull/4706\"\u003e#4706\u003c/a\u003e Fix mistake in GraphQLError guidance (\u003ca href=\"https://github.com/benjie\"\u003e\u003ccode\u003e@​benjie\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch4\u003eCommitters: 4\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003eAbishek Kumar Giri(\u003ca href=\"https://github.com/abishekgiri\"\u003e\u003ccode\u003e@​abishekgiri\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eBenjie(\u003ca href=\"https://github.com/benjie\"\u003e\u003ccode\u003e@​benjie\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eBenoit 'BoD' Lubek(\u003ca href=\"https://github.com/BoD\"\u003e\u003ccode\u003e@​BoD\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNils-Börge Margotti(\u003ca href=\"https://github.com/Nols1000\"\u003e\u003ccode\u003e@​Nols1000\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev16.13.2 (2026-03-24)\u003c/h2\u003e\n\u003ch4\u003eDocs 📝\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/graphql/graphql-js/pull/4611\"\u003e#4611\u003c/a\u003e add dev mode docs (\u003ca href=\"https://github.com/yaacovCR\"\u003e\u003ccode\u003e@​yaacovCR\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch4\u003ePolish 💅\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/graphql/graphql-js/pull/4631\"\u003e#4631\u003c/a\u003e Use \u003ccode\u003eObject.create(null)\u003c/code\u003e over \u003ccode\u003e{}\u003c/code\u003e to avoid prototype issues - v16 (\u003ca href=\"https://github.com/benjie\"\u003e\u003ccode\u003e@​benjie\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch4\u003eInternal 🏠\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/graphql/graphql-js/pull/4626\"\u003e#4626\u003c/a\u003e backport: internal: streamline release process (\u003ca href=\"https://redirect.github.com/graphql/graphql-js/issues/4615\"\u003e#4615\u003c/a\u003e) (\u003ca href=\"https://github.com/yaacovCR\"\u003e\u003ccode\u003e@​yaacovCR\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch4\u003eCommitters: 2\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003eBenjie(\u003ca href=\"https://github.com/benjie\"\u003e\u003ccode\u003e@​benjie\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eYaacov Rydzinski (\u003ca href=\"https://github.com/yaacovCR\"\u003e\u003ccode\u003e@​yaacovCR\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev16.13.1 (2026-03-04)\u003c/h2\u003e\n\u003cp\u003eFirst 16.x.x release with trusted publishing and provenance, see: \u003ca href=\"https://docs.npmjs.com/trusted-publishers\"\u003ehttps://docs.npmjs.com/trusted-publishers\u003c/a\u003e for additional information.\u003c/p\u003e\n\u003ch4\u003eDocs 📝\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/graphql/graphql-js/pull/4433\"\u003e#4433\u003c/a\u003e docs: move migrate from express graphql guide to graphqlJS docs (\u003ca href=\"https://github.com/sarahxsanders\"\u003e\u003ccode\u003e@​sarahxsanders\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch4\u003eInternal 🏠\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/graphql/graphql-js/pull/4608\"\u003e#4608\u003c/a\u003e internal: backport new release flow from 17.x.x (\u003ca href=\"https://github.com/yaacovCR\"\u003e\u003ccode\u003e@​yaacovCR\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/graphql/graphql-js/pull/4610\"\u003e#4610\u003c/a\u003e internal: pin node version for release action (\u003ca href=\"https://github.com/yaacovCR\"\u003e\u003ccode\u003e@​yaacovCR\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch4\u003eCommitters: 2\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003eSarah Sanders(\u003ca href=\"https://github.com/sarahxsanders\"\u003e\u003ccode\u003e@​sarahxsanders\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eYaacov Rydzinski (\u003ca href=\"https://github.com/yaacovCR\"\u003e\u003ccode\u003e@​yaacovCR\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e16.13.0\u003c/h2\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/graphql/graphql-js/commit/57b385b288150960acd09337adf2fc778abb32ab\"\u003e\u003ccode\u003e57b385b\u003c/code\u003e\u003c/a\u003e chore(release): v16.14.0 (\u003ca href=\"https://redirect.github.com/graphql/graphql-js/issues/4720\"\u003e#4720\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/graphql/graphql-js/commit/85700ed6382d57c76d47935adbee6943b29ffd75\"\u003e\u003ccode\u003e85700ed\u003c/code\u003e\u003c/a\u003e Fix mistake in GraphQLError guidance (\u003ca href=\"https://redirect.github.com/graphql/graphql-js/issues/4706\"\u003e#4706\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/graphql/graphql-js/commit/8eb6383ae7447514343457abb2063c40e5dc81bc\"\u003e\u003ccode\u003e8eb6383\u003c/code\u003e\u003c/a\u003e Allow configuration of the \u003ccode\u003eofType\u003c/code\u003e introspection depth (\u003ca href=\"https://redirect.github.com/graphql/graphql-js/issues/4317\"\u003e#4317\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/graphql/graphql-js/commit/ad9c519428ae9d95547af07f68c7559bda0d4053\"\u003e\u003ccode\u003ead9c519\u003c/code\u003e\u003c/a\u003e Add support for directives on directive definitions (\u003ca href=\"https://redirect.github.com/graphql/graphql-js/issues/4521\"\u003e#4521\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/graphql/graphql-js/commit/db2987cb63fffc372f413e780437ea022a649274\"\u003e\u003ccode\u003edb2987c\u003c/code\u003e\u003c/a\u003e fix(valueFromAST): restore variable own-property checks (\u003ca href=\"https://redirect.github.com/graphql/graphql-js/issues/4652\"\u003e#4652\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/graphql/graphql-js/commit/123e958de1362eef098c30e917b51981c484729e\"\u003e\u003ccode\u003e123e958\u003c/code\u003e\u003c/a\u003e chore(release): v16.13.2 (\u003ca href=\"https://redirect.github.com/graphql/graphql-js/issues/4632\"\u003e#4632\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/graphql/graphql-js/commit/13f130d229311cfaf3accff12d3b7134e8d43a8c\"\u003e\u003ccode\u003e13f130d\u003c/code\u003e\u003c/a\u003e Use \u003ccode\u003eObject.create(null)\u003c/code\u003e over \u003ccode\u003e{}\u003c/code\u003e to avoid prototype issues - v16 (\u003ca href=\"https://redirect.github.com/graphql/graphql-js/issues/4631\"\u003e#4631\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/graphql/graphql-js/commit/6ca59e128fe6cf26f1335fbd81d2f4a30bf9fce1\"\u003e\u003ccode\u003e6ca59e1\u003c/code\u003e\u003c/a\u003e backport: internal: streamline release process (\u003ca href=\"https://redirect.github.com/graphql/graphql-js/issues/4615\"\u003e#4615\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/graphql/graphql-js/issues/4626\"\u003e#4626\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/graphql/graphql-js/commit/df8c53f5157b9d8312160b1d5baf1f7029213097\"\u003e\u003ccode\u003edf8c53f\u003c/code\u003e\u003c/a\u003e docs: dev mode for v17 (\u003ca href=\"https://redirect.github.com/graphql/graphql-js/issues/4611\"\u003e#4611\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/graphql/graphql-js/commit/3b5c3f949ba1f3709f260984becd266b0c6fb4e8\"\u003e\u003ccode\u003e3b5c3f9\u003c/code\u003e\u003c/a\u003e internal: pin node version for release action (\u003ca href=\"https://redirect.github.com/graphql/graphql-js/issues/4610\"\u003e#4610\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/graphql/graphql-js/compare/v16.12.0...v16.14.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eMaintainer changes\u003c/summary\u003e\n\u003cp\u003eThis version was pushed to npm by \u003ca href=\"https://www.npmjs.com/~GitHub%20Actions\"\u003eGitHub Actions\u003c/a\u003e, a new releaser for graphql since your current version.\u003c/p\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `happy-dom` from 20.6.2 to 20.9.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/capricorn86/happy-dom/releases\"\u003ehappy-dom's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev20.9.0\u003c/h2\u003e\n\u003ch3\u003e:art: Features\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdds support for event listener properties on Window (e.g. \u003ccode\u003eWindow.onkeydown\u003c/code\u003e) - By \u003cstrong\u003e\u003ca href=\"https://github.com/capricorn86\"\u003e\u003ccode\u003e@​capricorn86\u003c/code\u003e\u003c/a\u003e\u003c/strong\u003e in task \u003ca href=\"https://redirect.github.com/capricorn86/happy-dom/issues/2131\"\u003e#2131\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev20.8.9\u003c/h2\u003e\n\u003ch3\u003e:construction_worker_man: Patch fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFixes issue where cookies from the current origin was being forwarded to the target origin in fetch requests - By \u003cstrong\u003e\u003ca href=\"https://github.com/capricorn86\"\u003e\u003ccode\u003e@​capricorn86\u003c/code\u003e\u003c/a\u003e\u003c/strong\u003e in task \u003ca href=\"https://redirect.github.com/capricorn86/happy-dom/issues/2117\"\u003e#2117\u003c/a\u003e\n\u003cul\u003e\n\u003cli\u003eA security advisory (\u003ca href=\"https://github.com/capricorn86/happy-dom/security/advisories/GHSA-w4gp-fjgq-3q4g\"\u003eGHSA-w4gp-fjgq-3q4g\u003c/a\u003e) was reported for this security vulnerability. Big thanks to \u003ca href=\"https://github.com/r74tech\"\u003e\u003ccode\u003e@​r74tech\u003c/code\u003e\u003c/a\u003e for reporting this!\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev20.8.8\u003c/h2\u003e\n\u003ch3\u003e:construction_worker_man: Patch fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFixes issue where export names can be interpolated as executable code in ESM - By \u003cstrong\u003e\u003ca href=\"https://github.com/capricorn86\"\u003e\u003ccode\u003e@​capricorn86\u003c/code\u003e\u003c/a\u003e\u003c/strong\u003e in task \u003ca href=\"https://redirect.github.com/capricorn86/happy-dom/issues/2113\"\u003e#2113\u003c/a\u003e\n\u003cul\u003e\n\u003cli\u003eA security advisory (\u003ca href=\"https://github.com/capricorn86/happy-dom/security/advisories/GHSA-6q6h-j7hj-3r64\"\u003eGHSA-6q6h-j7hj-3r64\u003c/a\u003e) has been reported that shows a security vulnerability where it may be possible to escape the VM context and get access to process level functionality in unsafe environments using CommonJS. Big thanks to \u003ca href=\"https://github.com/tndud042713\"\u003e\u003ccode\u003e@​tndud042713\u003c/code\u003e\u003c/a\u003e for reporting this!\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev20.8.7\u003c/h2\u003e\n\u003ch3\u003e:construction_worker_man: Patch fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eReplace implementing Node.js \u003ccode\u003eConsole\u003c/code\u003e with common \u003ccode\u003eIConsole\u003c/code\u003e interface to support latest version of Bun - By \u003cstrong\u003e\u003ca href=\"https://github.com/YevheniiKotyrlo\"\u003e\u003ccode\u003e@​YevheniiKotyrlo\u003c/code\u003e\u003c/a\u003e\u003c/strong\u003e in task \u003ca href=\"https://redirect.github.com/capricorn86/happy-dom/issues/1845\"\u003e#1845\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev20.8.6\u003c/h2\u003e\n\u003ch3\u003e:construction_worker_man: Patch fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eRequest.formData()\u003c/code\u003e should honor \u0026quot;Content-Type\u0026quot; header - By \u003cstrong\u003e\u003ca href=\"https://github.com/brianhelba\"\u003e\u003ccode\u003e@​brianhelba\u003c/code\u003e\u003c/a\u003e\u003c/strong\u003e in task \u003ca href=\"https://redirect.github.com/capricorn86/happy-dom/issues/2106\"\u003e#2106\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev20.8.5\u003c/h2\u003e\n\u003ch3\u003e:construction_worker_man: Patch fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFixes error thrown when modifying DOM structure in \u003ccode\u003econnectedCallback()\u003c/code\u003e - By \u003cstrong\u003e\u003ca href=\"https://github.com/capricorn86\"\u003e\u003ccode\u003e@​capricorn86\u003c/code\u003e\u003c/a\u003e\u003c/strong\u003e in task \u003ca href=\"https://redirect.github.com/capricorn86/happy-dom/issues/2110\"\u003e#2110\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev20.8.4\u003c/h2\u003e\n\u003ch3\u003e:construction_worker_man: Patch fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eReplace ConsoleConstructor import with indexed access type - By \u003cstrong\u003e\u003ca href=\"https://github.com/YevheniiKotyrlo\"\u003e\u003ccode\u003e@​YevheniiKotyrlo\u003c/code\u003e\u003c/a\u003e\u003c/strong\u003e in task \u003ca href=\"https://redirect.github.com/capricorn86/happy-dom/issues/1845\"\u003e#1845\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev20.8.3\u003c/h2\u003e\n\u003ch3\u003e:construction_worker_man: Patch fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eThrow error if event is not of type \u003ccode\u003eEvent\u003c/code\u003e in \u003ccode\u003eEventTarget.dispatchEvent()\u003c/code\u003e - By \u003cstrong\u003e\u003ca href=\"https://github.com/capricorn86\"\u003e\u003ccode\u003e@​capricorn86\u003c/code\u003e\u003c/a\u003e\u003c/strong\u003e in task \u003ca href=\"https://redirect.github.com/capricorn86/happy-dom/issues/2054\"\u003e#2054\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev20.8.2\u003c/h2\u003e\n\u003ch3\u003e:construction_worker_man: Patch fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eResets \u003ccode\u003eEvent.cancelBubble\u003c/code\u003e and \u003ccode\u003eEvent.defaultPrevented\u003c/code\u003e when calling \u003ccode\u003eEvent.initEvent()\u003c/code\u003e - By \u003cstrong\u003e\u003ca href=\"https://github.com/capricorn86\"\u003e\u003ccode\u003e@​capricorn86\u003c/code\u003e\u003c/a\u003e\u003c/strong\u003e in task \u003ca href=\"https://redirect.github.com/capricorn86/happy-dom/issues/2090\"\u003e#2090\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev20.8.1\u003c/h2\u003e\n\u003ch3\u003e:construction_worker_man: Patch fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eMake \u0026quot;inert\u0026quot; attribute block focus interactions - By \u003cstrong\u003e\u003ca href=\"https://github.com/coffeeandwork\"\u003e\u003ccode\u003e@​coffeeandwork\u003c/code\u003e\u003c/a\u003e\u003c/strong\u003e in task \u003ca href=\"https://redirect.github.com/capricorn86/happy-dom/issues/1422\"\u003e#1422\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev20.8.0\u003c/h2\u003e\n\u003ch3\u003e:art: Features\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdds support for setPointerCapture, hasPointerCapture, and releasePointerCapture to Element - By \u003cstrong\u003e\u003ca href=\"https://github.com/coffeeandwork\"\u003e\u003ccode\u003e@​coffeeandwork\u003c/code\u003e\u003c/a\u003e\u003c/strong\u003e in task \u003ca href=\"https://redirect.github.com/capricorn86/happy-dom/issues/1733\"\u003e#1733\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev20.7.2\u003c/h2\u003e\n\u003ch3\u003e:construction_worker_man: Patch fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eProperly decode CSS escape sequences in attribute selector values - By \u003cstrong\u003e\u003ca href=\"https://github.com/silverwind\"\u003e\u003ccode\u003e@​silverwind\u003c/code\u003e\u003c/a\u003e\u003c/strong\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/capricorn86/happy-dom/commit/4090adefaf116143ebabf3226581c1261c09e877\"\u003e\u003ccode\u003e4090ade\u003c/code\u003e\u003c/a\u003e fix: \u003ca href=\"https://redirect.github.com/capricorn86/happy-dom/issues/0\"\u003e#0\u003c/a\u003e Fix github release workflow (\u003ca href=\"https://redirect.github.com/capricorn86/happy-dom/issues/2140\"\u003e#2140\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/capricorn86/happy-dom/commit/c7c2bb506377f2b38218486b166b89a9b0e5b174\"\u003e\u003ccode\u003ec7c2bb5\u003c/code\u003e\u003c/a\u003e fix: \u003ca href=\"https://redirect.github.com/capricorn86/happy-dom/issues/0\"\u003e#0\u003c/a\u003e Fix github release workflow (\u003ca href=\"https://redirect.github.com/capricorn86/happy-dom/issues/2139\"\u003e#2139\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/capricorn86/happy-dom/commit/d541143d69e6593422e32c7c3853213ee04af545\"\u003e\u003ccode\u003ed541143\u003c/code\u003e\u003c/a\u003e fix: \u003ca href=\"https://redirect.github.com/capricorn86/happy-dom/issues/0\"\u003e#0\u003c/a\u003e Fix github release workflow (\u003ca href=\"https://redirect.github.com/capricorn86/happy-dom/issues/2138\"\u003e#2138\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/capricorn86/happy-dom/commit/a78d89e7e1cf77c42cb04833b9d9fba30a3e868a\"\u003e\u003ccode\u003ea78d89e\u003c/code\u003e\u003c/a\u003e feat: \u003ca href=\"https://redirect.github.com/capricorn86/happy-dom/issues/2131\"\u003e#2131\u003c/a\u003e Adds support for event listener properties on Window (\u003ca href=\"https://redirect.github.com/capricorn86/happy-dom/issues/2132\"\u003e#2132\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/capricorn86/happy-dom/commit/68324c21d7b98f53f7bb5a7b3e185bda7106e751\"\u003e\u003ccode\u003e68324c2\u003c/code\u003e\u003c/a\u003e fix: \u003ca href=\"https://redirect.github.com/capricorn86/happy-dom/issues/2117\"\u003e#2117\u003c/a\u003e Fixes issue related to cookies from the current origin being for...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/capricorn86/happy-dom/commit/5437fdf8f13adb9590f9f52616d9f69c3ee8db3c\"\u003e\u003ccode\u003e5437fdf\u003c/code\u003e\u003c/a\u003e fix: \u003ca href=\"https://redirect.github.com/capricorn86/happy-dom/issues/2113\"\u003e#2113\u003c/a\u003e Fixes issue where export names can be interpolated as executable...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/capricorn86/happy-dom/commit/7e97acbc0de9e9e8515b828bb1bb60f6c65eae44\"\u003e\u003ccode\u003e7e97acb\u003c/code\u003e\u003c/a\u003e fix: \u003ca href=\"https://redirect.github.com/capricorn86/happy-dom/issues/1845\"\u003e#1845\u003c/a\u003e Replace implementing Node js Console with common IConsole interf...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/capricorn86/happy-dom/commit/3373929819a55988218a32c06816c5754828f59d\"\u003e\u003ccode\u003e3373929\u003c/code\u003e\u003c/a\u003e fix: \u003ca href=\"https://redirect.github.com/capricorn86/happy-dom/issues/2106\"\u003e#2106\u003c/a\u003e \u003ccode\u003eRequest.formData()\u003c/code\u003e should honor \u003ccode\u003eContent-Type\u003c/code\u003e header (\u003ca href=\"https://redirect.github.com/capricorn86/happy-dom/issues/2107\"\u003e#2107\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/capricorn86/happy-dom/commit/55c17ba6d2883ce54010b041be165db8f6c5c974\"\u003e\u003ccode\u003e55c17ba\u003c/code\u003e\u003c/a\u003e fix: \u003ca href=\"https://redirect.github.com/capricorn86/happy-dom/issues/2110\"\u003e#2110\u003c/a\u003e Fixes error thrown when modifying DOM structure in connectedCall...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/capricorn86/happy-dom/commit/82a0888cb2c87a6123e05424b528f8e8c9b3e426\"\u003e\u003ccode\u003e82a0888\u003c/code\u003e\u003c/a\u003e fix: \u003ca href=\"https://redirect.github.com/capricorn86/happy-dom/issues/1845\"\u003e#1845\u003c/a\u003e Replace ConsoleConstructor import with indexed access type (\u003ca href=\"https://redirect.github.com/capricorn86/happy-dom/issues/2095\"\u003e#2095\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/capricorn86/happy-dom/compare/v20.6.2...v20.9.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eMaintainer changes\u003c/summary\u003e\n\u003cp\u003eThis version was pushed to npm by \u003ca href=\"https://www.npmjs.com/~GitHub%20Actions\"\u003eGitHub Actions\u003c/a\u003e, a new releaser for happy-dom since your current version.\u003c/p\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `jiti` from 2.6.1 to 2.7.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/unjs/jiti/releases\"\u003ejiti's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev2.7.0\u003c/h2\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/unjs/jiti/compare/v2.6.1...v2.7.0\"\u003ecompare changes\u003c/a\u003e\u003c/p\u003e\n\u003ch3\u003e🚀 Enhancements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd explicit resource management (\u003ccode\u003eusing\u003c/code\u003e/\u003ccode\u003eawait using\u003c/code\u003e) support (\u003ca href=\"https://redirect.github.com/unjs/jiti/pull/422\"\u003e#422\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSupport opt-in \u003ccode\u003etsconfigPaths\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/unjs/jiti/pull/427\"\u003e#427\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSupport virtual modules (\u003ca href=\"https://redirect.github.com/unjs/jiti/pull/428\"\u003e#428\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003ejiti/static\u003c/code\u003e subpath (\u003ca href=\"https://redirect.github.com/unjs/jiti/pull/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🔥 Performance\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003einteropDefault:\u003c/strong\u003e Add caching to reduce proxy overhead by ~2x (\u003ca href=\"https://redirect.github.com/unjs/jiti/pull/421\"\u003e#421\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🩹 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003erequire:\u003c/strong\u003e Passthrough resolve options (\u003ca href=\"https://redirect.github.com/unjs/jiti/pull/412\"\u003e#412\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003erequire:\u003c/strong\u003e Fallback to transpilation when \u003ccode\u003etryNative\u003c/code\u003e fails (\u003ca href=\"https://redirect.github.com/unjs/jiti/pull/413\"\u003e#413\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFallback for \u003ccode\u003eENAMETOOLONG\u003c/code\u003e when evaluating esm (\u003ca href=\"https://redirect.github.com/unjs/jiti/pull/429\"\u003e#429\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e📦 Build\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpgrade rspack to v2 (\u003ca href=\"https://github.com/unjs/jiti/commit/55194fb\"\u003e55194fb\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eExperimental rolldown config (\u003ca href=\"https://github.com/unjs/jiti/commit/8c0243f\"\u003e8c0243f\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e✅ Tests\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eIgnore jsx test for bun/cjs (\u003ca href=\"https://github.com/unjs/jiti/commit/3a744ca\"\u003e3a744ca\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e❤️ Contributors\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003ePooya Parsa (\u003ca href=\"https://github.com/pi0\"\u003e\u003ccode\u003e@​pi0\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eKricsleo (\u003ca href=\"https://github.com/kricsleo\"\u003e\u003ccode\u003e@​kricsleo\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eEspen Hovlandsdal (\u003ca href=\"https://github.com/rexxars\"\u003e\u003ccode\u003e@​rexxars\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRintaro Itokawa (\u003ca href=\"https://github.com/re-taro\"\u003e\u003ccode\u003e@​re-taro\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eMatteo Collina (\u003ca href=\"https://github.com/mcollina\"\u003e\u003ccode\u003e@​mcollina\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eMario Zechner (\u003ca href=\"https://github.com/badlogic\"\u003e\u003ccode\u003e@​badlogic\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/unjs/jiti/blob/main/CHANGELOG.md\"\u003ejiti's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev2.7.0\u003c/h2\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/unjs/jiti/compare/v2.6.1...v2.7.0\"\u003ecompare changes\u003c/a\u003e\u003c/p\u003e\n\u003ch3\u003e🚀 Enhancements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd explicit resource management (using/await using) support (\u003ca href=\"https://redirect.github.com/unjs/jiti/pull/422\"\u003e#422\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSupport opt-in \u003ccode\u003etsconfigPaths\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/unjs/jiti/pull/427\"\u003e#427\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSupport virtual modules option (\u003ca href=\"https://redirect.github.com/unjs/jiti/pull/428\"\u003e#428\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003ejiti/static\u003c/code\u003e export (\u003ca href=\"https://redirect.github.com/unjs/jiti/pull/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🔥 Performance\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003einteropDefault:\u003c/strong\u003e Add caching to reduce proxy overhead by ~2x (\u003ca href=\"https://redirect.github.com/unjs/jiti/pull/421\"\u003e#421\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🩹 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003erequire:\u003c/strong\u003e Passthrough resolve options (\u003ca href=\"https://redirect.github.com/unjs/jiti/pull/412\"\u003e#412\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eci:\u003c/strong\u003e Skip \u003ccode\u003e--coverage\u003c/code\u003e flag for node 18 (\u003ca href=\"https://github.com/unjs/jiti/commit/fe264b4\"\u003efe264b4\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003erequire:\u003c/strong\u003e Fallback to transpilation when \u003ccode\u003etryNative\u003c/code\u003e fails (\u003ca href=\"https://redirect.github.com/unjs/jiti/pull/413\"\u003e#413\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFallback for \u003ccode\u003eENAMETOOLONG\u003c/code\u003e when evaluating esm (\u003ca href=\"https://redirect.github.com/unjs/jiti/pull/429\"\u003e#429\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e📦 Build\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpgrade rspack (\u003ca href=\"https://github.com/unjs/jiti/commit/55194fb\"\u003e55194fb\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eExperimental rolldown config (\u003ca href=\"https://github.com/unjs/jiti/commit/8c0243f\"\u003e8c0243f\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🏡 Chore\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix lint issues (\u003ca href=\"https://github.com/unjs/jiti/commit/4045c7a\"\u003e4045c7a\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eUpdate deps (\u003ca href=\"https://github.com/unjs/jiti/commit/e88ac44\"\u003ee88ac44\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eUpdate deps (\u003ca href=\"https://github.com/unjs/jiti/commit/498e8d7\"\u003e498e8d7\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd missing prettier dep (\u003ca href=\"https://github.com/unjs/jiti/commit/650bc48\"\u003e650bc48\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eLint (\u003ca href=\"https://github.com/unjs/jiti/commit/058d91a\"\u003e058d91a\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eInit agents.md (\u003ca href=\"https://github.com/unjs/jiti/commit/c49c54e\"\u003ec49c54e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eUpdate agents.md (\u003ca href=\"https://github.com/unjs/jiti/commit/4deba16\"\u003e4deba16\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eUpdate deps (\u003ca href=\"https://github.com/unjs/jiti/commit/08fc868\"\u003e08fc868\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eUpdate tsconfig (\u003ca href=\"https://github.com/unjs/jiti/commit/8c7822e\"\u003e8c7822e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eUpdate release script (\u003ca href=\"https://github.com/unjs/jiti/commit/27fe3f2\"\u003e27fe3f2\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e✅ Tests\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eIgnore jsx test for bun/cjs (\u003ca href=\"https://github.com/unjs/jiti/commit/3a744ca\"\u003e3a744ca\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eUpdate (\u003ca href=\"https://github.com/unjs/jiti/commit/9ee314f\"\u003e9ee314f\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🤖 CI\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpdate node test matrix (\u003ca href=\"https://github.com/unjs/jiti/commit/0abda72\"\u003e0abda72\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e❤️ Contributors\u003c/h3\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/unjs/jiti/commit/fd3bb289b75ed207edfb686d671ed50144f7e90f\"\u003e\u003ccode\u003efd3bb28\u003c/code\u003e\u003c/a\u003e chore(release): v2.7.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/unjs/jiti/commit/27fe3f2a496b712674061c767f21ceaf34d39d83\"\u003e\u003ccode\u003e27fe3f2\u003c/code\u003e\u003c/a\u003e chore: update release script\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/unjs/jiti/commit/4fcd2f23aa31d2e1ece4b307350b8c1d72a26870\"\u003e\u003ccode\u003e4fcd2f2\u003c/code\u003e\u003c/a\u003e fix: fallback for \u003ccode\u003eENAMETOOLONG\u003c/code\u003e when evaluating esm (\u003ca href=\"https://redirect.github.com/unjs/jiti/issues/429\"\u003e#429\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/unjs/jiti/commit/8c0243f14e65193fceb023b81aed5c9a820ee2cb\"\u003e\u003ccode\u003e8c0243f\u003c/code\u003e\u003c/a\u003e build: experimental rolldown config\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/unjs/jiti/commit/55194fbb97b56af50ae1c19735ee3b06110b3903\"\u003e\u003ccode\u003e55194fb\u003c/code\u003e\u003c/a\u003e build: upgrade rspack\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/unjs/jiti/commit/0abda72c11fa31654ae17f255f9a854e4b706018\"\u003e\u003ccode\u003e0abda72\u003c/code\u003e\u003c/a\u003e ci: update node test matrix\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/unjs/jiti/commit/8c7822ef2ff03669c31de2fedfcf6676970f5b2a\"\u003e\u003ccode\u003e8c7822e\u003c/code\u003e\u003c/a\u003e chore: update tsconfig\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/unjs/jiti/commit/08fc868c928d65fb615800e51b0ec1ac78f83a69\"\u003e\u003ccode\u003e08fc868\u003c/code\u003e\u003c/a\u003e chore: update deps\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/unjs/jiti/commit/5d552e3bebf9ffcd3fb9f176364fce7b4e35134d\"\u003e\u003ccode\u003e5d552e3\u003c/code\u003e\u003c/a\u003e feat: add \u003ccode\u003ejiti/static\u003c/code\u003e export (\u003ca href=\"https://redirect.github.com/unjs/jiti/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/unjs/jiti/commit/ae790b0214512857e40e8b3078b63a7d65f7f2c9\"\u003e\u003ccode\u003eae790b0\u003c/code\u003e\u003c/a\u003e feat: support virtual modules option (\u003ca href=\"https://redirect.github.com/unjs/jiti/issues/428\"\u003e#428\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/unjs/jiti/compare/v2.6.1...v2.7.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `lint-staged` from 16.2.7 to 17.0.4\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/lint-staged/lint-staged/releases\"\u003elint-staged's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev17.0.4\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/lint-staged/lint-staged/pull/1788\"\u003e#1788\u003c/a\u003e \u003ca href=\"https://github.com/lint-staged/lint-staged/commit/f95c1f8df3368758c44c2052e568aac1b3d4c767\"\u003e\u003ccode\u003ef95c1f8\u003c/code\u003e\u003c/a\u003e - Another fix for making sure \u003cem\u003elint-staged\u003c/em\u003e adds task modifications correctly to the commit in the following cases:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eafter editing \u003ccode\u003e\u0026lt;file\u0026gt;\u003c/code\u003e it is staged with \u003ccode\u003egit add \u0026lt;file\u0026gt;\u003c/code\u003e, and then committed with \u003ccode\u003egit commit\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eafter editing \u003ccode\u003e\u0026lt;file\u0026gt;\u003c/code\u003e it is committed with \u003ccode\u003egit commit --all\u003c/code\u003e without explicit \u003ccode\u003egit add\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eafter editing \u003ccode\u003e\u0026lt;file\u0026gt;\u003c/code\u003e it is committed with \u003ccode\u003egit commit \u0026lt;pathspec\u0026gt;\u003c/code\u003e without explicit \u003ccode\u003egit add\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eThere's new test cases which actually setup the Git \u003ccode\u003epre_commit\u003c/code\u003e hook to run \u003cem\u003elint-staged\u003c/em\u003e and verify them. These issues started in \u003cstrong\u003ev17.0.0\u003c/strong\u003e when trying to improve support for committig without having explicitly staged files.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev17.0.3\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/lint-staged/lint-staged/pull/1782\"\u003e#1782\u003c/a\u003e \u003ca href=\"https://github.com/lint-staged/lint-staged/commit/06813f9ab661db987e7720086ef9ec3f552ee097\"\u003e\u003ccode\u003e06813f9\u003c/code\u003e\u003c/a\u003e Thanks \u003ca href=\"https://github.com/iiroj\"\u003e\u003ccode\u003e@​iiroj\u003c/code\u003e\u003c/a\u003e! - Fix \u003cem\u003elint-staged\u003c/em\u003e behavior when implicitly committing files without using \u003ccode\u003egit add\u003c/code\u003e by either:\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003egit commit -am \u0026quot;my commit message\u0026quot;\u003c/code\u003e where \u003ccode\u003e-a\u003c/code\u003e (\u003ccode\u003e--all\u003c/code\u003e) means to automatically stage all tracked modified and deleted files\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003egit commit -m \u0026quot;my commit message\u0026quot; .\u003c/code\u003e where \u003ccode\u003e.\u003c/code\u003e is an example of a \u003ca href=\"https://git-scm.com/docs/git-commit#Documentation/git-commit.txt-pathspec\"\u003e\u003cem\u003epathspec\u003c/em\u003e\u003c/a\u003e where matching files will be staged\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev17.0.2\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/lint-staged/lint-staged/pull/1779\"\u003e#1779\u003c/a\u003e \u003ca href=\"https://github.com/lint-staged/lint-staged/commit/88670ca2278200f6348ed663358895ddc4bfff3c\"\u003e\u003ccode\u003e88670ca\u003c/code\u003e\u003c/a\u003e Thanks \u003ca href=\"https://github.com/iiroj\"\u003e\u003ccode\u003e@​iiroj\u003c/code\u003e\u003c/a\u003e! - Enable immutable GitHub releases\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev17.0.1\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/lint-staged/lint-staged/pull/1776\"\u003e#1776\u003c/a\u003e \u003ca href=\"https://github.com/lint-staged/lint-staged/commit/4a5664be63af19590ec37940f705dad870ac5cfb\"\u003e\u003ccode\u003e4a5664b\u003c/code\u003e\u003c/a\u003e Thanks \u003ca href=\"https://github.com/iiroj\"\u003e\u003ccode\u003e@​iiroj\u003c/code\u003e\u003c/a\u003e! - Adjust GitHub Actions workflow so that automatic publishing works with signed commits.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev17.0.0\u003c/h2\u003e\n\u003ch3\u003eMajor Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/lint-staged/lint-staged/pull/1745\"\u003e#1745\u003c/a\u003e \u003ca href=\"https://github.com/lint-staged/lint-staged/commit/e244adfab430be95803e74b20acf518517054c9f\"\u003e\u003ccode\u003ee244adf\u003c/code\u003e\u003c/a\u003e Thanks \u003ca href=\"https://github.com/iiroj\"\u003e\u003ccode\u003e@​iiroj\u003c/code\u003e\u003c/a\u003e! - \u003cstrong\u003eNode.js v20 is no longer supported, and the oldest supported version is now \u003ccode\u003e22.22.1\u003c/code\u003e\u003c/strong\u003e, which is an active LTS version at the time of this release. Node.js 20 will be EOL after April 2026. Please upgrade your Node.js version!\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/lint-staged/lint-staged/pull/1676\"\u003e#1676\u003c/a\u003e \u003ca href=\"https://github.com/lint-staged/lint-staged/commit/0584e0b8824a07ea4d0151f2c17fc37c4905a421\"\u003e\u003ccode\u003e0584e0b\u003c/code\u003e\u003c/a\u003e Thanks \u003ca href=\"https://github.com/outslept\"\u003e\u003ccode\u003e@​outslept\u003c/code\u003e\u003c/a\u003e! - \u003cem\u003eLint-staged\u003c/em\u003e now tries to verify the installed Git version is at least \u003ccode\u003e2.32.0\u003c/code\u003e, released in 2021. If you're using an even older Git version, you need to \u003ca href=\"https://git-scm.com/install/mac\"\u003eupgrade\u003c/a\u003e it before running \u003cem\u003elint-staged\u003c/em\u003e!\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/lint-staged/lint-staged/pull/1745\"\u003e#1745\u003c/a\u003e \u003ca href=\"https://github.com/lint-staged/lint-staged/commit/2dcc40a1a98aea20d38f76031ac30b278f81682a\"\u003e\u003ccode\u003e2dcc40a\u003c/code\u003e\u003c/a\u003e Thanks \u003ca href=\"https://github.com/iiroj\"\u003e\u003ccode\u003e@​iiroj\u003c/code\u003e\u003c/a\u003e! - The dependency \u003ccode\u003eyaml\u003c/code\u003e is now marked as optional and probably won't be installed by default. If you're using a YAML configuration file you should install the package separately:\u003c/p\u003e\n\u003cpre lang=\"shell\"\u003e\u003ccode\u003enpm install --development yaml\r\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eIf you're using \u003ccode\u003e.lintstagedrc\u003c/code\u003e as the config file name (without a file extension), it will be treated as a YAML file. If the content is JSON, consider renaming it to \u003ccode\u003e.lintstagedrc.json\u003c/code\u003e to avoid needing to install \u003ccode\u003eyaml\u003c/code\u003e.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eMinor Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/lint-staged/lint-staged/pull/1748\"\u003e#1748\u003c/a\u003e \u003ca href=\"https://github.com/lint-staged/lint-staged/commit/809d5ef0a66edb2b26b233d33ce8e14af6c978e7\"\u003e\u003ccode\u003e809d5ef\u003c/code\u003e\u003c/a\u003e Thanks \u003ca href=\"https://github.com/iiroj\"\u003e\u003ccode\u003e@​iiroj\u003c/code\u003e\u003c/a\u003e! - Add new option \u003ccode\u003e--hide-all\u003c/code\u003e for hiding all unstaged changes and untracked files, before running tasks. This makes it easier to run tools like \u003ca href=\"https://knip.dev\"\u003eKnip\u003c/a\u003e which check for unused code. Untracked files are included in the backup stash and restored automatically after running.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/lint-staged/lint-staged/pull/1759\"\u003e#1759\u003c/a\u003e \u003ca href=\"https://github.com/lint-staged/lint-staged/commit/f13045a5eae28c3233fc37146b0e1f51739c254b\"\u003e\u003ccode\u003ef13045a\u003c/code\u003e\u003c/a\u003e Thanks \u003ca href=\"https://github.com/iiroj\"\u003e\u003ccode\u003e@​iiroj\u003c/code\u003e\u003c/a\u003e! - Update dependencies, including \u003ca href=\"https://github.com/tinylibs/tinyexec/releases/tag/1.1.1\"\u003e\u003ccode\u003etinyexec@1.1.1\u003c/code\u003e\u003c/a\u003e to fix the following issues:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eWhen using a Node.js version manager with multiple versions installed (\u003ca href=\"https://github.com/nvm-sh/nvm\"\u003envm\u003c/a\u003e, \u003ca href=\"https://github.com/tj/n\"\u003en\u003c/a\u003e, for example), scripts with the \u003ccode\u003e#!/usr/bin/env node\u003c/code\u003e shebang (\u003ca href=\"https://github.com/prettier/prettier\"\u003ePrettier\u003c/a\u003e, \u003ca href=\"https://github.com/eslint/eslint\"\u003eESLint\u003c/a\u003e, for example) were previously spawned using the default Node.js version configured by the version manager (the one \u003ccode\u003ewhich node\u003c/code\u003e points to) on POSIX systems. Now, they will be spawned with the same version that \u003cem\u003elint-staged\u003c/em\u003e itself was started with.\n\u003cul\u003e\n\u003cli\u003eFor example, if your default Node.js version is 24.14.1 but \u003cem\u003elint-staged\u003c/em\u003e is run with the latest version 25.9.0, the tasks spawned by \u003cem\u003elint-staged\u003c/em\u003e will now also use version 25.9.0. Previously they were spawned using 24.14.1.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/lint-staged/lint-staged/blob/main/CHANGELOG.md\"\u003elint-staged's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e17.0.4\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/lint-staged/lint-staged/pull/1788\"\u003e#1788\u003c/a\u003e \u003ca href=\"https://github.com/lint-staged/lint-staged/commit/f95c1f8df3368758c44c2052e568aac1b3d4c767\"\u003e\u003ccode\u003ef95c1f8\u003c/code\u003e\u003c/a\u003e - Another fix for making sure \u003cem\u003elint-staged\u003c/em\u003e adds task modifications correctly to the commit in the following cases:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eafter editing \u003ccode\u003e\u0026lt;file\u0026gt;\u003c/code\u003e it is staged with \u003ccode\u003egit add \u0026lt;file\u0026gt;\u003c/code\u003e, and then committed with \u003ccode\u003egit commit\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eafter editing \u003ccode\u003e\u0026lt;file\u0026gt;\u003c/code\u003e it is committed with \u003ccode\u003egit commit --all\u003c/code\u003e without explicit \u003ccode\u003egit add\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eafter editing \u003ccode\u003e\u0026lt;file\u0026gt;\u003c/code\u003e it is committed with \u003ccode\u003egit commit \u0026lt;pathspec\u0026gt;\u003c/code\u003e without explicit \u003ccode\u003egit add\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eThere's new test cases which actually setup the Git \u003ccode\u003epre_commit\u003c/code\u003e hook to run \u003cem\u003elint-staged\u003c/em\u003e and verify them. These issues started in \u003cstrong\u003ev17.0.0\u003c/strong\u003e when trying to improve support for committig without having explicitly staged files.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e17.0.3\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/lint-staged/lint-staged/pull/1782\"\u003e#1782\u003c/a\u003e \u003ca href=\"https://github.com/lint-staged/lint-staged/commit/06813f9ab661db987e7720086ef9ec3f552ee097\"\u003e\u003ccode\u003e06813f9\u003c/code\u003e\u003c/a\u003e Thanks \u003ca href=\"https://github.com/iiroj\"\u003e\u003ccode\u003e@​iiroj\u003c/code\u003e\u003c/a\u003e! - Fix \u003cem\u003elint-staged\u003c/em\u003e behavior when implicitly committing files without using \u003ccode\u003egit add\u003c/code\u003e by either:\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003egit commit -am \u0026quot;my commit message\u0026quot;\u003c/code\u003e where \u003ccode\u003e-a\u003c/code\u003e (\u003ccode\u003e--all\u003c/code\u003e) means to automatically stage all tracked modified and deleted files\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003egit commit -m \u0026quot;my commit message\u0026quot; .\u003c/code\u003e where \u003ccode\u003e.\u003c/code\u003e is an example of a \u003ca href=\"https://git-scm.com/docs/git-commit#Documentation/git-commit.txt-pathspec\"\u003e\u003cem\u003epathspec\u003c/em\u003e\u003c/a\u003e where matching files will be staged\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e17.0.2\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/lint-staged/lint-staged/pull/1779\"\u003e#1779\u003c/a\u003e \u003ca href=\"https://github.com/lint-staged/lint-staged/commit/88670ca2278200f6348ed663358895ddc4bfff3c\"\u003e\u003ccode\u003e88670ca\u003c/code\u003e\u003c/a\u003e Thanks \u003ca href=\"https://github.com/iiroj\"\u003e\u003ccode\u003e@​iiroj\u003c/code\u003e\u003c/a\u003e! - Enable immutable GitHub releases\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e17.0.1\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/lint-staged/lint-staged/pull/1776\"\u003e#1776\u003c/a\u003e \u003ca href=\"https://github.com/lint-staged/lint-staged/commit/4a5664be63af19590ec37940f705dad870ac5cfb\"\u003e\u003ccode\u003e4a5664b\u003c/code\u003e\u003c/a\u003e Thanks \u003ca href=\"https://github.com/iiroj\"\u003e\u003ccode\u003e@​iiroj\u003c/code\u003e\u003c/a\u003e! - Adjust GitHub Actions workflow so that automatic publishing works with signed commits.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e17.0.0\u003c/h2\u003e\n\u003ch3\u003eMajor Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/lint-staged/lint-staged/pull/1745\"\u003e#1745\u003c/a\u003e \u003ca href=\"https://github.com/lint-staged/lint-staged/commit/e244adfab430be95803e74b20acf518517054c9f\"\u003e\u003ccode\u003ee244adf\u003c/code\u003e\u003c/a\u003e Thanks \u003ca href=\"https://github.com/iiroj\"\u003e\u003ccode\u003e@​iiroj\u003c/code\u003e\u003c/a\u003e! - \u003cstrong\u003eNode.js v20 is no longer supported, and the oldest supported version is now \u003ccode\u003e22.22.1\u003c/code\u003e\u003c/strong\u003e, which is an active LTS version at the time of this release. Node.js 20 will be EOL after April 2026. Please upgrade your Node.js version!\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/lint-staged/lint-staged/pull/1676\"\u003e#1676\u003c/a\u003e \u003ca href=\"https://github.com/lint-staged/lint-staged/commit/0584e0b8824a07ea4d0151f2c17fc37c4905a421\"\u003e\u003ccode\u003e0584e0b\u003c/code\u003e\u003c/a\u003e Thanks \u003ca href=\"https://github.com/outslept\"\u003e\u003ccode\u003e@​outslept\u003c/code\u003e\u003c/a\u003e! - \u003cem\u003eLint-staged\u003c/em\u003e now tries to verify the installed Git version is at least \u003ccode\u003e2.32.0\u003c/code\u003e, released in 2021. If you're using an even older Git version, you need to \u003ca href=\"https://git-scm.com/install/mac\"\u003eupgrade\u003c/a\u003e it before running \u003cem\u003elint-staged\u003c/em\u003e!\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/lint-staged/lint-staged/pull/1745\"\u003e#1745\u003c/a\u003e \u003ca href=\"https://github.com/lint-staged/lint-staged/commit/2dcc40a1a98aea20d38f76031ac30b278f81682a\"\u003e\u003ccode\u003e2dcc40a\u003c/code\u003e\u003c/a\u003e Thanks \u003ca href=\"https://github.com/iiroj\"\u003e\u003ccode\u003e@​iiroj\u003c/code\u003e\u003c/a\u003e! - The dependency \u003ccode\u003eyaml\u003c/code\u003e is now marked as optional and probably won't be installed by default. If you're using a YAML configuration file you should install the package separately:\u003c/p\u003e\n\u003cpre lang=\"shell\"\u003e\u003ccode\u003enpm install --development yaml\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eIf you're using \u003ccode\u003e.lintstagedrc\u003c/code\u003e as the config file name (without a file extension), it will be treated as a YAML file. If the content is JSON, consider renaming it to \u003ccode\u003e.lintstagedrc.json\u003c/code\u003e to avoid needing to install \u003ccode\u003eyaml\u003c/code\u003e.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eMinor Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/lint-staged/lint-staged/pull/1748\"\u003e#1748\u003c/a\u003e \u003ca href=\"https://github.com/lint-staged/lint-staged/commit/809d5ef0a66edb2b26b233d33ce8e14af6c978e7\"\u003e\u003ccode\u003e809d5ef\u003c/code\u003e\u003c/a\u003e Thanks \u003ca href=\"https://github.com/iiroj\"\u003e\u003ccode\u003e@​iiroj\u003c/code\u003e\u003c/a\u003e! - Add new option \u003ccode\u003e--hide-all\u003c/code\u003e for hiding all unstaged changes and untracked files, before running tasks. This makes it easier to run tools like \u003ca href=\"https://knip.dev\"\u003eKnip\u003c/a\u003e which check for unused code. Untracked files are included in the backup stash and restored automatically after running.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/lint-staged/lint-staged/commit/2862964b2429df8df2aae05ff7b73cf69f440c90\"\u003e\u003ccode\u003e2862964\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/lint-staged/lint-staged/issues/1789\"\u003e#1789\u003c/a\u003e from lint-staged/changeset-release/main\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/lint-staged/lint-staged/commit/c9ecd54417e1fb698fba0377c912a5ac819a51b8\"\u003e\u003ccode\u003ec9ecd54\u003c/code\u003e\u003c/a\u003e chore(changeset): release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/lint-staged/lint-staged/commit/cc6b51ab2d1564ebe27f47a9eba02b74353805bc\"\u003e\u003ccode\u003ecc6b51a\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/lint-staged/lint-staged/issues/1788\"\u003e#1788\u003c/a\u003e from lint-staged/fix-update-index-again\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/lint-staged/lint-staged/commit/f95c1f8df3368758c44c2052e568aac1b3d4c767\"\u003e\u003ccode\u003ef95c1f8\u003c/code\u003e\u003c/a\u003e fix: update both default index.lock and non-standard lock when latter exists\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/lint-staged/lint-staged/commit/f44ee688dd1c7070f32cde8ca1f910d7f8a96e3e\"\u003e\u003ccode\u003ef44ee68\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/lint-staged/lint-staged/issues/1786\"\u003e#1786\u003c/a\u003e from lint-staged/update-repo-url\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/lint-staged/lint-staged/commit/a61cf18ea5af3bfa06623bed1f80217fe3865871\"\u003e\u003ccode\u003ea61cf18\u003c/code\u003e\u003c/a\u003e build(deps): update dependencies\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/lint-staged/lint-staged/commit/ea00037e1f399f7b36252e0c558c9d3dbb026435\"\u003e\u003ccode\u003eea00037\u003c/code\u003e\u003c/a\u003e docs: disable Changesets \u0026quot;thanks\u0026quot;\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/lint-staged/lint-staged/commit/ab7c26c826f9e97823bab42aac0515f2b4b9f0f6\"\u003e\u003ccode\u003eab7c26c\u003c/code\u003e\u003c/a\u003e docs: update repo URL to point in \u003ccode\u003elint-staged/lint-staged\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/lint-staged/lint-staged/commit/a36ec1eab4e2a24f7599377a11b0b3cb0f692bd0\"\u003e\u003ccode\u003ea36ec1e\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/lint-staged/lint-staged/issues/1783\"\u003e#1783\u003c/a\u003e from lint-staged/changeset-release/main\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/lint-staged/lint-staged/commit/03ce2a9dea52523f3cc69bf279d1049558859272\"\u003e\u003ccode\u003e03ce2a9\u003c/code\u003e\u003c/a\u003e chore(changeset): release\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/lint-staged/lint-staged/compare/v16.2.7...v17.0.4\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `mermaid` from 11.12.3 to 11.14.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/mermaid-js/mermaid/releases\"\u003emermaid's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003emermaid@11.14.0\u003c/h2\u003e\n\u003cp\u003eThanks to our awesome mermaid community that contributed to this release: \u003ca href=\"https://github.com/ashishjain0512\"\u003e\u003ccode\u003e@​ashishjain0512\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/tractorjuice\"\u003e\u003ccode\u003e@​tractorjuice\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/autofix-ci%5Bbot%5D\"\u003e\u003ccode\u003e@​autofix-ci[bot]\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/aloisklink\"\u003e\u003ccode\u003e@​aloisklink\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/knsv\"\u003e\u003ccode\u003e@​knsv\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/kibanana\"\u003e\u003ccode\u003e@​kibanana\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/chandershekhar22\"\u003e\u003ccode\u003e@​chandershekhar22\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/khalil\"\u003e\u003ccode\u003e@​khalil\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/ytatsuno\"\u003e\u003ccode\u003e@​ytatsuno\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/sidharthv96\"\u003e\u003ccode\u003e@​sidharthv96\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/github-actions%5Bbot%5D\"\u003e\u003ccode\u003e@​github-actions[bot]\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/dripcoding\"\u003e\u003ccode\u003e@​dripcoding\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/knsv-bot\"\u003e\u003ccode\u003e@​knsv-bot\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/jeroensmink98\"\u003e\u003ccode\u003e@​jeroensmink98\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/Alex9583\"\u003e\u003ccode\u003e@​Alex9583\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/GhassenS\"\u003e\u003ccode\u003e@​GhassenS\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/omkarht\"\u003e\u003ccode\u003e@​omkarht\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/darshanr0107\"\u003e\u003ccode\u003e@​darshanr0107\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/leentaylor\"\u003e\u003ccode\u003e@​leentaylor\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/lee-treehouse\"\u003e\u003ccode\u003e@​lee-treehouse\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/veeceey\"\u003e\u003ccode\u003e@​veeceey\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/turntrout\"\u003e\u003ccode\u003e@​turntrout\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/Mermaid-Chart\"\u003e\u003ccode\u003e@​Mermaid-Chart\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/BambioGaming\"\u003e\u003ccode\u003e@​BambioGaming\u003c/code\u003e\u003c/a\u003e, Claude\u003c/p\u003e\n\u003ch1\u003eReleases\u003c/h1\u003e\n\u003ch2\u003e\u003ccode\u003e@​mermaid-js/examples\u003c/code\u003e\u003ca href=\"https://github.com/1\"\u003e\u003ccode\u003e@​1\u003c/code\u003e\u003c/a\u003e.2.0\u003c/h2\u003e\n\u003ch3\u003eMinor Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/mermaid-js/mermaid/pull/7526\"\u003e#7526\u003c/a\u003e \u003ca href=\"https://github.com/mermaid-js/mermaid/commit/efe218a47fb5a4c2bd5489b48ce69213b141e519\"\u003e\u003ccode\u003eefe218a\u003c/code\u003e\u003c/a\u003e - add new TreeView diagram\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003emermaid@11.14.0\u003c/h2\u003e\n\u003ch3\u003eMinor Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/mermaid-js/mermaid/pull/7526\"\u003e#7526\u003c/a\u003e \u003ca href=\"https://github.com/mermaid-js/mermaid/commit/efe218a47fb5a4c2bd5489b48ce69213b141e519\"\u003e\u003ccode\u003eefe218a\u003c/code\u003e\u003c/a\u003e - Add Wardley Maps diagram type (beta)\u003c/p\u003e\n\u003cp\u003eAdds Wardley Maps as a new diagram type to Mermaid (available as \u003ccode\u003ewardley-beta\u003c/code\u003e). Wardley Maps are visual representations of business strategy that help map value chains and component evolution.\u003c/p\u003e\n\u003cp\u003eFeatures:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eComponent positioning with [visibility, evolution] coordinates (OWM format)\u003c/li\u003e\n\u003cli\u003eAnchors for users/customers\u003c/li\u003e\n\u003cli\u003eMultiple link types: dependencies, flows, labeled links\u003c/li\u003e\n\u003cli\u003eEvolution arrows and trend indicators\u003c/li\u003e\n\u003cli\u003eCustom evolution stages with optional dual labels\u003c/li\u003e\n\u003cli\u003eCustom stage widths using \u003ca href=\"https://github.com/boundary\"\u003e\u003ccode\u003e@​boundary\u003c/code\u003e\u003c/a\u003e notation\u003c/li\u003e\n\u003cli\u003ePipeline components with visibility inheritance\u003c/li\u003e\n\u003cli\u003eAnnotations, notes, and visual elements\u003c/li\u003e\n\u003cli\u003eSource strategy markers: build, buy, outsource, market\u003c/li\u003e\n\u003cli\u003eInertia indicators\u003c/li\u003e\n\u003cli\u003eTheme integration\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eImplementation includes parser, D3.js renderer, unit tests, E2E tests, and comprehensive documentation.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/mermaid-js/mermaid/pull/7526\"\u003e#7526\u003c/a\u003e \u003ca href=\"https://github.com/mermaid-js/mermaid/commit/efe218a47fb5a4c2bd5489b48ce69213b141e519\"\u003e\u003ccode\u003eefe218a\u003c/code\u003e\u003c/a\u003e  - feat: implement neo look styling for state diagrams\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/mermaid-js/mermaid/pull/7526\"\u003e#7526\u003c/a\u003e \u003ca href=\"https://github.com/mermaid-js/mermaid/commit/efe218a47fb5a4c2bd5489b48ce69213b141e519\"\u003e\u003ccode\u003eefe218a\u003c/code\u003e\u003c/a\u003e  - feat: implement neo look support for sequence diagrams with drop shadows, and enhanced styling\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/mermaid-js/mermaid/pull/7526\"\u003e#7526\u003c/a\u003e \u003ca href=\"https://github.com/mermaid-js/mermaid/commit/efe218a47fb5a4c2bd5489b48ce69213b141e519\"\u003e\u003ccode\u003eefe218a\u003c/code\u003e\u003c/a\u003e  - feat: add \u003ccode\u003erandomize\u003c/code\u003e config option for architecture diagrams, defaulting to \u003ccode\u003efalse\u003c/code\u003e for deterministic layout\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/mermaid-js/mermaid/pull/7526\"\u003e#7526\u003c/a\u003e \u003ca href=\"https://github.com/mermaid-js/mermaid/commit/efe218a47fb5a4c2bd5489b48ce69213b141e519\"\u003e\u003ccode\u003eefe218a\u003c/code\u003e\u003c/a\u003e - feat: Add option to change timeline direction\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/mermaid-js/mermaid/pull/7526\"\u003e#7526\u003c/a\u003e \u003ca href=\"https://github.com/mermaid-js/mermaid/commit/efe218a47fb5a4c2bd5489b48ce69213b141e519\"\u003e\u003ccode\u003eefe218a\u003c/code\u003e\u003c/a\u003e  - Fix duplicate SVG element IDs when rendering multiple diagrams on the same page. Internal element IDs (nodes, edges, markers, clusters) are now prefixed with the diagram's SVG element ID across all diagram types. Custom CSS or JS using exact ID selectors like \u003ccode\u003e#arrowhead\u003c/code\u003e should use attribute-ending selectors like \u003ccode\u003e[id$=\u0026quot;-arrowhead\u0026quot;]\u003c/code\u003e instead.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/mermaid-js/mermaid/pull/7526\"\u003e#7526\u003c/a\u003e \u003ca href=\"https://github.com/mermaid-js/mermaid/commit/efe218a47fb5a4c2bd5489b48ce69213b141e519\"\u003e\u003ccode\u003eefe218a\u003c/code\u003e\u003c/a\u003e  - feat: implement neo look styling for ER diagrams\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/mermaid-js/mermaid/pull/7526\"\u003e#7526\u003c/a\u003e \u003ca href=\"https://github.com/mermaid-js/mermaid/commit/efe218a47fb5a4c2bd5489b48ce69213b141e519\"\u003e\u003ccode\u003eefe218a\u003c/code\u003e\u003c/a\u003e  - feat: implement neo look styling for requirement diagrams\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/mermaid-js/mermaid/pull/7526\"\u003e#7526\u003c/a\u003e \u003ca href=\"https://github.com/mermaid-js/mermaid/commit/efe218a47fb5a4c2bd5489b48ce69213b141e519\"\u003e\u003ccode\u003eefe218a\u003c/code\u003e\u003c/a\u003e - feat: add theme support for data label colour in xy chart\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mermaid-js/mermaid/commit/2b9d054d622101a727b03c5d47a15f3bd98125fa\"\u003e\u003ccode\u003e2b9d054\u003c/code\u003e\u003c/a\u003e Version Packages (\u003ca href=\"https://redirect.github.com/mermaid-js/mermaid/issues/7561\"\u003e#7561\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mermaid-js/mermaid/commit/efe218a47fb5a4c2bd5489b48ce69213b141e519\"\u003e\u003ccode\u003eefe218a\u003c/code\u003e\u003c/a\u003e Release candidate 11.14.0 (\u003ca href=\"https://redirect.github.com/mermaid-js/mermaid/issues/7526\"\u003e#7526\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mermaid-js/mermaid/commit/d2b5b2b9292b3b0e1e15fe2819d13b4cae7a6893\"\u003e\u003ccode\u003ed2b5b2b\u003c/code\u003e\u003c/a\u003e chore: Editor Picker V2 (\u003ca href=\"https://redirect.github.com/mermaid-js/mermaid/issues/7497\"\u003e#7497\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mermaid-js/mermaid/commit/07c554e2b4c1589f4e0fb1031868ea8ffee2742d\"\u003e\u003ccode\u003e07c554e\u003c/code\u003e\u003c/a\u003e Setting the link to Get started to the correct on\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mermaid-js/mermaid/commit/b1a5e9be56b58ae87e5341898c139c90bc35ed17\"\u003e\u003ccode\u003eb1a5e9b\u003c/code\u003e\u003c/a\u003e Version Packages (\u003ca href=\"https://redirect.github.com/mermaid-js/mermaid/issues/7466\"\u003e#7466\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mermaid-js/mermaid/commit/bdd7abdb177c38d0c77239d52cc6ca10344d89b2\"\u003e\u003ccode\u003ebdd7abd\u003c/code\u003e\u003c/a\u003e fix: use correct package name for elk\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mermaid-js/mermaid/commit/a900618c924616d89fad37d99795af7ebce5d478\"...\n\n_Description has been truncated_","html_url":"https://github.com/ACT-House-Engineering/gsu-hackathon/pull/5","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/ACT-House-Engineering%2Fgsu-hackathon/issues/5","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/5/packages"},{"uuid":"4418153705","node_id":"PR_kwDORgtRS87aHH0O","number":9,"state":"closed","title":"deps(deps): bump the all-dependencies group across 1 directory with 65 updates","user":"dependabot[bot]","labels":[],"assignees":[],"locked":false,"comments_count":2,"pull_request":true,"closed_at":"2026-05-18T05:23:49.000Z","author_association":null,"state_reason":null,"created_at":"2026-05-11T04:51:55.000Z","updated_at":"2026-05-18T05:23:50.000Z","time_to_close":606714,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"deps(deps): bump","group_name":"all-dependencies","update_count":65,"packages":[{"name":"@eslint-react/eslint-plugin","old_version":"2.13.0","new_version":"5.7.5","repository_url":"https://github.com/Rel1cx/eslint-react"},{"name":"@eslint/js","old_version":"9.39.2","new_version":"10.0.1","repository_url":"https://github.com/eslint/eslint"},{"name":"@typescript-eslint/eslint-plugin","old_version":"8.56.0","new_version":"8.59.2","repository_url":"https://github.com/typescript-eslint/typescript-eslint"},{"name":"@typescript-eslint/parser","old_version":"8.56.0","new_version":"8.59.2","repository_url":"https://github.com/typescript-eslint/typescript-eslint"},{"name":"eslint","old_version":"9.39.2","new_version":"10.3.0","repository_url":"https://github.com/eslint/eslint"},{"name":"eslint-plugin-react-hooks","old_version":"7.0.1","new_version":"7.1.1","repository_url":"https://github.com/facebook/react"},{"name":"globals","old_version":"17.3.0","new_version":"17.6.0","repository_url":"https://github.com/sindresorhus/globals"},{"name":"graphql","old_version":"16.12.0","new_version":"16.14.0","repository_url":"https://github.com/graphql/graphql-js"},{"name":"happy-dom","old_version":"20.6.2","new_version":"20.9.0","repository_url":"https://github.com/capricorn86/happy-dom"},{"name":"jiti","old_version":"2.6.1","new_version":"2.7.0","repository_url":"https://github.com/unjs/jiti"},{"name":"lint-staged","old_version":"16.2.7","new_version":"17.0.4","repository_url":"https://github.com/lint-staged/lint-staged"},{"name":"mermaid","old_version":"11.12.3","new_version":"11.14.0","repository_url":"https://github.com/mermaid-js/mermaid"},{"name":"prettier","old_version":"3.8.1","new_version":"3.8.3","repository_url":"https://github.com/prettier/prettier"},{"name":"react","old_version":"19.2.4","new_version":"19.2.6","repository_url":"https://github.com/facebook/react"},{"name":"typescript","old_version":"5.9.3","new_version":"6.0.3","repository_url":"https://github.com/microsoft/TypeScript"},{"name":"typescript-eslint","old_version":"8.56.0","new_version":"8.59.2","repository_url":"https://github.com/typescript-eslint/typescript-eslint"},{"name":"typescript-language-server","old_version":"5.1.3","new_version":"5.2.0","repository_url":"https://github.com/typescript-language-server/typescript-language-server"},{"name":"vite","old_version":"7.3.1","new_version":"8.0.11","repository_url":"https://github.com/vitejs/vite"},{"name":"vitepress","old_version":"2.0.0-alpha.16","new_version":"2.0.0-alpha.17","repository_url":"https://github.com/vuejs/vitepress"},{"name":"vitepress-plugin-llms","old_version":"1.11.0","new_version":"1.12.2","repository_url":"https://github.com/okineadev/vitepress-plugin-llms"},{"name":"vitest","old_version":"4.0.18","new_version":"4.1.5","repository_url":"https://github.com/vitest-dev/vitest"},{"name":"wrangler","old_version":"4.66.0","new_version":"4.90.0","repository_url":"https://github.com/cloudflare/workers-sdk"},{"name":"@ai-sdk/openai","old_version":"3.0.29","new_version":"3.0.63","repository_url":"https://github.com/vercel/ai"},{"name":"@better-auth/passkey","old_version":"1.4.18","new_version":"1.6.10","repository_url":"https://github.com/better-auth/better-auth"},{"name":"@better-auth/stripe","old_version":"1.4.18","new_version":"1.6.10","repository_url":"https://github.com/better-auth/better-auth"},{"name":"@trpc/server","old_version":"11.10.0","new_version":"11.17.0","repository_url":"https://github.com/trpc/trpc"},{"name":"ai","old_version":"6.0.91","new_version":"6.0.177","repository_url":"https://github.com/vercel/ai"},{"name":"better-auth","old_version":"1.4.18","new_version":"1.6.10","repository_url":"https://github.com/better-auth/better-auth"},{"name":"drizzle-orm","old_version":"0.45.1","new_version":"0.45.2","repository_url":"https://github.com/drizzle-team/drizzle-orm"},{"name":"postgres","old_version":"3.4.8","new_version":"3.4.9","repository_url":"https://github.com/porsager/postgres"},{"name":"resend","old_version":"6.9.2","new_version":"6.12.3","repository_url":"https://github.com/resend/resend-node"},{"name":"stripe","old_version":"20.3.1","new_version":"22.1.1","repository_url":"https://github.com/stripe/stripe-node"},{"name":"@cloudflare/workers-types","old_version":"4.20260218.0","new_version":"4.20260511.1","repository_url":"https://github.com/cloudflare/workerd"},{"name":"@types/bun","old_version":"1.3.9","new_version":"1.3.13","repository_url":"https://github.com/DefinitelyTyped/DefinitelyTyped"},{"name":"hono","old_version":"4.11.10","new_version":"4.12.18","repository_url":"https://github.com/honojs/hono"},{"name":"@tanstack/react-query","old_version":"5.90.21","new_version":"5.100.9","repository_url":"https://github.com/TanStack/query"},{"name":"@tanstack/react-router","old_version":"1.161.1","new_version":"1.169.2","repository_url":"https://github.com/TanStack/router"},{"name":"@trpc/client","old_version":"11.10.0","new_version":"11.17.0","repository_url":"https://github.com/trpc/trpc"},{"name":"@trpc/tanstack-react-query","old_version":"11.10.0","new_version":"11.17.0","repository_url":"https://github.com/trpc/trpc"},{"name":"jotai","old_version":"2.17.1","new_version":"2.20.0","repository_url":"https://github.com/pmndrs/jotai"},{"name":"lucide-react","old_version":"0.574.0","new_version":"1.14.0","repository_url":"https://github.com/lucide-icons/lucide"},{"name":"react-dom","old_version":"19.2.4","new_version":"19.2.6","repository_url":"https://github.com/facebook/react"},{"name":"tailwind-merge","old_version":"3.4.1","new_version":"3.6.0","repository_url":"https://github.com/dcastil/tailwind-merge"},{"name":"@tailwindcss/postcss","old_version":"4.2.0","new_version":"4.3.0","repository_url":"https://github.com/tailwindlabs/tailwindcss"},{"name":"@tanstack/react-query-devtools","old_version":"5.91.3","new_version":"5.100.9","repository_url":"https://github.com/TanStack/query"},{"name":"@tanstack/react-router-devtools","old_version":"1.161.1","new_version":"1.166.13","repository_url":"https://github.com/TanStack/router"},{"name":"@tanstack/router-plugin","old_version":"1.161.1","new_version":"1.167.35","repository_url":"https://github.com/TanStack/router"},{"name":"@types/node","old_version":"25.2.3","new_version":"25.6.2","repository_url":"https://github.com/DefinitelyTyped/DefinitelyTyped"},{"name":"@vitejs/plugin-react","old_version":"5.1.4","new_version":"6.0.1","repository_url":"https://github.com/vitejs/vite-plugin-react"},{"name":"@vitejs/plugin-react-swc","old_version":"4.2.3","new_version":"4.3.0","repository_url":"https://github.com/vitejs/vite-plugin-react"},{"name":"autoprefixer","old_version":"10.4.24","new_version":"10.5.0","repository_url":"https://github.com/postcss/autoprefixer"},{"name":"globby","old_version":"16.1.1","new_version":"16.2.0","repository_url":"https://github.com/sindresorhus/globby"},{"name":"@react-email/components","old_version":"1.0.8","new_version":"1.0.12","repository_url":"https://github.com/resend/react-email"},{"name":"@react-email/render","old_version":"2.0.4","new_version":"2.0.8","repository_url":"https://github.com/resend/react-email"},{"name":"@react-email/preview-server","old_version":"5.2.8","new_version":"5.2.10","repository_url":"https://github.com/resend/react-email"},{"name":"react-email","old_version":"5.2.8","new_version":"6.1.1","repository_url":"https://github.com/resend/react-email"},{"name":"@astrojs/react","old_version":"4.4.2","new_version":"5.0.4","repository_url":"https://github.com/withastro/astro"},{"name":"astro","old_version":"5.17.2","new_version":"6.3.1","repository_url":"https://github.com/withastro/astro"},{"name":"dotenv","old_version":"17.3.1","new_version":"17.4.2","repository_url":"https://github.com/motdotla/dotenv"},{"name":"drizzle-kit","old_version":"0.31.9","new_version":"0.31.10","repository_url":"https://github.com/drizzle-team/drizzle-orm"},{"name":"@modelcontextprotocol/sdk","old_version":"1.26.0","new_version":"1.29.0","repository_url":"https://github.com/modelcontextprotocol/typescript-sdk"},{"name":"got","old_version":"14.6.6","new_version":"15.0.5","repository_url":"https://github.com/sindresorhus/got"}],"path":null,"ecosystem":"npm"},"body":"Bumps the all-dependencies group with 62 updates in the / directory:\n\n| Package | From | To |\n| --- | --- | --- |\n| [@eslint-react/eslint-plugin](https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin) | `2.13.0` | `5.7.5` |\n| [@eslint/js](https://github.com/eslint/eslint/tree/HEAD/packages/js) | `9.39.2` | `10.0.1` |\n| [@typescript-eslint/eslint-plugin](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin) | `8.56.0` | `8.59.2` |\n| [@typescript-eslint/parser](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/parser) | `8.56.0` | `8.59.2` |\n| [eslint](https://github.com/eslint/eslint) | `9.39.2` | `10.3.0` |\n| [eslint-plugin-react-hooks](https://github.com/facebook/react/tree/HEAD/packages/eslint-plugin-react-hooks) | `7.0.1` | `7.1.1` |\n| [globals](https://github.com/sindresorhus/globals) | `17.3.0` | `17.6.0` |\n| [graphql](https://github.com/graphql/graphql-js) | `16.12.0` | `16.14.0` |\n| [happy-dom](https://github.com/capricorn86/happy-dom) | `20.6.2` | `20.9.0` |\n| [jiti](https://github.com/unjs/jiti) | `2.6.1` | `2.7.0` |\n| [lint-staged](https://github.com/lint-staged/lint-staged) | `16.2.7` | `17.0.4` |\n| [mermaid](https://github.com/mermaid-js/mermaid) | `11.12.3` | `11.14.0` |\n| [prettier](https://github.com/prettier/prettier) | `3.8.1` | `3.8.3` |\n| [react](https://github.com/facebook/react/tree/HEAD/packages/react) | `19.2.4` | `19.2.6` |\n| [typescript](https://github.com/microsoft/TypeScript) | `5.9.3` | `6.0.3` |\n| [typescript-eslint](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/typescript-eslint) | `8.56.0` | `8.59.2` |\n| [typescript-language-server](https://github.com/typescript-language-server/typescript-language-server) | `5.1.3` | `5.2.0` |\n| [vite](https://github.com/vitejs/vite/tree/HEAD/packages/vite) | `7.3.1` | `8.0.11` |\n| [vitepress](https://github.com/vuejs/vitepress) | `2.0.0-alpha.16` | `2.0.0-alpha.17` |\n| [vitepress-plugin-llms](https://github.com/okineadev/vitepress-plugin-llms) | `1.11.0` | `1.12.2` |\n| [vitest](https://github.com/vitest-dev/vitest/tree/HEAD/packages/vitest) | `4.0.18` | `4.1.5` |\n| [wrangler](https://github.com/cloudflare/workers-sdk/tree/HEAD/packages/wrangler) | `4.66.0` | `4.90.0` |\n| [@ai-sdk/openai](https://github.com/vercel/ai/tree/HEAD/packages/openai) | `3.0.29` | `3.0.63` |\n| [@better-auth/passkey](https://github.com/better-auth/better-auth/tree/HEAD/packages/passkey) | `1.4.18` | `1.6.10` |\n| [@better-auth/stripe](https://github.com/better-auth/better-auth/tree/HEAD/packages/stripe) | `1.4.18` | `1.6.10` |\n| [@trpc/server](https://github.com/trpc/trpc/tree/HEAD/packages/server) | `11.10.0` | `11.17.0` |\n| [ai](https://github.com/vercel/ai/tree/HEAD/packages/ai) | `6.0.91` | `6.0.177` |\n| [better-auth](https://github.com/better-auth/better-auth/tree/HEAD/packages/better-auth) | `1.4.18` | `1.6.10` |\n| [drizzle-orm](https://github.com/drizzle-team/drizzle-orm) | `0.45.1` | `0.45.2` |\n| [postgres](https://github.com/porsager/postgres) | `3.4.8` | `3.4.9` |\n| [resend](https://github.com/resend/resend-node) | `6.9.2` | `6.12.3` |\n| [stripe](https://github.com/stripe/stripe-node) | `20.3.1` | `22.1.1` |\n| [@cloudflare/workers-types](https://github.com/cloudflare/workerd) | `4.20260218.0` | `4.20260511.1` |\n| [@types/bun](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/bun) | `1.3.9` | `1.3.13` |\n| [hono](https://github.com/honojs/hono) | `4.11.10` | `4.12.18` |\n| [@tanstack/react-query](https://github.com/TanStack/query/tree/HEAD/packages/react-query) | `5.90.21` | `5.100.9` |\n| [@tanstack/react-router](https://github.com/TanStack/router/tree/HEAD/packages/react-router) | `1.161.1` | `1.169.2` |\n| [@trpc/client](https://github.com/trpc/trpc/tree/HEAD/packages/client) | `11.10.0` | `11.17.0` |\n| [@trpc/tanstack-react-query](https://github.com/trpc/trpc/tree/HEAD/packages/tanstack-react-query) | `11.10.0` | `11.17.0` |\n| [jotai](https://github.com/pmndrs/jotai) | `2.17.1` | `2.20.0` |\n| [lucide-react](https://github.com/lucide-icons/lucide/tree/HEAD/packages/lucide-react) | `0.574.0` | `1.14.0` |\n| [react-dom](https://github.com/facebook/react/tree/HEAD/packages/react-dom) | `19.2.4` | `19.2.6` |\n| [tailwind-merge](https://github.com/dcastil/tailwind-merge) | `3.4.1` | `3.6.0` |\n| [@tailwindcss/postcss](https://github.com/tailwindlabs/tailwindcss/tree/HEAD/packages/@tailwindcss-postcss) | `4.2.0` | `4.3.0` |\n| [@tanstack/react-query-devtools](https://github.com/TanStack/query/tree/HEAD/packages/react-query-devtools) | `5.91.3` | `5.100.9` |\n| [@tanstack/react-router-devtools](https://github.com/TanStack/router/tree/HEAD/packages/react-router-devtools) | `1.161.1` | `1.166.13` |\n| [@tanstack/router-plugin](https://github.com/TanStack/router/tree/HEAD/packages/router-plugin) | `1.161.1` | `1.167.35` |\n| [@types/node](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/node) | `25.2.3` | `25.6.2` |\n| [@vitejs/plugin-react](https://github.com/vitejs/vite-plugin-react/tree/HEAD/packages/plugin-react) | `5.1.4` | `6.0.1` |\n| [@vitejs/plugin-react-swc](https://github.com/vitejs/vite-plugin-react/tree/HEAD/packages/plugin-react-swc) | `4.2.3` | `4.3.0` |\n| [autoprefixer](https://github.com/postcss/autoprefixer) | `10.4.24` | `10.5.0` |\n| [globby](https://github.com/sindresorhus/globby) | `16.1.1` | `16.2.0` |\n| [@react-email/components](https://github.com/resend/react-email/tree/HEAD/packages/components) | `1.0.8` | `1.0.12` |\n| [@react-email/render](https://github.com/resend/react-email/tree/HEAD/packages/render) | `2.0.4` | `2.0.8` |\n| [@react-email/preview-server](https://github.com/resend/react-email/tree/HEAD/packages/preview-server) | `5.2.8` | `5.2.10` |\n| [react-email](https://github.com/resend/react-email/tree/HEAD/packages/react-email) | `5.2.8` | `6.1.1` |\n| [@astrojs/react](https://github.com/withastro/astro/tree/HEAD/packages/integrations/react) | `4.4.2` | `5.0.4` |\n| [astro](https://github.com/withastro/astro/tree/HEAD/packages/astro) | `5.17.2` | `6.3.1` |\n| [dotenv](https://github.com/motdotla/dotenv) | `17.3.1` | `17.4.2` |\n| [drizzle-kit](https://github.com/drizzle-team/drizzle-orm) | `0.31.9` | `0.31.10` |\n| [@modelcontextprotocol/sdk](https://github.com/modelcontextprotocol/typescript-sdk) | `1.26.0` | `1.29.0` |\n| [got](https://github.com/sindresorhus/got) | `14.6.6` | `15.0.5` |\n\n\nUpdates `@eslint-react/eslint-plugin` from 2.13.0 to 5.7.5\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/Rel1cx/eslint-react/releases\"\u003e@​eslint-react/eslint-plugin's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev5.7.5 (2026-05-08)\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003ch3\u003e🏗️ Internal\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eBumped \u003ccode\u003e@eslint/compat\u003c/code\u003e from 2.0.5 to 2.1.0.\u003c/li\u003e\n\u003cli\u003eBumped \u003ccode\u003e@types/node\u003c/code\u003e from 25.6.0 to 25.6.2.\u003c/li\u003e\n\u003cli\u003eBumped \u003ccode\u003enext\u003c/code\u003e from 16.2.5 to 16.2.6.\u003c/li\u003e\n\u003cli\u003eBumped \u003ccode\u003epublint\u003c/code\u003e from 0.3.19 to 0.3.20.\u003c/li\u003e\n\u003cli\u003eBumped \u003ccode\u003etsdown\u003c/code\u003e from 0.21.10 to 0.22.0.\u003c/li\u003e\n\u003cli\u003eBumped \u003ccode\u003epnpm\u003c/code\u003e from 10.33.4 to 11.0.8.\u003c/li\u003e\n\u003cli\u003eAdjusted website styles.\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/Rel1cx/eslint-react/compare/v5.7.4...v5.7.5\"\u003ehttps://github.com/Rel1cx/eslint-react/compare/v5.7.4...v5.7.5\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev5.7.4 (2026-05-07)\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003ch3\u003e🏗️ Internal\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eBumped \u003ccode\u003e@typescript-eslint\u003c/code\u003e packages from 8.59.1 to 8.59.2.\u003c/li\u003e\n\u003cli\u003eBumped \u003ccode\u003ereact\u003c/code\u003e and \u003ccode\u003ereact-dom\u003c/code\u003e from 19.2.5 to 19.2.6.\u003c/li\u003e\n\u003cli\u003eBumped \u003ccode\u003enext\u003c/code\u003e from 16.2.4 to 16.2.5.\u003c/li\u003e\n\u003cli\u003eBumped \u003ccode\u003enx\u003c/code\u003e from 22.7.1 to 23.0.0-canary.20260506-b594537.\u003c/li\u003e\n\u003cli\u003eBumped \u003ccode\u003efumadocs-core\u003c/code\u003e and \u003ccode\u003efumadocs-ui\u003c/code\u003e from 16.8.5 to 16.8.7.\u003c/li\u003e\n\u003cli\u003eBumped \u003ccode\u003epostcss\u003c/code\u003e from 8.5.13 to 8.5.14.\u003c/li\u003e\n\u003cli\u003eBumped \u003ccode\u003epublint\u003c/code\u003e from 0.3.18 to 0.3.19.\u003c/li\u003e\n\u003cli\u003eBumped \u003ccode\u003epnpm\u003c/code\u003e from 10.33.2 to 10.33.4.\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/Rel1cx/eslint-react/compare/v5.7.3...v5.7.4\"\u003ehttps://github.com/Rel1cx/eslint-react/compare/v5.7.3...v5.7.4\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev5.7.3 (2026-05-06)\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003ch3\u003e🐞 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003e\u003ccode\u003ereact-x/immutability\u003c/code\u003e\u003c/strong\u003e: Exempted ref mutations via a naming heuristic — any object whose identifier is \u003ccode\u003eref\u003c/code\u003e or ends with \u003ccode\u003eRef\u003c/code\u003e is treated as a mutable ref and skipped from immutability checks. This fixes false positives when mutating \u003ccode\u003eRefObject\u0026lt;T\u0026gt;\u003c/code\u003e values received as props (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1752\"\u003e#1752\u003c/a\u003e, \u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1751\"\u003e#1751\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003e\u003ccode\u003ereact-x/immutability\u003c/code\u003e\u003c/strong\u003e: Added \u003ccode\u003enoRefLikeStateName\u003c/code\u003e diagnostic to prevent state variables from being named \u003ccode\u003eref\u003c/code\u003e or ending with \u003ccode\u003eRef\u003c/code\u003e, which would otherwise bypass the ref exemption heuristic (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1752\"\u003e#1752\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e📝 Documentation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFixed the full rule name in \u003ccode\u003ereact-jsx/no-key-after-spread\u003c/code\u003e documentation (\u003ccode\u003ejsx/no-key-after-spread\u003c/code\u003e → \u003ccode\u003ejsx-no-key-after-spread\u003c/code\u003e) (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1750\"\u003e#1750\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/Rel1cx/eslint-react/compare/v5.7.2...v5.7.3\"\u003ehttps://github.com/Rel1cx/eslint-react/compare/v5.7.2...v5.7.3\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev5.7.2 (2026-05-04)\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003ch3\u003e🐞 Fixes\u003c/h3\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/Rel1cx/eslint-react/blob/main/CHANGELOG.md\"\u003e@​eslint-react/eslint-plugin's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev5.7.5 (2026-05-08)\u003c/h2\u003e\n\u003ch3\u003e🏗️ Internal\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eBumped \u003ccode\u003e@eslint/compat\u003c/code\u003e from 2.0.5 to 2.1.0.\u003c/li\u003e\n\u003cli\u003eBumped \u003ccode\u003e@types/node\u003c/code\u003e from 25.6.0 to 25.6.2.\u003c/li\u003e\n\u003cli\u003eBumped \u003ccode\u003enext\u003c/code\u003e from 16.2.5 to 16.2.6.\u003c/li\u003e\n\u003cli\u003eBumped \u003ccode\u003epublint\u003c/code\u003e from 0.3.19 to 0.3.20.\u003c/li\u003e\n\u003cli\u003eBumped \u003ccode\u003etsdown\u003c/code\u003e from 0.21.10 to 0.22.0.\u003c/li\u003e\n\u003cli\u003eBumped \u003ccode\u003epnpm\u003c/code\u003e from 10.33.4 to 11.0.8.\u003c/li\u003e\n\u003cli\u003eAdjusted website styles.\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/Rel1cx/eslint-react/compare/v5.7.4...v5.7.5\"\u003ehttps://github.com/Rel1cx/eslint-react/compare/v5.7.4...v5.7.5\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev5.7.4 (2026-05-07)\u003c/h2\u003e\n\u003ch3\u003e🏗️ Internal\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eBumped \u003ccode\u003e@typescript-eslint\u003c/code\u003e packages from 8.59.1 to 8.59.2.\u003c/li\u003e\n\u003cli\u003eBumped \u003ccode\u003ereact\u003c/code\u003e and \u003ccode\u003ereact-dom\u003c/code\u003e from 19.2.5 to 19.2.6.\u003c/li\u003e\n\u003cli\u003eBumped \u003ccode\u003enext\u003c/code\u003e from 16.2.4 to 16.2.5.\u003c/li\u003e\n\u003cli\u003eBumped \u003ccode\u003enx\u003c/code\u003e from 22.7.1 to 23.0.0-canary.20260506-b594537.\u003c/li\u003e\n\u003cli\u003eBumped \u003ccode\u003efumadocs-core\u003c/code\u003e and \u003ccode\u003efumadocs-ui\u003c/code\u003e from 16.8.5 to 16.8.7.\u003c/li\u003e\n\u003cli\u003eBumped \u003ccode\u003epostcss\u003c/code\u003e from 8.5.13 to 8.5.14.\u003c/li\u003e\n\u003cli\u003eBumped \u003ccode\u003epublint\u003c/code\u003e from 0.3.18 to 0.3.19.\u003c/li\u003e\n\u003cli\u003eBumped \u003ccode\u003epnpm\u003c/code\u003e from 10.33.2 to 10.33.4.\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/Rel1cx/eslint-react/compare/v5.7.3...v5.7.4\"\u003ehttps://github.com/Rel1cx/eslint-react/compare/v5.7.3...v5.7.4\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev5.7.3 (2026-05-06)\u003c/h2\u003e\n\u003ch3\u003e🐞 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003e\u003ccode\u003ereact-x/immutability\u003c/code\u003e\u003c/strong\u003e: Exempted ref mutations via a naming heuristic — any object whose identifier is \u003ccode\u003eref\u003c/code\u003e or ends with \u003ccode\u003eRef\u003c/code\u003e is treated as a mutable ref and skipped from immutability checks. This fixes false positives when mutating \u003ccode\u003eRefObject\u0026lt;T\u0026gt;\u003c/code\u003e values received as props (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1752\"\u003e#1752\u003c/a\u003e, \u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1751\"\u003e#1751\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003e\u003ccode\u003ereact-x/immutability\u003c/code\u003e\u003c/strong\u003e: Added \u003ccode\u003enoRefLikeStateName\u003c/code\u003e diagnostic to prevent state variables from being named \u003ccode\u003eref\u003c/code\u003e or ending with \u003ccode\u003eRef\u003c/code\u003e, which would otherwise bypass the ref exemption heuristic (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1752\"\u003e#1752\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e📝 Documentation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFixed the full rule name in \u003ccode\u003ereact-jsx/no-key-after-spread\u003c/code\u003e documentation (\u003ccode\u003ejsx/no-key-after-spread\u003c/code\u003e → \u003ccode\u003ejsx-no-key-after-spread\u003c/code\u003e) (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1750\"\u003e#1750\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/Rel1cx/eslint-react/compare/v5.7.2...v5.7.3\"\u003ehttps://github.com/Rel1cx/eslint-react/compare/v5.7.2...v5.7.3\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev5.7.2 (2026-05-04)\u003c/h2\u003e\n\u003ch3\u003e🐞 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003e\u003ccode\u003ereact-x/no-unused-state\u003c/code\u003e\u003c/strong\u003e: Removed the rule from the \u003ccode\u003erecommended\u003c/code\u003e preset for now (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1747\"\u003e#1747\u003c/a\u003e, \u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1748\"\u003e#1748\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e📝 Documentation\u003c/h3\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/de60fa2e3003c60e8c4f03970b5b84c7c9c84334\"\u003e\u003ccode\u003ede60fa2\u003c/code\u003e\u003c/a\u003e release: 5.7.5\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/2b075487d7952a8662c76305b64ce677776bab34\"\u003e\u003ccode\u003e2b07548\u003c/code\u003e\u003c/a\u003e release: 5.7.5-beta.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/9e186c17a28ff1d9e02e0a22f4f6b18193ceadca\"\u003e\u003ccode\u003e9e186c1\u003c/code\u003e\u003c/a\u003e release: 5.7.5-next.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/f7b012180b71b03a69e944b39fdc88811b16839b\"\u003e\u003ccode\u003ef7b0121\u003c/code\u003e\u003c/a\u003e chore: bump dependencies and adjust website styles (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1754\"\u003e#1754\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/99736d816cdcb56dd71be0ba8440c6b12017d862\"\u003e\u003ccode\u003e99736d8\u003c/code\u003e\u003c/a\u003e release: 5.7.4\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/bcd23f09215b120a119a53eacdb12e670ee897b9\"\u003e\u003ccode\u003ebcd23f0\u003c/code\u003e\u003c/a\u003e release: 5.7.4-beta.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/52071021ab5ae079fa69fc3996ac9109a76c230a\"\u003e\u003ccode\u003e5207102\u003c/code\u003e\u003c/a\u003e release: 5.7.4-next.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/b35fba3ea0e14827433efcc6017e8eaef0ca6486\"\u003e\u003ccode\u003eb35fba3\u003c/code\u003e\u003c/a\u003e Bump dependencies: eslint, react, next, and nx packages\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/a9098f22fc1a8c7b59e3b4916d0d5ff3cb2358be\"\u003e\u003ccode\u003ea9098f2\u003c/code\u003e\u003c/a\u003e release: 5.7.3\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/677db67c648814dbc500bdd40dea84ac9efa770c\"\u003e\u003ccode\u003e677db67\u003c/code\u003e\u003c/a\u003e release: 5.7.2\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/Rel1cx/eslint-react/commits/v5.7.5/plugins/eslint-plugin\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@eslint/js` from 9.39.2 to 10.0.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/eslint/eslint/releases\"\u003e@​eslint/js's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev10.0.1\u003c/h2\u003e\n\u003ch2\u003eBug Fixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/c87d5bded54c5cf491eb04c24c9d09bbbd42c23e\"\u003e\u003ccode\u003ec87d5bd\u003c/code\u003e\u003c/a\u003e fix: update eslint (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20531\"\u003e#20531\u003c/a\u003e) (renovate[bot])\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/d84100115c14691691058f00779c94e74fca946a\"\u003e\u003ccode\u003ed841001\u003c/code\u003e\u003c/a\u003e fix: update \u003ccode\u003eminimatch\u003c/code\u003e to \u003ccode\u003e10.2.1\u003c/code\u003e to address security vulnerabilities (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20519\"\u003e#20519\u003c/a\u003e) (루밀LuMir)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/04c21475b3004904948f02049f2888b401d82c78\"\u003e\u003ccode\u003e04c2147\u003c/code\u003e\u003c/a\u003e fix: update error message for unused suppressions (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20496\"\u003e#20496\u003c/a\u003e) (fnx)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/38b089c1726feac0e31a31d47941bd99e29ce003\"\u003e\u003ccode\u003e38b089c\u003c/code\u003e\u003c/a\u003e fix: update dependency \u003ccode\u003e@​eslint/config-array\u003c/code\u003e to ^0.23.1 (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20484\"\u003e#20484\u003c/a\u003e) (renovate[bot])\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eDocumentation\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/5b3dbce50a1404a9f118afe810cefeee79388a2a\"\u003e\u003ccode\u003e5b3dbce\u003c/code\u003e\u003c/a\u003e docs: add AI acknowledgement section to templates (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20431\"\u003e#20431\u003c/a\u003e) (루밀LuMir)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/6f23076037d5879f20fb3be2ef094293b1e8d38c\"\u003e\u003ccode\u003e6f23076\u003c/code\u003e\u003c/a\u003e docs: toggle nav in no-JS mode (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20476\"\u003e#20476\u003c/a\u003e) (Tanuj Kanti)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/b69cfb32a16c5d5e9986390d484fae1d21e406f9\"\u003e\u003ccode\u003eb69cfb3\u003c/code\u003e\u003c/a\u003e docs: Update README (GitHub Actions Bot)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eChores\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/e5c281ffd038a3a7a3e5364db0b9378e0ad83020\"\u003e\u003ccode\u003ee5c281f\u003c/code\u003e\u003c/a\u003e chore: updates for v9.39.3 release (Jenkins)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/8c3832adb77cd993b4a24891900d5eeaaf093cdc\"\u003e\u003ccode\u003e8c3832a\u003c/code\u003e\u003c/a\u003e chore: update \u003ccode\u003e@​typescript-eslint/parser\u003c/code\u003e to ^8.56.0 (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20514\"\u003e#20514\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/8330d238ae6adb68bb6a1c9381e38cfedd990d94\"\u003e\u003ccode\u003e8330d23\u003c/code\u003e\u003c/a\u003e test: add tests for config-api (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20493\"\u003e#20493\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/37d6e91e88fa6a2ca6d8726679096acff21ba6cc\"\u003e\u003ccode\u003e37d6e91\u003c/code\u003e\u003c/a\u003e chore: remove eslint v10 prereleases from eslint-config-eslint deps (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20494\"\u003e#20494\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/da7cd0e79197ad16e17052eef99df141de6dbfb1\"\u003e\u003ccode\u003eda7cd0e\u003c/code\u003e\u003c/a\u003e refactor: cleanup error message templates (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20479\"\u003e#20479\u003c/a\u003e) (Francesco Trotta)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/84fb885d49ac810e79a9491276b4828b53d913e5\"\u003e\u003ccode\u003e84fb885\u003c/code\u003e\u003c/a\u003e chore: package.json update for \u003ccode\u003e@​eslint/js\u003c/code\u003e release (Jenkins)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/1f667344b57c4c09b548d94bcfac1f91b6e5c63d\"\u003e\u003ccode\u003e1f66734\u003c/code\u003e\u003c/a\u003e chore: add \u003ccode\u003eeslint\u003c/code\u003e to \u003ccode\u003epeerDependencies\u003c/code\u003e of \u003ccode\u003e@eslint/js\u003c/code\u003e (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20467\"\u003e#20467\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev10.0.0\u003c/h2\u003e\n\u003ch2\u003eBreaking Changes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/f9e54f43a5e497cdfa179338b431093245cb787b\"\u003e\u003ccode\u003ef9e54f4\u003c/code\u003e\u003c/a\u003e feat!: estimate rule-tester failure location (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20420\"\u003e#20420\u003c/a\u003e) (ST-DDT)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/a176319d8ade1a7d9b2d7fb8f038f55a2662325f\"\u003e\u003ccode\u003ea176319\u003c/code\u003e\u003c/a\u003e feat!: replace \u003ccode\u003echalk\u003c/code\u003e with \u003ccode\u003estyleText\u003c/code\u003e and add \u003ccode\u003ecolor\u003c/code\u003e to \u003ccode\u003eResultsMeta\u003c/code\u003e (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20227\"\u003e#20227\u003c/a\u003e) (루밀LuMir)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/c7046e6c1e03c4ca0eee4888a1f2eba4c6454f84\"\u003e\u003ccode\u003ec7046e6\u003c/code\u003e\u003c/a\u003e feat!: enable JSX reference tracking (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20152\"\u003e#20152\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/fa31a608901684fbcd9906d1907e66561d16e5aa\"\u003e\u003ccode\u003efa31a60\u003c/code\u003e\u003c/a\u003e feat!: add \u003ccode\u003ename\u003c/code\u003e to configs (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20015\"\u003e#20015\u003c/a\u003e) (Kirk Waiblinger)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/3383e7ec9028166cafc8ea7986c2f7498d0049f0\"\u003e\u003ccode\u003e3383e7e\u003c/code\u003e\u003c/a\u003e fix!: remove deprecated \u003ccode\u003eSourceCode\u003c/code\u003e methods (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20137\"\u003e#20137\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/501abd0e916a35554c58b7c0365537f1fa3880ce\"\u003e\u003ccode\u003e501abd0\u003c/code\u003e\u003c/a\u003e feat!: update dependency minimatch to v10 (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20246\"\u003e#20246\u003c/a\u003e) (renovate[bot])\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/ca4d3b40085de47561f89656a2207d09946ed45e\"\u003e\u003ccode\u003eca4d3b4\u003c/code\u003e\u003c/a\u003e fix!: stricter rule tester assertions for valid test cases (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20125\"\u003e#20125\u003c/a\u003e) (唯然)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/96512a66c86402fb0538cdcb6cd30b9073f6bf3b\"\u003e\u003ccode\u003e96512a6\u003c/code\u003e\u003c/a\u003e fix!: Remove deprecated rule context methods (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20086\"\u003e#20086\u003c/a\u003e) (Nicholas C. Zakas)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/c69fdacdb2e886b9d965568a397aa8220db3fe90\"\u003e\u003ccode\u003ec69fdac\u003c/code\u003e\u003c/a\u003e feat!: remove eslintrc support (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20037\"\u003e#20037\u003c/a\u003e) (Francesco Trotta)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/208b5cc34a8374ff81412b5bec2e0800eebfbd04\"\u003e\u003ccode\u003e208b5cc\u003c/code\u003e\u003c/a\u003e feat!: Use \u003ccode\u003eScopeManager#addGlobals()\u003c/code\u003e (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20132\"\u003e#20132\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/a2ee188ea7a38a0c6155f3d39e2b00e1d0f36e14\"\u003e\u003ccode\u003ea2ee188\u003c/code\u003e\u003c/a\u003e fix!: add \u003ccode\u003euniqueItems: true\u003c/code\u003e in \u003ccode\u003eno-invalid-regexp\u003c/code\u003e option (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20155\"\u003e#20155\u003c/a\u003e) (Tanuj Kanti)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/a89059dbf2832d417dd493ee81483227ec44e4ab\"\u003e\u003ccode\u003ea89059d\u003c/code\u003e\u003c/a\u003e feat!: Program range span entire source text (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20133\"\u003e#20133\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/39a6424373d915fa9de0d7b0caba9a4dc3da9b53\"\u003e\u003ccode\u003e39a6424\u003c/code\u003e\u003c/a\u003e fix!: assert 'text' is a string across all RuleFixer methods (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20082\"\u003e#20082\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/f28fbf846244e043c92b355b224d121b06140b44\"\u003e\u003ccode\u003ef28fbf8\u003c/code\u003e\u003c/a\u003e fix!: Deprecate \u003ccode\u003e\u0026quot;always\u0026quot;\u003c/code\u003e and \u003ccode\u003e\u0026quot;as-needed\u0026quot;\u003c/code\u003e options of the \u003ccode\u003eradix\u003c/code\u003e rule (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20223\"\u003e#20223\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/aa3fb2b233e929b37220be940575f42c280e0b98\"\u003e\u003ccode\u003eaa3fb2b\u003c/code\u003e\u003c/a\u003e fix!: tighten \u003ccode\u003efunc-names\u003c/code\u003e schema (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20119\"\u003e#20119\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/f6c0ed0311dcfee853367d5068c765d066e6b756\"\u003e\u003ccode\u003ef6c0ed0\u003c/code\u003e\u003c/a\u003e feat!: report \u003ccode\u003eeslint-env\u003c/code\u003e comments as errors (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20128\"\u003e#20128\u003c/a\u003e) (Francesco Trotta)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/4bf739fb533e59f7f0a66b65f7bc80be0f37d8db\"\u003e\u003ccode\u003e4bf739f\u003c/code\u003e\u003c/a\u003e fix!: remove deprecated \u003ccode\u003eLintMessage#nodeType\u003c/code\u003e and \u003ccode\u003eTestCaseError#type\u003c/code\u003e (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20096\"\u003e#20096\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/523c076866400670fb2192a3f55dbf7ad3469247\"\u003e\u003ccode\u003e523c076\u003c/code\u003e\u003c/a\u003e feat!: drop support for jiti \u0026lt; 2.2.0 (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20016\"\u003e#20016\u003c/a\u003e) (michael faith)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/454a292c95f34dad232411ddac06408e6383bb64\"\u003e\u003ccode\u003e454a292\u003c/code\u003e\u003c/a\u003e feat!: update \u003ccode\u003eeslint:recommended\u003c/code\u003e configuration (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20210\"\u003e#20210\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/4f880ee02992e1bf0e96ebaba679985e2d1295f1\"\u003e\u003ccode\u003e4f880ee\u003c/code\u003e\u003c/a\u003e feat!: remove \u003ccode\u003ev10_*\u003c/code\u003e and inactive \u003ccode\u003eunstable_*\u003c/code\u003e flags (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20225\"\u003e#20225\u003c/a\u003e) (sethamus)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/f18115c363a4ac7671a4c7f30ee13d57ebba330f\"\u003e\u003ccode\u003ef18115c\u003c/code\u003e\u003c/a\u003e feat!: \u003ccode\u003eno-shadow-restricted-names\u003c/code\u003e report \u003ccode\u003eglobalThis\u003c/code\u003e by default (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20027\"\u003e#20027\u003c/a\u003e) (sethamus)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/c6358c31fbd3937b92d89be2618ffdf5a774604e\"\u003e\u003ccode\u003ec6358c3\u003c/code\u003e\u003c/a\u003e feat!: Require Node.js \u003ccode\u003e^20.19.0 || ^22.13.0 || \u0026gt;=24\u003c/code\u003e (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20160\"\u003e#20160\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eFeatures\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/bff9091927811497dbf066b0e3b85ecb37d43822\"\u003e\u003ccode\u003ebff9091\u003c/code\u003e\u003c/a\u003e feat: handle \u003ccode\u003eArray.fromAsync\u003c/code\u003e in \u003ccode\u003earray-callback-return\u003c/code\u003e (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20457\"\u003e#20457\u003c/a\u003e) (Francesco Trotta)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/290c594bb50c439fb71bc75521ee5360daa8c222\"\u003e\u003ccode\u003e290c594\u003c/code\u003e\u003c/a\u003e feat: add \u003ccode\u003eself\u003c/code\u003e to \u003ccode\u003eno-implied-eval\u003c/code\u003e rule (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20468\"\u003e#20468\u003c/a\u003e) (sethamus)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/43677de07ebd6e14bfac40a46ad749ba783c45f2\"\u003e\u003ccode\u003e43677de\u003c/code\u003e\u003c/a\u003e feat: fix handling of function and class expression names in \u003ccode\u003eno-shadow\u003c/code\u003e (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20432\"\u003e#20432\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/84fb885d49ac810e79a9491276b4828b53d913e5\"\u003e\u003ccode\u003e84fb885\u003c/code\u003e\u003c/a\u003e chore: package.json update for \u003ccode\u003e@​eslint/js\u003c/code\u003e release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/1f667344b57c4c09b548d94bcfac1f91b6e5c63d\"\u003e\u003ccode\u003e1f66734\u003c/code\u003e\u003c/a\u003e chore: add \u003ccode\u003eeslint\u003c/code\u003e to \u003ccode\u003epeerDependencies\u003c/code\u003e of \u003ccode\u003e@eslint/js\u003c/code\u003e (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20467\"\u003e#20467\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/f3fbc2f60cbe2c718364feb8c3fc0452c0df3c56\"\u003e\u003ccode\u003ef3fbc2f\u003c/code\u003e\u003c/a\u003e chore: set \u003ccode\u003e@eslint/js\u003c/code\u003e version to 10.0.0 to skip releasing it (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20466\"\u003e#20466\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/b4b3127f8542c599ce2dea804b6582ebc40c993d\"\u003e\u003ccode\u003eb4b3127\u003c/code\u003e\u003c/a\u003e chore: package.json update for \u003ccode\u003e@​eslint/js\u003c/code\u003e release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/0b14059491d830a49b3577931f4f68fbcfce6be5\"\u003e\u003ccode\u003e0b14059\u003c/code\u003e\u003c/a\u003e chore: package.json update for \u003ccode\u003e@​eslint/js\u003c/code\u003e release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/fa31a608901684fbcd9906d1907e66561d16e5aa\"\u003e\u003ccode\u003efa31a60\u003c/code\u003e\u003c/a\u003e feat!: add \u003ccode\u003ename\u003c/code\u003e to configs (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20015\"\u003e#20015\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/1e2cad5f6fa47ed6ed89d2a29798dda926d50990\"\u003e\u003ccode\u003e1e2cad5\u003c/code\u003e\u003c/a\u003e chore: package.json update for \u003ccode\u003e@​eslint/js\u003c/code\u003e release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/454a292c95f34dad232411ddac06408e6383bb64\"\u003e\u003ccode\u003e454a292\u003c/code\u003e\u003c/a\u003e feat!: update \u003ccode\u003eeslint:recommended\u003c/code\u003e configuration (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20210\"\u003e#20210\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/c6358c31fbd3937b92d89be2618ffdf5a774604e\"\u003e\u003ccode\u003ec6358c3\u003c/code\u003e\u003c/a\u003e feat!: Require Node.js \u003ccode\u003e^20.19.0 || ^22.13.0 || \u0026gt;=24\u003c/code\u003e (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20160\"\u003e#20160\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/eslint/eslint/commits/v10.0.1/packages/js\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@typescript-eslint/eslint-plugin` from 8.56.0 to 8.59.2\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases\"\u003e@​typescript-eslint/eslint-plugin's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev8.59.2\u003c/h2\u003e\n\u003ch2\u003e8.59.2 (2026-05-04)\u003c/h2\u003e\n\u003ch3\u003e🩹 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unsafe-type-assertion] handle crash on recursive template literal types (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12150\"\u003e#12150\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-deprecated] object destructuring values should be treated as declarations (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12292\"\u003e#12292\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003erule-tester:\u003c/strong\u003e add TypeScript as a peer dependency (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12288\"\u003e#12288\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e❤️ Thank You\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eDariusz Czajkowski\u003c/li\u003e\n\u003cli\u003eDima Barabash\u003c/li\u003e\n\u003cli\u003eKirk Waiblinger \u003ca href=\"https://github.com/kirkwaiblinger\"\u003e\u003ccode\u003e@​kirkwaiblinger\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.2\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003ev8.59.1\u003c/h2\u003e\n\u003ch2\u003e8.59.1 (2026-04-27)\u003c/h2\u003e\n\u003ch3\u003e🩹 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-type-assertion] fix crash \u0026quot;TypeError: checker.getTypeArguments is not a function\u0026quot; (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12246\"\u003e#12246\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-type-assertion] preserve index signatures in undefined unions (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12257\"\u003e#12257\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-type-assertion] preserve phantom type arguments in generic inference (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12269\"\u003e#12269\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-type-assertion] avoid false positive in logical assignment assertions (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12278\"\u003e#12278\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-type-arguments] handle instantiation expressions (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12220\"\u003e#12220\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-condition] treat void as nullish in no-unnecessary-condition (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12241\"\u003e#12241\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e❤️ Thank You\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eanasm266 \u003ca href=\"https://github.com/anasm266\"\u003e\u003ccode\u003e@​anasm266\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAnshika Jain \u003ca href=\"https://github.com/Anshikakalpana\"\u003e\u003ccode\u003e@​Anshikakalpana\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUlrich Stark\u003c/li\u003e\n\u003cli\u003eyugo innami \u003ca href=\"https://github.com/nami8824\"\u003e\u003ccode\u003e@​nami8824\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.1\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003ev8.59.0\u003c/h2\u003e\n\u003ch2\u003e8.59.0 (2026-04-20)\u003c/h2\u003e\n\u003ch3\u003e🚀 Features\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-type-assertion] report more cases based on assignability (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/11789\"\u003e#11789\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e❤️ Thank You\u003c/h3\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/CHANGELOG.md\"\u003e@​typescript-eslint/eslint-plugin's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e8.59.2 (2026-05-04)\u003c/h2\u003e\n\u003ch3\u003e🩹 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-deprecated] object destructuring values should be treated as declarations (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12292\"\u003e#12292\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unsafe-type-assertion] handle crash on recursive template literal types (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12150\"\u003e#12150\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e❤️ Thank You\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eDima Barabash\u003c/li\u003e\n\u003cli\u003eKirk Waiblinger \u003ca href=\"https://github.com/kirkwaiblinger\"\u003e\u003ccode\u003e@​kirkwaiblinger\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.2\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003e8.59.1 (2026-04-27)\u003c/h2\u003e\n\u003ch3\u003e🩹 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-condition] treat void as nullish in no-unnecessary-condition (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12241\"\u003e#12241\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-type-arguments] handle instantiation expressions (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12220\"\u003e#12220\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-type-assertion] avoid false positive in logical assignment assertions (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12278\"\u003e#12278\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-type-assertion] preserve phantom type arguments in generic inference (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12269\"\u003e#12269\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-type-assertion] preserve index signatures in undefined unions (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12257\"\u003e#12257\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-type-assertion] fix crash \u0026quot;TypeError: checker.getTypeArguments is not a function\u0026quot; (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12246\"\u003e#12246\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e❤️ Thank You\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eanasm266 \u003ca href=\"https://github.com/anasm266\"\u003e\u003ccode\u003e@​anasm266\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAnshika Jain \u003ca href=\"https://github.com/Anshikakalpana\"\u003e\u003ccode\u003e@​Anshikakalpana\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUlrich Stark\u003c/li\u003e\n\u003cli\u003eyugo innami \u003ca href=\"https://github.com/nami8824\"\u003e\u003ccode\u003e@​nami8824\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.1\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003e8.59.0 (2026-04-20)\u003c/h2\u003e\n\u003ch3\u003e🚀 Features\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-type-assertion] report more cases based on assignability (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/11789\"\u003e#11789\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e❤️ Thank You\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUlrich Stark\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.0\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/2ec35f1760aade4df4c631d76d78c7ed5e136333\"\u003e\u003ccode\u003e2ec35f1\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.59.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/ec3ef25390f7daf5a9ff33a60282bdbbb49ab0f3\"\u003e\u003ccode\u003eec3ef25\u003c/code\u003e\u003c/a\u003e test: make no-useless-empty-export tests fully static (\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin/issues/12260\"\u003e#12260\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/60d0a513870d833617374ff8ea256d86ca3cbbbb\"\u003e\u003ccode\u003e60d0a51\u003c/code\u003e\u003c/a\u003e chore(eslint-plugin): switch auto-generated test cases to hand-written in no-...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/5c53da230a70aba7d6f3d6474b5d249b430a95d0\"\u003e\u003ccode\u003e5c53da2\u003c/code\u003e\u003c/a\u003e fix(eslint-plugin): [no-deprecated] object destructuring values should be tre...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/80c28a1ada3f975a932a02587cefee632ccf6550\"\u003e\u003ccode\u003e80c28a1\u003c/code\u003e\u003c/a\u003e fix(eslint-plugin): [no-unsafe-type-assertion] handle crash on recursive temp...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/b7b2670123f76419630f88f3a807f85b7c535230\"\u003e\u003ccode\u003eb7b2670\u003c/code\u003e\u003c/a\u003e test: make no-this-alias tests fully static (\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin/issues/12258\"\u003e#12258\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/52457932e5507b5ca01e720a541f3f8d01e09b9d\"\u003e\u003ccode\u003e5245793\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.59.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/3cef12471659c42c9d4b179f4113a080b1fa2d66\"\u003e\u003ccode\u003e3cef124\u003c/code\u003e\u003c/a\u003e chore(eslint-plugin): switch auto-generated test cases to hand-written in dot...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/27c507b6e532abcd1efa51055f045b00f22055c3\"\u003e\u003ccode\u003e27c507b\u003c/code\u003e\u003c/a\u003e test: make sort-type-constituents tests fully static (\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin/issues/12262\"\u003e#12262\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/a03b31d422be35d8ddc979f48f9317e3f33dd1ce\"\u003e\u003ccode\u003ea03b31d\u003c/code\u003e\u003c/a\u003e chore(eslint-plugin): switch auto-generated test cases to hand-written in no-...\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commits/v8.59.2/packages/eslint-plugin\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@typescript-eslint/parser` from 8.56.0 to 8.59.2\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases\"\u003e@​typescript-eslint/parser's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev8.59.2\u003c/h2\u003e\n\u003ch2\u003e8.59.2 (2026-05-04)\u003c/h2\u003e\n\u003ch3\u003e🩹 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unsafe-type-assertion] handle crash on recursive template literal types (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12150\"\u003e#12150\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-deprecated] object destructuring values should be treated as declarations (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12292\"\u003e#12292\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003erule-tester:\u003c/strong\u003e add TypeScript as a peer dependency (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12288\"\u003e#12288\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e❤️ Thank You\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eDariusz Czajkowski\u003c/li\u003e\n\u003cli\u003eDima Barabash\u003c/li\u003e\n\u003cli\u003eKirk Waiblinger \u003ca href=\"https://github.com/kirkwaiblinger\"\u003e\u003ccode\u003e@​kirkwaiblinger\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.2\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003ev8.59.1\u003c/h2\u003e\n\u003ch2\u003e8.59.1 (2026-04-27)\u003c/h2\u003e\n\u003ch3\u003e🩹 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-type-assertion] fix crash \u0026quot;TypeError: checker.getTypeArguments is not a function\u0026quot; (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12246\"\u003e#12246\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-type-assertion] preserve index signatures in undefined unions (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12257\"\u003e#12257\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-type-assertion] preserve phantom type arguments in generic inference (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12269\"\u003e#12269\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-type-assertion] avoid false positive in logical assignment assertions (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12278\"\u003e#12278\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-type-arguments] handle instantiation expressions (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12220\"\u003e#12220\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-condition] treat void as nullish in no-unnecessary-condition (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12241\"\u003e#12241\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e❤️ Thank You\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eanasm266 \u003ca href=\"https://github.com/anasm266\"\u003e\u003ccode\u003e@​anasm266\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAnshika Jain \u003ca href=\"https://github.com/Anshikakalpana\"\u003e\u003ccode\u003e@​Anshikakalpana\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUlrich Stark\u003c/li\u003e\n\u003cli\u003eyugo innami \u003ca href=\"https://github.com/nami8824\"\u003e\u003ccode\u003e@​nami8824\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.1\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003ev8.59.0\u003c/h2\u003e\n\u003ch2\u003e8.59.0 (2026-04-20)\u003c/h2\u003e\n\u003ch3\u003e🚀 Features\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-type-assertion] report more cases based on assignability (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/11789\"\u003e#11789\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e❤️ Thank You\u003c/h3\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/parser/CHANGELOG.md\"\u003e@​typescript-eslint/parser's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e8.59.2 (2026-05-04)\u003c/h2\u003e\n\u003cp\u003eThis was a version bump only for parser to align it with other projects, there were no code changes.\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.2\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003e8.59.1 (2026-04-27)\u003c/h2\u003e\n\u003cp\u003eThis was a version bump only for parser to align it with other projects, there were no code changes.\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.1\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003e8.59.0 (2026-04-20)\u003c/h2\u003e\n\u003cp\u003eThis was a version bump only for parser to align it with other projects, there were no code changes.\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.0\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003e8.58.2 (2026-04-13)\u003c/h2\u003e\n\u003ch3\u003e🩹 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eremove tsbuildinfo cache file from published packages (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12187\"\u003e#12187\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e❤️ Thank You\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAbhijeet Singh \u003ca href=\"https://github.com/cseas\"\u003e\u003ccode\u003e@​cseas\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.58.2\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003e8.58.1 (2026-04-08)\u003c/h2\u003e\n\u003cp\u003eThis was a version bump only for parser to align it with other projects, there were no code changes.\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.58.1\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003e8.58.0 (2026-03-30)\u003c/h2\u003e\n\u003ch3\u003e🚀 Features\u003c/h3\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/2ec35f1760aade4df4c631d76d78c7ed5e136333\"\u003e\u003ccode\u003e2ec35f1\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.59.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/52457932e5507b5ca01e720a541f3f8d01e09b9d\"\u003e\u003ccode\u003e5245793\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.59.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/ea9ae4f8817873480e3501145059f63e39e8d8a1\"\u003e\u003ccode\u003eea9ae4f\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.59.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/90c2803a4c250e0343598d41e973f95e743bf4ce\"\u003e\u003ccode\u003e90c2803\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.58.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/be6b49a02d68db9bdc8985e7e9e1598700fda2fa\"\u003e\u003ccode\u003ebe6b49a\u003c/code\u003e\u003c/a\u003e fix: remove tsbuildinfo cache file from published packages (\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/parser/issues/12187\"\u003e#12187\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/5311ed312eadf4e238324f2726ae0b1f3f2206e6\"\u003e\u003ccode\u003e5311ed3\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.58.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/493341709fe7d1d6433332b7bd2724e3332c7cdf\"\u003e\u003ccode\u003e4933417\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.58.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/8cde2d06fb9bc591a4c93452509ddbd600c76a35\"\u003e\u003ccode\u003e8cde2d0\u003c/code\u003e\u003c/a\u003e feat: support TypeScript 6 (\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/parser/issues/12124\"\u003e#12124\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/be4d54d26e695cc93605ffcca67dd75848e95c6f\"\u003e\u003ccode\u003ebe4d54d\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.57.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/c7c38aa252d7bf6708a225aebedc57686ac33dcd\"\u003e\u003ccode\u003ec7c38aa\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.57.1\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commits/v8.59.2/packages/parser\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `eslint` from 9.39.2 to 10.3.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/eslint/eslint/releases\"\u003eeslint's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev10.3.0\u003c/h2\u003e\n\u003ch2\u003eFeatures\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/379571a975f2b24d88037b9de2e72ec61d004130\"\u003e\u003ccode\u003e379571a\u003c/code\u003e\u003c/a\u003e feat: add suggestions for no-unused-private-class-members (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20773\"\u003e#20773\u003c/a\u003e) (sethamus)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eBug Fixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/b6ae5cf07b9b51802367539cb24b245b61eaa37c\"\u003e\u003ccode\u003eb6ae5cf\u003c/code\u003e\u003c/a\u003e fix: handle unavailable require cache (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20812\"\u003e#20812\u003c/a\u003e) (Simon Podlipsky)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/6fb3685bcbe9a6f72fd7dfb9129686b6fb96b0bd\"\u003e\u003ccode\u003e6fb3685\u003c/code\u003e\u003c/a\u003e fix: rule suggestions cause continuation in class body (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20787\"\u003e#20787\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eDocumentation\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/32cc7ab4ec653ce89da92deb5c40a9f4fc707fe5\"\u003e\u003ccode\u003e32cc7ab\u003c/code\u003e\u003c/a\u003e docs: fix typos in docs and comments (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20809\"\u003e#20809\u003c/a\u003e) (Tanuj Kanti)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/7f479376a2fa463d823ab762db6bb37ce8d2ee8f\"\u003e\u003ccode\u003e7f47937\u003c/code\u003e\u003c/a\u003e docs: Update README (GitHub Actions Bot)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eChores\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/d32235ec19ceea211fa86452afa383ca05f5c2f9\"\u003e\u003ccode\u003ed32235e\u003c/code\u003e\u003c/a\u003e ci: use pnpm in \u003ccode\u003eeslint-flat-config-utils\u003c/code\u003e type integration test (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20826\"\u003e#20826\u003c/a\u003e) (Francesco Trotta)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/3ffb14ea517de750ed1181579ef844af342e4096\"\u003e\u003ccode\u003e3ffb14e\u003c/code\u003e\u003c/a\u003e chore: clean up typos in comments and JSDoc (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20821\"\u003e#20821\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/22eb58a21cbde2fbd53a1fae99453d408672de50\"\u003e\u003ccode\u003e22eb58a\u003c/code\u003e\u003c/a\u003e chore: add missing continue-on-error to ecosystem-tests.yml (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20818\"\u003e#20818\u003c/a\u003e) (Josh Goldberg ✨)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/88bf0024cb36caebf2880516d9a1f81aa75dafe2\"\u003e\u003ccode\u003e88bf002\u003c/code\u003e\u003c/a\u003e ci: bump pnpm/action-setup from 6.0.1 to 6.0.3 (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20815\"\u003e#20815\u003c/a\u003e) (dependabot[bot])\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/97c8c330beae9557ad24e19f94eebc8d08d1a722\"\u003e\u003ccode\u003e97c8c33\u003c/code\u003e\u003c/a\u003e chore: update ilshidur/action-discord action to v0.4.0 (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20811\"\u003e#20811\u003c/a\u003e) (renovate[bot])\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/2f58136dd47364a4cae7054a64f7bf1e79693813\"\u003e\u003ccode\u003e2f58136\u003c/code\u003e\u003c/a\u003e chore: pin peter-evans/create-pull-request action to 5f6978f (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20810\"\u003e#20810\u003c/a\u003e) (renovate[bot])\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/77add7f1bc91ed17bba3be3289928a9146c5f5a1\"\u003e\u003ccode\u003e77add7f\u003c/code\u003e\u003c/a\u003e chore: add initial ecosystem plugin tests workflow (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/19643\"\u003e#19643\u003c/a\u003e) (Josh Goldberg ✨)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/4023b55490fae55e464fe35530ef038cdf5d79a5\"\u003e\u003ccode\u003e4023b55\u003c/code\u003e\u003c/a\u003e test: Add unit tests for SuppressionsService.prune() (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20797\"\u003e#20797\u003c/a\u003e) (kuldeep kumar)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/54080dad4f77bb39a1a843933d4ff3a2b7c175e2\"\u003e\u003ccode\u003e54080da\u003c/code\u003e\u003c/a\u003e test: add unit tests for ForkContext (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20778\"\u003e#20778\u003c/a\u003e) (kuldeep kumar)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/f0e2bcc4bf19253aaebfbd7df87824b0ca4a151f\"\u003e\u003ccode\u003ef0e2bcc\u003c/code\u003e\u003c/a\u003e test: add unit tests for SuppressionsService.suppress() method (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20765\"\u003e#20765\u003c/a\u003e) (kuldeep kumar)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/a7f0b94743a99bcdf8d07cff15ffbfa6a6c5f927\"\u003e\u003ccode\u003ea7f0b94\u003c/code\u003e\u003c/a\u003e chore: update dependency prettier to v3.8.3 (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20782\"\u003e#20782\u003c/a\u003e) (renovate[bot])\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/7bf93d9e79f6dbf77242cbb9a9b8be834730fccd\"\u003e\u003ccode\u003e7bf93d9\u003c/code\u003e\u003c/a\u003e chore: update TypeScript to v6 (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20677\"\u003e#20677\u003c/a\u003e) (sethamus)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/b42dd72e76e7f90e7f0be9458288d93353052adc\"\u003e\u003ccode\u003eb42dd72\u003c/code\u003e\u003c/a\u003e ci: bump pnpm/action-setup from 6.0.0 to 6.0.1 (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20781\"\u003e#20781\u003c/a\u003e) (dependabot[bot])\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/2b252be80f362cca7be3326a6dbe958680fdfe9a\"\u003e\u003ccode\u003e2b252be\u003c/code\u003e\u003c/a\u003e test: add unit tests for IdGenerator (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20775\"\u003e#20775\u003c/a\u003e) (kuldeep kumar)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev10.2.1\u003c/h2\u003e\n\u003ch2\u003eBug Fixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/14be92b6d1fa0923b8923830f2208e5e2705b002\"\u003e\u003ccode\u003e14be92b\u003c/code\u003e\u003c/a\u003e fix: model generator yield resumption paths in code path analysis (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20665\"\u003e#20665\u003c/a\u003e) (sethamus)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/84a19d2c32255db6b9cfc08644a607aae6d5cb62\"\u003e\u003ccode\u003e84a19d2\u003c/code\u003e\u003c/a\u003e fix: no-async-promise-executor false positives for shadowed Promise (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20740\"\u003e#20740\u003c/a\u003e) (xbinaryx)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/af764af0ec38225755fbf8a6f207f0c77b595a8d\"\u003e\u003ccode\u003eaf764af\u003c/code\u003e\u003c/a\u003e fix: clarify language and processor validation errors (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20729\"\u003e#20729\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/e251b89a38280973e468a4a9386c138f4f55d10d\"\u003e\u003ccode\u003ee251b89\u003c/code\u003e\u003c/a\u003e fix: update eslint (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20715\"\u003e#20715\u003c/a\u003e) (renovate[bot])\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eDocumentation\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/ca92ca0fb4599e8de1e2fb914e695fe7397cbe63\"\u003e\u003ccode\u003eca92ca0\u003c/code\u003e\u003c/a\u003e docs: reuse markdown-it instance for markdown filter (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20768\"\u003e#20768\u003c/a\u003e) (Amaresh  S M)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/57d2ee213305cee0cb55ef08e0480b57396269a9\"\u003e\u003ccode\u003e57d2ee2\u003c/code\u003e\u003c/a\u003e docs:  Enable Eleventy incremental mode for watch (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20767\"\u003e#20767\u003c/a\u003e) (Amaresh  S M)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/c1621b915742276e5f4b25efe790ca62296330dc\"\u003e\u003ccode\u003ec1621b9\u003c/code\u003e\u003c/a\u003e docs: fix typos in code-path-analyzer.js (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20700\"\u003e#20700\u003c/a\u003e) (Ayush Shukla)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/1418d522d10bde1960f4942afb548bc7160ec49e\"\u003e\u003ccode\u003e1418d52\u003c/code\u003e\u003c/a\u003e docs: Update README (GitHub Actions Bot)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/39771e6e600f0b0617fdeafff6dd07e4211ffde6\"\u003e\u003ccode\u003e39771e6\u003c/code\u003e\u003c/a\u003e docs: Update README (GitHub Actions Bot)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/71e04693def2df57268f08f3072a2749df6bf438\"\u003e\u003ccode\u003e71e0469\u003c/code\u003e\u003c/a\u003e docs: fix incomplete JSDoc param description in no-shadow rule (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20728\"\u003e#20728\u003c/a\u003e) (kuldeep kumar)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/22119ceb93e28f62262fc1d98ff1b1442d6e2dbf\"\u003e\u003ccode\u003e22119ce\u003c/code\u003e\u003c/a\u003e docs: clarify scope of for-direction rule with dead code examples (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20723\"\u003e#20723\u003c/a\u003e) (Amaresh  S M)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/8f3fb77f122a5641d1833cad5d93f3f54fa3be0b\"\u003e\u003ccode\u003e8f3fb77\u003c/code\u003e\u003c/a\u003e docs: document \u003ccode\u003emeta.docs.dialects\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20718\"\u003e#20718\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eChores\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/7ddfea9c4f62add1588c5c0b0da568c299246383\"\u003e\u003ccode\u003e7ddfea9\u003c/code\u003e\u003c/a\u003e chore: update dependency prettier to v3.8.2 (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20770\"\u003e#20770\u003c/a\u003e) (renovate[bot])\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/fac40e1de2ba7646cc7cd2d3f93fbdd1f8819001\"\u003e\u003ccode\u003efac40e1\u003c/code\u003e\u003c/a\u003e ci: bump pnpm/action-setup from 5.0.0 to 6.0.0 (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20763\"\u003e#20763\u003c/a\u003e) (dependabot[bot])\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/7246f923332522d8b3d46b6ee646fce88535f3fb\"\u003e\u003ccode\u003e7246f92\u003c/code\u003e\u003c/a\u003e test: add tests for SuppressionsService.load() error handling (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20734\"\u003e#20734\u003c/a\u003e) (kuldeep kumar)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/4f34b1e592b0f63d766d9903998e8e36eb49d3aa\"\u003e\u003ccode\u003e4f34b1e\u003c/code\u003e\u003c/a\u003e chore: update pnpm/action-setup action to v5 (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20762\"\u003e#20762\u003c/a\u003e) (renovate[bot])\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/78892043a36da4aa7640b59c99344b00c181048a\"\u003e\u003ccode\u003e7889204\u003c/code\u003e\u003c/a\u003e 10.3.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/5b69b4fce4dc407c8e960eba638b5a3409c4f1fd\"\u003e\u003ccode\u003e5b69b4f\u003c/code\u003e\u003c/a\u003e Build: changelog update for 10.3.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/d32235ec19ceea211fa86452afa383ca05f5c2f9\"\u003e\u003ccode\u003ed32235e\u003c/code\u003e\u003c/a\u003e ci: use pnpm in \u003ccode\u003eeslint-flat-config-utils\u003c/code\u003e type integration test (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20826\"\u003e#20826\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/b6ae5cf07b9b51802367539cb24b245b61eaa37c\"\u003e\u003ccode\u003eb6ae5cf\u003c/code\u003e\u003c/a\u003e fix: handle unavailable require cache (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20812\"\u003e#20812\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/3ffb14ea517de750ed1181579ef844af342e4096\"\u003e\u003ccode\u003e3ffb14e\u003c/code\u003e\u003c/a\u003e chore: clean up typos in comments and JSDoc (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20821\"\u003e#20821\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/6fb3685bcbe9a6f72fd7dfb9129686b6fb96b0bd\"\u003e\u003ccode\u003e6fb3685\u003c/code\u003e\u003c/a\u003e fix: rule suggestions cause continuation in class body (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20787\"\u003e#20787\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/22eb58a21cbde2fbd53a1fae99453d408672de50\"\u003e\u003ccode\u003e22eb58a\u003c/code\u003e\u003c/a\u003e chore: add missing continue-on-error to ecosystem-tests.yml (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20818\"\u003e#20818\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/88bf0024cb36caebf2880516d9a1f81aa75dafe2\"\u003e\u003ccode\u003e88bf002\u003c/code\u003e\u003c/a\u003e ci: bump pnpm/action-setup from 6.0.1 to 6.0.3 (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20815\"\u003e#20815\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/379571a975f2b24d88037b9de2e72ec61d004130\"\u003e\u003ccode\u003e379571a\u003c/code\u003e\u003c/a\u003e feat: add suggestions for no-unused-private-class-members (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20773\"\u003e#20773\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/97c8c330beae9557ad24e19f94eebc8d08d1a722\"\u003e\u003ccode\u003e97c8c33\u003c/code\u003e\u003c/a\u003e chore: update ilshidur/action-discord action to v0.4.0 (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20811\"\u003e#20811\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/eslint/eslint/compare/v9.39.2...v10.3.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `eslint-plugin-react-hooks` from 7.0.1 to 7.1.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/facebook/react/releases\"\u003eeslint-plugin-react-hooks's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eeslint-plugin-react-hooks@7.1.1 (April 17, 2026)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eNote:\u003c/strong\u003e 7.1.0 accidentally removed the \u003ccode\u003ecomponent-hook-factories\u003c/code\u003e rule, causing errors for users who referenced it in their ESLint config. This is now fixed.\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdd deprecated no-op \u003ccode\u003ecomponent-hook-factories\u003c/code\u003e rule for backwards compatibility. (\u003ca href=\"https://github.com/mofeiZ\"\u003e\u003ccode\u003e@​mofeiZ\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/36307\"\u003e#36307\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eeslint-plugin-react-hooks@7.1.0 (April 16, 2026)\u003c/h2\u003e\n\u003cp\u003eThis release adds ESLint v10 support, improves performance by skipping compilation for non-React files, and includes compiler lint improvements including better \u003ccode\u003eset-state-in-effect\u003c/code\u003e detection, improved ref validation, and more helpful error reporting.\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdd ESLint v10 support. (\u003ca href=\"https://github.com/azat-io\"\u003e\u003ccode\u003e@​azat-io\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/35720\"\u003e#35720\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSkip compilation for non-React files to improve performance. (\u003ca href=\"https://github.com/josephsavona\"\u003e\u003ccode\u003e@​josephsavona\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/35589\"\u003e#35589\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix exhaustive deps bug with Flow type casting. (\u003ca href=\"https://github.com/jorge-cab\"\u003e\u003ccode\u003e@​jorge-cab\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/35691\"\u003e#35691\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix \u003ccode\u003euseEffectEvent\u003c/code\u003e checks in component syntax. (\u003ca href=\"https://github.com/jbrown215\"\u003e\u003ccode\u003e@​jbrown215\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/35041\"\u003e#35041\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eImproved \u003ccode\u003eset-state-in-effect\u003c/code\u003e validation with fewer false negatives. (\u003ca href=\"https://github.com/jorge-cab\"\u003e\u003ccode\u003e@​jorge-cab\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/35134\"\u003e#35134\u003c/a\u003e, \u003ca href=\"https://github.com/josephsavona\"\u003e\u003ccode\u003e@​josephsavona\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/35147\"\u003e#35147\u003c/a\u003e, \u003ca href=\"https://github.com/jackpope\"\u003e\u003ccode\u003e@​jackpope\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/35214\"\u003e#35214\u003c/a\u003e, \u003ca href=\"https://github.com/chesnokov-tony\"\u003e\u003ccode\u003e@​chesnokov-tony\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/35419\"\u003e#35419\u003c/a\u003e, \u003ca href=\"https://github.com/jsleitor\"\u003e\u003ccode\u003e@​jsleitor\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/36107\"\u003e#36107\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eImproved ref validation for non-mutating functions and event handler props. (\u003ca href=\"https://github.com/josephsavona\"\u003e\u003ccode\u003e@​josephsavona\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/35893\"\u003e#35893\u003c/a\u003e, \u003ca href=\"https://github.com/kolvian\"\u003e\u003ccode\u003e@​kolvian\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/35062\"\u003e#35062\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCompiler now reports all errors instead of stopping at the first. (\u003ca href=\"https://github.com/josephsavona\"\u003e\u003ccode\u003e@​josephsavona\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/35873\"\u003e#35873\u003c/a\u003e–\u003ca href=\"https://redirect.github.com/facebook/react/pull/35884\"\u003e#35884\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eImproved source locations and error display in compiler diagnostics. (\u003ca href=\"https://github.com/nathanmarks\"\u003e\u003ccode\u003e@​nathanmarks\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/35348\"\u003e#35348\u003c/a\u003e, \u003ca href=\"https://github.com/josephsavona\"\u003e\u003ccode\u003e@​josephsavona\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/34963\"\u003e#34963\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/facebook/react/blob/main/packages/eslint-plugin-react-hooks/CHANGELOG.md\"\u003eeslint-plugin-react-hooks's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e7.1.1\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eNote:\u003c/strong\u003e 7.1.0 accidentally removed the \u003ccode\u003ecomponent-hook-factories\u003c/code\u003e rule, causing errors for users who referenced it in their ESLint config. This is now fixed.\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdd deprecated no-op \u003ccode\u003ecomponent-hook-factories\u003c/code\u003e rule for backwards compatibility. (\u003ca href=\"https://github.com/mofeiZ\"\u003e\u003ccode\u003e@​mofeiZ\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/36307\"\u003e#36307\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e7.1.0\u003c/h2\u003e\n\u003cp\u003eThis release adds ESLint v10 support, improves performance by skipping compilation for non-React...\n\n_Description has been truncated_","html_url":"https://github.com/zvineshielding/zvine-app/pull/9","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/zvineshielding%2Fzvine-app/issues/9","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/9/packages"}],"issue_packages":[{"old_version":"5.1.3","new_version":"5.3.0","update_type":"minor","path":null,"pr_created_at":"2026-06-08T04:37:07.000Z","version_change":"5.1.3 → 5.3.0","issue":{"uuid":"4610062846","node_id":"PR_kwDOSdscls7jwaym","number":4,"state":"open","title":"deps(deps): bump the all-dependencies group across 1 directory with 79 updates","user":"dependabot[bot]","labels":[],"assignees":[],"locked":false,"comments_count":1,"pull_request":true,"closed_at":null,"author_association":null,"state_reason":null,"created_at":"2026-06-08T04:37:07.000Z","updated_at":"2026-06-08T04:37:07.000Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"deps(deps): bump","group_name":"all-dependencies","update_count":79,"packages":[{"name":"@eslint-react/eslint-plugin","old_version":"2.13.0","new_version":"5.8.16","repository_url":"https://github.com/Rel1cx/eslint-react"},{"name":"@eslint/js","old_version":"9.39.2","new_version":"10.0.1","repository_url":"https://github.com/eslint/eslint"},{"name":"@typescript-eslint/eslint-plugin","old_version":"8.56.0","new_version":"8.60.1","repository_url":"https://github.com/typescript-eslint/typescript-eslint"},{"name":"@typescript-eslint/parser","old_version":"8.56.0","new_version":"8.60.1","repository_url":"https://github.com/typescript-eslint/typescript-eslint"},{"name":"eslint","old_version":"9.39.2","new_version":"10.4.1","repository_url":"https://github.com/eslint/eslint"},{"name":"eslint-import-resolver-typescript","old_version":"4.4.4","new_version":"4.4.5","repository_url":"https://github.com/import-js/eslint-import-resolver-typescript"},{"name":"eslint-plugin-react-hooks","old_version":"7.0.1","new_version":"7.1.1","repository_url":"https://github.com/facebook/react"},{"name":"globals","old_version":"17.3.0","new_version":"17.6.0","repository_url":"https://github.com/sindresorhus/globals"},{"name":"graphql","old_version":"16.12.0","new_version":"16.14.1","repository_url":"https://github.com/graphql/graphql-js"},{"name":"happy-dom","old_version":"20.6.2","new_version":"20.10.2","repository_url":"https://github.com/capricorn86/happy-dom"},{"name":"jiti","old_version":"2.6.1","new_version":"2.7.0","repository_url":"https://github.com/unjs/jiti"},{"name":"lint-staged","old_version":"16.2.7","new_version":"17.0.7","repository_url":"https://github.com/lint-staged/lint-staged"},{"name":"mermaid","old_version":"11.12.3","new_version":"11.15.0","repository_url":"https://github.com/mermaid-js/mermaid"},{"name":"prettier","old_version":"3.8.1","new_version":"3.8.3","repository_url":"https://github.com/prettier/prettier"},{"name":"react","old_version":"19.2.4","new_version":"19.2.7","repository_url":"https://github.com/facebook/react"},{"name":"@types/react","old_version":"19.2.14","new_version":"19.2.17","repository_url":"https://github.com/DefinitelyTyped/DefinitelyTyped"},{"name":"typescript","old_version":"5.9.3","new_version":"6.0.3","repository_url":"https://github.com/microsoft/TypeScript"},{"name":"typescript-eslint","old_version":"8.56.0","new_version":"8.60.1","repository_url":"https://github.com/typescript-eslint/typescript-eslint"},{"name":"typescript-language-server","old_version":"5.1.3","new_version":"5.3.0","repository_url":"https://github.com/typescript-language-server/typescript-language-server"},{"name":"vite","old_version":"7.3.1","new_version":"8.0.16","repository_url":"https://github.com/vitejs/vite"},{"name":"vitepress","old_version":"2.0.0-alpha.16","new_version":"2.0.0-alpha.17","repository_url":"https://github.com/vuejs/vitepress"},{"name":"vitepress-plugin-llms","old_version":"1.11.0","new_version":"1.13.1","repository_url":"https://github.com/okineadev/vitepress-plugin-llms"},{"name":"vitest","old_version":"4.0.18","new_version":"4.1.8","repository_url":"https://github.com/vitest-dev/vitest"},{"name":"wrangler","old_version":"4.66.0","new_version":"4.98.0","repository_url":"https://github.com/cloudflare/workers-sdk"},{"name":"@ai-sdk/openai","old_version":"3.0.29","new_version":"3.0.68","repository_url":"https://github.com/vercel/ai"},{"name":"@better-auth/passkey","old_version":"1.4.18","new_version":"1.6.14","repository_url":"https://github.com/better-auth/better-auth"},{"name":"@better-auth/stripe","old_version":"1.4.18","new_version":"1.6.14","repository_url":"https://github.com/better-auth/better-auth"},{"name":"@trpc/server","old_version":"11.10.0","new_version":"11.17.0","repository_url":"https://github.com/trpc/trpc"},{"name":"ai","old_version":"6.0.91","new_version":"6.0.197","repository_url":"https://github.com/vercel/ai"},{"name":"better-auth","old_version":"1.4.18","new_version":"1.6.14","repository_url":"https://github.com/better-auth/better-auth"},{"name":"drizzle-orm","old_version":"0.45.1","new_version":"0.45.2","repository_url":"https://github.com/drizzle-team/drizzle-orm"},{"name":"postgres","old_version":"3.4.8","new_version":"3.4.9","repository_url":"https://github.com/porsager/postgres"},{"name":"resend","old_version":"6.9.2","new_version":"6.12.4","repository_url":"https://github.com/resend/resend-node"},{"name":"stripe","old_version":"20.3.1","new_version":"22.2.0","repository_url":"https://github.com/stripe/stripe-node"},{"name":"@cloudflare/workers-types","old_version":"4.20260218.0","new_version":"4.20260608.1","repository_url":"https://github.com/cloudflare/workerd"},{"name":"@types/bun","old_version":"1.3.9","new_version":"1.3.14","repository_url":"https://github.com/DefinitelyTyped/DefinitelyTyped"},{"name":"hono","old_version":"4.11.10","new_version":"4.12.23","repository_url":"https://github.com/honojs/hono"},{"name":"zod","old_version":"4.3.6","new_version":"4.4.3","repository_url":"https://github.com/colinhacks/zod"},{"name":"@radix-ui/react-checkbox","old_version":"1.3.3","new_version":"1.3.4","repository_url":"https://github.com/radix-ui/primitives"},{"name":"@radix-ui/react-radio-group","old_version":"1.3.8","new_version":"1.4.0","repository_url":"https://github.com/radix-ui/primitives"},{"name":"@radix-ui/react-scroll-area","old_version":"1.2.10","new_version":"1.2.11","repository_url":"https://github.com/radix-ui/primitives"},{"name":"@radix-ui/react-select","old_version":"2.2.6","new_version":"2.3.0","repository_url":"https://github.com/radix-ui/primitives"},{"name":"@radix-ui/react-separator","old_version":"1.1.8","new_version":"1.1.9","repository_url":"https://github.com/radix-ui/primitives"},{"name":"@radix-ui/react-switch","old_version":"1.2.6","new_version":"1.3.0","repository_url":"https://github.com/radix-ui/primitives"},{"name":"@tanstack/react-query","old_version":"5.90.21","new_version":"5.101.0","repository_url":"https://github.com/TanStack/query"},{"name":"@tanstack/react-router","old_version":"1.161.1","new_version":"1.170.15","repository_url":"https://github.com/TanStack/router"},{"name":"@trpc/client","old_version":"11.10.0","new_version":"11.17.0","repository_url":"https://github.com/trpc/trpc"},{"name":"@trpc/tanstack-react-query","old_version":"11.10.0","new_version":"11.17.0","repository_url":"https://github.com/trpc/trpc"},{"name":"jotai","old_version":"2.17.1","new_version":"2.20.0","repository_url":"https://github.com/pmndrs/jotai"},{"name":"jotai-effect","old_version":"2.2.3","new_version":"2.3.1","repository_url":"https://github.com/jotaijs/jotai-effect"},{"name":"lucide-react","old_version":"0.574.0","new_version":"1.17.0","repository_url":"https://github.com/lucide-icons/lucide"},{"name":"react-dom","old_version":"19.2.4","new_version":"19.2.7","repository_url":"https://github.com/facebook/react"},{"name":"react-error-boundary","old_version":"6.1.1","new_version":"6.1.2","repository_url":"https://github.com/bvaughn/react-error-boundary"},{"name":"tailwind-merge","old_version":"3.4.1","new_version":"3.6.0","repository_url":"https://github.com/dcastil/tailwind-merge"},{"name":"@tailwindcss/postcss","old_version":"4.2.0","new_version":"4.3.0","repository_url":"https://github.com/tailwindlabs/tailwindcss"},{"name":"@tanstack/react-query-devtools","old_version":"5.91.3","new_version":"5.101.0","repository_url":"https://github.com/TanStack/query"},{"name":"@tanstack/react-router-devtools","old_version":"1.161.1","new_version":"1.167.0","repository_url":"https://github.com/TanStack/router"},{"name":"@tanstack/router-plugin","old_version":"1.161.1","new_version":"1.168.18","repository_url":"https://github.com/TanStack/router"},{"name":"@types/node","old_version":"25.2.3","new_version":"25.9.2","repository_url":"https://github.com/DefinitelyTyped/DefinitelyTyped"},{"name":"@vitejs/plugin-react","old_version":"5.1.4","new_version":"6.0.2","repository_url":"https://github.com/vitejs/vite-plugin-react"},{"name":"@vitejs/plugin-react-swc","old_version":"4.2.3","new_version":"4.3.1","repository_url":"https://github.com/vitejs/vite-plugin-react"},{"name":"autoprefixer","old_version":"10.4.24","new_version":"10.5.0","repository_url":"https://github.com/postcss/autoprefixer"},{"name":"globby","old_version":"16.1.1","new_version":"16.2.0","repository_url":"https://github.com/sindresorhus/globby"},{"name":"@react-email/components","old_version":"1.0.8","new_version":"1.0.12","repository_url":"https://github.com/resend/react-email"},{"name":"@react-email/render","old_version":"2.0.4","new_version":"2.0.8","repository_url":"https://github.com/resend/react-email"},{"name":"@react-email/preview-server","old_version":"5.2.8","new_version":"5.2.10","repository_url":"https://github.com/resend/react-email"},{"name":"react-email","old_version":"5.2.8","new_version":"6.5.0","repository_url":"https://github.com/resend/react-email"},{"name":"@astrojs/react","old_version":"4.4.2","new_version":"5.0.7","repository_url":"https://github.com/withastro/astro"},{"name":"astro","old_version":"5.17.2","new_version":"6.4.4","repository_url":"https://github.com/withastro/astro"},{"name":"dotenv","old_version":"17.3.1","new_version":"17.4.2","repository_url":"https://github.com/motdotla/dotenv"},{"name":"drizzle-kit","old_version":"0.31.9","new_version":"0.31.10","repository_url":"https://github.com/drizzle-team/drizzle-orm"},{"name":"@radix-ui/react-avatar","old_version":"1.1.11","new_version":"1.1.12","repository_url":"https://github.com/radix-ui/primitives"},{"name":"@radix-ui/react-dialog","old_version":"1.1.15","new_version":"1.1.16","repository_url":"https://github.com/radix-ui/primitives"},{"name":"@radix-ui/react-label","old_version":"2.1.8","new_version":"2.1.9","repository_url":"https://github.com/radix-ui/primitives"},{"name":"@modelcontextprotocol/sdk","old_version":"1.26.0","new_version":"1.29.0","repository_url":"https://github.com/modelcontextprotocol/typescript-sdk"},{"name":"got","old_version":"14.6.6","new_version":"15.0.5","repository_url":"https://github.com/sindresorhus/got"}],"path":null,"ecosystem":"npm"},"body":"Bumps the all-dependencies group with 76 updates in the / directory:\n\n| Package | From | To |\n| --- | --- | --- |\n| [@eslint-react/eslint-plugin](https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin) | `2.13.0` | `5.8.16` |\n| [@eslint/js](https://github.com/eslint/eslint/tree/HEAD/packages/js) | `9.39.2` | `10.0.1` |\n| [@typescript-eslint/eslint-plugin](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin) | `8.56.0` | `8.60.1` |\n| [@typescript-eslint/parser](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/parser) | `8.56.0` | `8.60.1` |\n| [eslint](https://github.com/eslint/eslint) | `9.39.2` | `10.4.1` |\n| [eslint-import-resolver-typescript](https://github.com/import-js/eslint-import-resolver-typescript) | `4.4.4` | `4.4.5` |\n| [eslint-plugin-react-hooks](https://github.com/facebook/react/tree/HEAD/packages/eslint-plugin-react-hooks) | `7.0.1` | `7.1.1` |\n| [globals](https://github.com/sindresorhus/globals) | `17.3.0` | `17.6.0` |\n| [graphql](https://github.com/graphql/graphql-js) | `16.12.0` | `16.14.1` |\n| [happy-dom](https://github.com/capricorn86/happy-dom) | `20.6.2` | `20.10.2` |\n| [jiti](https://github.com/unjs/jiti) | `2.6.1` | `2.7.0` |\n| [lint-staged](https://github.com/lint-staged/lint-staged) | `16.2.7` | `17.0.7` |\n| [mermaid](https://github.com/mermaid-js/mermaid) | `11.12.3` | `11.15.0` |\n| [prettier](https://github.com/prettier/prettier) | `3.8.1` | `3.8.3` |\n| [react](https://github.com/facebook/react/tree/HEAD/packages/react) | `19.2.4` | `19.2.7` |\n| [@types/react](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/react) | `19.2.14` | `19.2.17` |\n| [typescript](https://github.com/microsoft/TypeScript) | `5.9.3` | `6.0.3` |\n| [typescript-eslint](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/typescript-eslint) | `8.56.0` | `8.60.1` |\n| [typescript-language-server](https://github.com/typescript-language-server/typescript-language-server) | `5.1.3` | `5.3.0` |\n| [vite](https://github.com/vitejs/vite/tree/HEAD/packages/vite) | `7.3.1` | `8.0.16` |\n| [vitepress](https://github.com/vuejs/vitepress) | `2.0.0-alpha.16` | `2.0.0-alpha.17` |\n| [vitepress-plugin-llms](https://github.com/okineadev/vitepress-plugin-llms) | `1.11.0` | `1.13.1` |\n| [vitest](https://github.com/vitest-dev/vitest/tree/HEAD/packages/vitest) | `4.0.18` | `4.1.8` |\n| [wrangler](https://github.com/cloudflare/workers-sdk/tree/HEAD/packages/wrangler) | `4.66.0` | `4.98.0` |\n| [@ai-sdk/openai](https://github.com/vercel/ai/tree/HEAD/packages/openai) | `3.0.29` | `3.0.68` |\n| [@better-auth/passkey](https://github.com/better-auth/better-auth/tree/HEAD/packages/passkey) | `1.4.18` | `1.6.14` |\n| [@better-auth/stripe](https://github.com/better-auth/better-auth/tree/HEAD/packages/stripe) | `1.4.18` | `1.6.14` |\n| [@trpc/server](https://github.com/trpc/trpc/tree/HEAD/packages/server) | `11.10.0` | `11.17.0` |\n| [ai](https://github.com/vercel/ai/tree/HEAD/packages/ai) | `6.0.91` | `6.0.197` |\n| [better-auth](https://github.com/better-auth/better-auth/tree/HEAD/packages/better-auth) | `1.4.18` | `1.6.14` |\n| [drizzle-orm](https://github.com/drizzle-team/drizzle-orm) | `0.45.1` | `0.45.2` |\n| [postgres](https://github.com/porsager/postgres) | `3.4.8` | `3.4.9` |\n| [resend](https://github.com/resend/resend-node) | `6.9.2` | `6.12.4` |\n| [stripe](https://github.com/stripe/stripe-node) | `20.3.1` | `22.2.0` |\n| [@cloudflare/workers-types](https://github.com/cloudflare/workerd) | `4.20260218.0` | `4.20260608.1` |\n| [@types/bun](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/bun) | `1.3.9` | `1.3.14` |\n| [hono](https://github.com/honojs/hono) | `4.11.10` | `4.12.23` |\n| [zod](https://github.com/colinhacks/zod) | `4.3.6` | `4.4.3` |\n| [@radix-ui/react-checkbox](https://github.com/radix-ui/primitives/tree/HEAD/packages/react/checkbox) | `1.3.3` | `1.3.4` |\n| [@radix-ui/react-radio-group](https://github.com/radix-ui/primitives/tree/HEAD/packages/react/radio-group) | `1.3.8` | `1.4.0` |\n| [@radix-ui/react-scroll-area](https://github.com/radix-ui/primitives/tree/HEAD/packages/react/scroll-area) | `1.2.10` | `1.2.11` |\n| [@radix-ui/react-select](https://github.com/radix-ui/primitives/tree/HEAD/packages/react/select) | `2.2.6` | `2.3.0` |\n| [@radix-ui/react-separator](https://github.com/radix-ui/primitives/tree/HEAD/packages/react/separator) | `1.1.8` | `1.1.9` |\n| [@radix-ui/react-switch](https://github.com/radix-ui/primitives/tree/HEAD/packages/react/switch) | `1.2.6` | `1.3.0` |\n| [@tanstack/react-query](https://github.com/TanStack/query/tree/HEAD/packages/react-query) | `5.90.21` | `5.101.0` |\n| [@tanstack/react-router](https://github.com/TanStack/router/tree/HEAD/packages/react-router) | `1.161.1` | `1.170.15` |\n| [@trpc/client](https://github.com/trpc/trpc/tree/HEAD/packages/client) | `11.10.0` | `11.17.0` |\n| [@trpc/tanstack-react-query](https://github.com/trpc/trpc/tree/HEAD/packages/tanstack-react-query) | `11.10.0` | `11.17.0` |\n| [jotai](https://github.com/pmndrs/jotai) | `2.17.1` | `2.20.0` |\n| [jotai-effect](https://github.com/jotaijs/jotai-effect) | `2.2.3` | `2.3.1` |\n| [lucide-react](https://github.com/lucide-icons/lucide/tree/HEAD/packages/lucide-react) | `0.574.0` | `1.17.0` |\n| [react-dom](https://github.com/facebook/react/tree/HEAD/packages/react-dom) | `19.2.4` | `19.2.7` |\n| [react-error-boundary](https://github.com/bvaughn/react-error-boundary) | `6.1.1` | `6.1.2` |\n| [tailwind-merge](https://github.com/dcastil/tailwind-merge) | `3.4.1` | `3.6.0` |\n| [@tailwindcss/postcss](https://github.com/tailwindlabs/tailwindcss/tree/HEAD/packages/@tailwindcss-postcss) | `4.2.0` | `4.3.0` |\n| [@tanstack/react-query-devtools](https://github.com/TanStack/query/tree/HEAD/packages/react-query-devtools) | `5.91.3` | `5.101.0` |\n| [@tanstack/react-router-devtools](https://github.com/TanStack/router/tree/HEAD/packages/react-router-devtools) | `1.161.1` | `1.167.0` |\n| [@tanstack/router-plugin](https://github.com/TanStack/router/tree/HEAD/packages/router-plugin) | `1.161.1` | `1.168.18` |\n| [@types/node](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/node) | `25.2.3` | `25.9.2` |\n| [@vitejs/plugin-react](https://github.com/vitejs/vite-plugin-react/tree/HEAD/packages/plugin-react) | `5.1.4` | `6.0.2` |\n| [@vitejs/plugin-react-swc](https://github.com/vitejs/vite-plugin-react/tree/HEAD/packages/plugin-react-swc) | `4.2.3` | `4.3.1` |\n| [autoprefixer](https://github.com/postcss/autoprefixer) | `10.4.24` | `10.5.0` |\n| [globby](https://github.com/sindresorhus/globby) | `16.1.1` | `16.2.0` |\n| [@react-email/components](https://github.com/resend/react-email/tree/HEAD/packages/components) | `1.0.8` | `1.0.12` |\n| [@react-email/render](https://github.com/resend/react-email/tree/HEAD/packages/render) | `2.0.4` | `2.0.8` |\n| [@react-email/preview-server](https://github.com/resend/react-email/tree/HEAD/packages/preview-server) | `5.2.8` | `5.2.10` |\n| [react-email](https://github.com/resend/react-email/tree/HEAD/packages/react-email) | `5.2.8` | `6.5.0` |\n| [@astrojs/react](https://github.com/withastro/astro/tree/HEAD/packages/integrations/react) | `4.4.2` | `5.0.7` |\n| [astro](https://github.com/withastro/astro/tree/HEAD/packages/astro) | `5.17.2` | `6.4.4` |\n| [dotenv](https://github.com/motdotla/dotenv) | `17.3.1` | `17.4.2` |\n| [drizzle-kit](https://github.com/drizzle-team/drizzle-orm) | `0.31.9` | `0.31.10` |\n| [@radix-ui/react-avatar](https://github.com/radix-ui/primitives/tree/HEAD/packages/react/avatar) | `1.1.11` | `1.1.12` |\n| [@radix-ui/react-dialog](https://github.com/radix-ui/primitives/tree/HEAD/packages/react/dialog) | `1.1.15` | `1.1.16` |\n| [@radix-ui/react-label](https://github.com/radix-ui/primitives/tree/HEAD/packages/react/label) | `2.1.8` | `2.1.9` |\n| [@modelcontextprotocol/sdk](https://github.com/modelcontextprotocol/typescript-sdk) | `1.26.0` | `1.29.0` |\n| [got](https://github.com/sindresorhus/got) | `14.6.6` | `15.0.5` |\n\n\nUpdates `@eslint-react/eslint-plugin` from 2.13.0 to 5.8.16\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/Rel1cx/eslint-react/releases\"\u003e@​eslint-react/eslint-plugin's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev5.8.16 (2026-06-07)\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003ch3\u003e🐞 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAligned dependency versions across monorepo (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1853\"\u003e#1853\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/Rel1cx/eslint-react/compare/v5.8.15...v5.8.16\"\u003ehttps://github.com/Rel1cx/eslint-react/compare/v5.8.15...v5.8.16\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003eAttestation\u003c/h2\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/attestations/30180921\"\u003ehttps://github.com/Rel1cx/eslint-react/attestations/30180921\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev5.8.15 (2026-06-07)\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003ch3\u003e📝 Documentation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdded under-construction callouts and refined kit pages on the website (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1850\"\u003e#1850\u003c/a\u003e, \u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1851\"\u003e#1851\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eRemoved \u003ccode\u003eAGENTS.md\u003c/code\u003e and \u003ccode\u003eCONTRIBUTING.md\u003c/code\u003e documents and references (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1848\"\u003e#1848\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eUpdated home and third-party plugins pages on the website.\u003c/li\u003e\n\u003cli\u003eUpdated issue template guidance and labels.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🏗️ Internal\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eBumped \u003ccode\u003e@types/*\u003c/code\u003e dependencies (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1852\"\u003e#1852\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eRelaxed checklist requirements in issue templates (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1849\"\u003e#1849\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/Rel1cx/eslint-react/compare/v5.8.13...v5.8.15\"\u003ehttps://github.com/Rel1cx/eslint-react/compare/v5.8.13...v5.8.15\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003eAttestation\u003c/h2\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/attestations/30180297\"\u003ehttps://github.com/Rel1cx/eslint-react/attestations/30180297\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev5.8.13 (2026-06-07)\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003ch3\u003e📝 Documentation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdded \u003ccode\u003eGoogleCloudPlatform/gke-mcp\u003c/code\u003e and removed archived \u003ccode\u003eantfu/shiki-stream\u003c/code\u003e from community projects on the website.\u003c/li\u003e\n\u003cli\u003eImproved RSC Directives wording in documentation.\u003c/li\u003e\n\u003cli\u003eRemoved the \u003ccode\u003eno-multiple-children-in-title\u003c/code\u003e recipe from the website.\u003c/li\u003e\n\u003cli\u003eRemoved the kit beta banner from the website (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1846\"\u003e#1846\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🏗️ Internal\u003c/h3\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/Rel1cx/eslint-react/blob/main/CHANGELOG.md\"\u003e@​eslint-react/eslint-plugin's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev5.8.16 (2026-06-07)\u003c/h2\u003e\n\u003ch3\u003e🐞 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAligned dependency versions across monorepo (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1853\"\u003e#1853\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/Rel1cx/eslint-react/compare/v5.8.15...v5.8.16\"\u003ehttps://github.com/Rel1cx/eslint-react/compare/v5.8.15...v5.8.16\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev5.8.15 (2026-06-07)\u003c/h2\u003e\n\u003ch3\u003e📝 Documentation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdded under-construction callouts and refined kit pages on the website (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1850\"\u003e#1850\u003c/a\u003e, \u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1851\"\u003e#1851\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eRemoved \u003ccode\u003eAGENTS.md\u003c/code\u003e and \u003ccode\u003eCONTRIBUTING.md\u003c/code\u003e documents and references (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1848\"\u003e#1848\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eUpdated home and third-party plugins pages on the website.\u003c/li\u003e\n\u003cli\u003eUpdated issue template guidance and labels.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🏗️ Internal\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eBumped \u003ccode\u003e@types/*\u003c/code\u003e dependencies (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1852\"\u003e#1852\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eRelaxed checklist requirements in issue templates (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1849\"\u003e#1849\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/Rel1cx/eslint-react/compare/v5.8.13...v5.8.15\"\u003ehttps://github.com/Rel1cx/eslint-react/compare/v5.8.13...v5.8.15\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev5.8.13 (2026-06-06)\u003c/h2\u003e\n\u003ch3\u003e📝 Documentation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdded \u003ccode\u003eGoogleCloudPlatform/gke-mcp\u003c/code\u003e and removed archived \u003ccode\u003eantfu/shiki-stream\u003c/code\u003e from community projects on the website.\u003c/li\u003e\n\u003cli\u003eImproved RSC Directives wording in documentation.\u003c/li\u003e\n\u003cli\u003eRemoved the \u003ccode\u003eno-multiple-children-in-title\u003c/code\u003e recipe from the website.\u003c/li\u003e\n\u003cli\u003eRemoved the kit beta banner from the website (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1846\"\u003e#1846\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🏗️ Internal\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdded \u003ccode\u003eRuleListener\u003c/code\u003e return type to all rule \u003ccode\u003ecreate\u003c/code\u003e functions (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1845\"\u003e#1845\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdded boundary and edge case tests for \u003ccode\u003ereact-dom\u003c/code\u003e rules, JSX rules, and \u003ccode\u003enaming-convention\u003c/code\u003e rules (\u003ccode\u003econtext-name\u003c/code\u003e, \u003ccode\u003eid-name\u003c/code\u003e, \u003ccode\u003eref-name\u003c/code\u003e).\u003c/li\u003e\n\u003cli\u003eAdded identifier resolution tests for \u003ccode\u003ereact-x/no-leaked-conditional-rendering\u003c/code\u003e (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1844\"\u003e#1844\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eBumped \u003ccode\u003epnpm\u003c/code\u003e and updated lockfile.\u003c/li\u003e\n\u003cli\u003eBumped \u003ccode\u003etsdown\u003c/code\u003e to \u003ccode\u003e0.22.2\u003c/code\u003e and updated dependencies.\u003c/li\u003e\n\u003cli\u003eRemoved redundant single-argument \u003ccode\u003emerge()\u003c/code\u003e calls in rules (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1843\"\u003e#1843\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eSwitched GitHub workflows to \u003ccode\u003eubuntu-latest\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003eUpdated website brand assets and icons.\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/Rel1cx/eslint-react/compare/v5.8.12...v5.8.13\"\u003ehttps://github.com/Rel1cx/eslint-react/compare/v5.8.12...v5.8.13\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev5.8.12 (2026-06-05)\u003c/h2\u003e\n\u003ch3\u003e🪄 Improvements\u003c/h3\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/f9e975424aab7552f53308ec40c07eee58086dbb\"\u003e\u003ccode\u003ef9e9754\u003c/code\u003e\u003c/a\u003e release: 5.8.16\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/8719df27f74222afa045f08ed8e79d5d0833de3e\"\u003e\u003ccode\u003e8719df2\u003c/code\u003e\u003c/a\u003e release: 5.8.15\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/1022e493f015bcec49babc6c4a3bbb838bcfc311\"\u003e\u003ccode\u003e1022e49\u003c/code\u003e\u003c/a\u003e release: 5.8.14\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/81cdcc982434b841e2a7b3732644d122932f3229\"\u003e\u003ccode\u003e81cdcc9\u003c/code\u003e\u003c/a\u003e chore(deps): bump @types/* dependencies (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1852\"\u003e#1852\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/ad1aada15ceee6a331f4514fcb6638d6db468323\"\u003e\u003ccode\u003ead1aada\u003c/code\u003e\u003c/a\u003e docs: remove \u003ccode\u003eAGENTS.md\u003c/code\u003e and \u003ccode\u003eCONTRIBUTING.md\u003c/code\u003e docs and references (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1848\"\u003e#1848\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/e2920e3d2296471d1c4b498da17c13eb4750aa8a\"\u003e\u003ccode\u003ee2920e3\u003c/code\u003e\u003c/a\u003e release: 5.8.13\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/e68a316467cc907dda9e9a6f91f89f7f68c067f8\"\u003e\u003ccode\u003ee68a316\u003c/code\u003e\u003c/a\u003e chore: bump tsdown to 0.22.2 and update deps\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/de7d846106872352dcbed7713541d99c03bd5bac\"\u003e\u003ccode\u003ede7d846\u003c/code\u003e\u003c/a\u003e release: 5.8.12\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/3498c34b904454c44425ed148107ef8f5184eecf\"\u003e\u003ccode\u003e3498c34\u003c/code\u003e\u003c/a\u003e release: 5.8.11\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/0ee67d6c2f890f20165ee540773b8eda37adf9cf\"\u003e\u003ccode\u003e0ee67d6\u003c/code\u003e\u003c/a\u003e docs: update Meta legal name and add brand assets page (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1832\"\u003e#1832\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/Rel1cx/eslint-react/commits/v5.8.16/plugins/eslint-plugin\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@eslint/js` from 9.39.2 to 10.0.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/eslint/eslint/releases\"\u003e@​eslint/js's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev10.0.1\u003c/h2\u003e\n\u003ch2\u003eBug Fixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/c87d5bded54c5cf491eb04c24c9d09bbbd42c23e\"\u003e\u003ccode\u003ec87d5bd\u003c/code\u003e\u003c/a\u003e fix: update eslint (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20531\"\u003e#20531\u003c/a\u003e) (renovate[bot])\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/d84100115c14691691058f00779c94e74fca946a\"\u003e\u003ccode\u003ed841001\u003c/code\u003e\u003c/a\u003e fix: update \u003ccode\u003eminimatch\u003c/code\u003e to \u003ccode\u003e10.2.1\u003c/code\u003e to address security vulnerabilities (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20519\"\u003e#20519\u003c/a\u003e) (루밀LuMir)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/04c21475b3004904948f02049f2888b401d82c78\"\u003e\u003ccode\u003e04c2147\u003c/code\u003e\u003c/a\u003e fix: update error message for unused suppressions (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20496\"\u003e#20496\u003c/a\u003e) (fnx)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/38b089c1726feac0e31a31d47941bd99e29ce003\"\u003e\u003ccode\u003e38b089c\u003c/code\u003e\u003c/a\u003e fix: update dependency \u003ccode\u003e@​eslint/config-array\u003c/code\u003e to ^0.23.1 (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20484\"\u003e#20484\u003c/a\u003e) (renovate[bot])\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eDocumentation\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/5b3dbce50a1404a9f118afe810cefeee79388a2a\"\u003e\u003ccode\u003e5b3dbce\u003c/code\u003e\u003c/a\u003e docs: add AI acknowledgement section to templates (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20431\"\u003e#20431\u003c/a\u003e) (루밀LuMir)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/6f23076037d5879f20fb3be2ef094293b1e8d38c\"\u003e\u003ccode\u003e6f23076\u003c/code\u003e\u003c/a\u003e docs: toggle nav in no-JS mode (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20476\"\u003e#20476\u003c/a\u003e) (Tanuj Kanti)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/b69cfb32a16c5d5e9986390d484fae1d21e406f9\"\u003e\u003ccode\u003eb69cfb3\u003c/code\u003e\u003c/a\u003e docs: Update README (GitHub Actions Bot)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eChores\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/e5c281ffd038a3a7a3e5364db0b9378e0ad83020\"\u003e\u003ccode\u003ee5c281f\u003c/code\u003e\u003c/a\u003e chore: updates for v9.39.3 release (Jenkins)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/8c3832adb77cd993b4a24891900d5eeaaf093cdc\"\u003e\u003ccode\u003e8c3832a\u003c/code\u003e\u003c/a\u003e chore: update \u003ccode\u003e@​typescript-eslint/parser\u003c/code\u003e to ^8.56.0 (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20514\"\u003e#20514\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/8330d238ae6adb68bb6a1c9381e38cfedd990d94\"\u003e\u003ccode\u003e8330d23\u003c/code\u003e\u003c/a\u003e test: add tests for config-api (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20493\"\u003e#20493\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/37d6e91e88fa6a2ca6d8726679096acff21ba6cc\"\u003e\u003ccode\u003e37d6e91\u003c/code\u003e\u003c/a\u003e chore: remove eslint v10 prereleases from eslint-config-eslint deps (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20494\"\u003e#20494\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/da7cd0e79197ad16e17052eef99df141de6dbfb1\"\u003e\u003ccode\u003eda7cd0e\u003c/code\u003e\u003c/a\u003e refactor: cleanup error message templates (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20479\"\u003e#20479\u003c/a\u003e) (Francesco Trotta)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/84fb885d49ac810e79a9491276b4828b53d913e5\"\u003e\u003ccode\u003e84fb885\u003c/code\u003e\u003c/a\u003e chore: package.json update for \u003ccode\u003e@​eslint/js\u003c/code\u003e release (Jenkins)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/1f667344b57c4c09b548d94bcfac1f91b6e5c63d\"\u003e\u003ccode\u003e1f66734\u003c/code\u003e\u003c/a\u003e chore: add \u003ccode\u003eeslint\u003c/code\u003e to \u003ccode\u003epeerDependencies\u003c/code\u003e of \u003ccode\u003e@eslint/js\u003c/code\u003e (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20467\"\u003e#20467\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev10.0.0\u003c/h2\u003e\n\u003ch2\u003eBreaking Changes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/f9e54f43a5e497cdfa179338b431093245cb787b\"\u003e\u003ccode\u003ef9e54f4\u003c/code\u003e\u003c/a\u003e feat!: estimate rule-tester failure location (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20420\"\u003e#20420\u003c/a\u003e) (ST-DDT)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/a176319d8ade1a7d9b2d7fb8f038f55a2662325f\"\u003e\u003ccode\u003ea176319\u003c/code\u003e\u003c/a\u003e feat!: replace \u003ccode\u003echalk\u003c/code\u003e with \u003ccode\u003estyleText\u003c/code\u003e and add \u003ccode\u003ecolor\u003c/code\u003e to \u003ccode\u003eResultsMeta\u003c/code\u003e (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20227\"\u003e#20227\u003c/a\u003e) (루밀LuMir)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/c7046e6c1e03c4ca0eee4888a1f2eba4c6454f84\"\u003e\u003ccode\u003ec7046e6\u003c/code\u003e\u003c/a\u003e feat!: enable JSX reference tracking (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20152\"\u003e#20152\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/fa31a608901684fbcd9906d1907e66561d16e5aa\"\u003e\u003ccode\u003efa31a60\u003c/code\u003e\u003c/a\u003e feat!: add \u003ccode\u003ename\u003c/code\u003e to configs (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20015\"\u003e#20015\u003c/a\u003e) (Kirk Waiblinger)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/3383e7ec9028166cafc8ea7986c2f7498d0049f0\"\u003e\u003ccode\u003e3383e7e\u003c/code\u003e\u003c/a\u003e fix!: remove deprecated \u003ccode\u003eSourceCode\u003c/code\u003e methods (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20137\"\u003e#20137\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/501abd0e916a35554c58b7c0365537f1fa3880ce\"\u003e\u003ccode\u003e501abd0\u003c/code\u003e\u003c/a\u003e feat!: update dependency minimatch to v10 (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20246\"\u003e#20246\u003c/a\u003e) (renovate[bot])\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/ca4d3b40085de47561f89656a2207d09946ed45e\"\u003e\u003ccode\u003eca4d3b4\u003c/code\u003e\u003c/a\u003e fix!: stricter rule tester assertions for valid test cases (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20125\"\u003e#20125\u003c/a\u003e) (唯然)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/96512a66c86402fb0538cdcb6cd30b9073f6bf3b\"\u003e\u003ccode\u003e96512a6\u003c/code\u003e\u003c/a\u003e fix!: Remove deprecated rule context methods (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20086\"\u003e#20086\u003c/a\u003e) (Nicholas C. Zakas)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/c69fdacdb2e886b9d965568a397aa8220db3fe90\"\u003e\u003ccode\u003ec69fdac\u003c/code\u003e\u003c/a\u003e feat!: remove eslintrc support (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20037\"\u003e#20037\u003c/a\u003e) (Francesco Trotta)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/208b5cc34a8374ff81412b5bec2e0800eebfbd04\"\u003e\u003ccode\u003e208b5cc\u003c/code\u003e\u003c/a\u003e feat!: Use \u003ccode\u003eScopeManager#addGlobals()\u003c/code\u003e (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20132\"\u003e#20132\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/a2ee188ea7a38a0c6155f3d39e2b00e1d0f36e14\"\u003e\u003ccode\u003ea2ee188\u003c/code\u003e\u003c/a\u003e fix!: add \u003ccode\u003euniqueItems: true\u003c/code\u003e in \u003ccode\u003eno-invalid-regexp\u003c/code\u003e option (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20155\"\u003e#20155\u003c/a\u003e) (Tanuj Kanti)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/a89059dbf2832d417dd493ee81483227ec44e4ab\"\u003e\u003ccode\u003ea89059d\u003c/code\u003e\u003c/a\u003e feat!: Program range span entire source text (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20133\"\u003e#20133\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/39a6424373d915fa9de0d7b0caba9a4dc3da9b53\"\u003e\u003ccode\u003e39a6424\u003c/code\u003e\u003c/a\u003e fix!: assert 'text' is a string across all RuleFixer methods (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20082\"\u003e#20082\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/f28fbf846244e043c92b355b224d121b06140b44\"\u003e\u003ccode\u003ef28fbf8\u003c/code\u003e\u003c/a\u003e fix!: Deprecate \u003ccode\u003e\u0026quot;always\u0026quot;\u003c/code\u003e and \u003ccode\u003e\u0026quot;as-needed\u0026quot;\u003c/code\u003e options of the \u003ccode\u003eradix\u003c/code\u003e rule (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20223\"\u003e#20223\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/aa3fb2b233e929b37220be940575f42c280e0b98\"\u003e\u003ccode\u003eaa3fb2b\u003c/code\u003e\u003c/a\u003e fix!: tighten \u003ccode\u003efunc-names\u003c/code\u003e schema (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20119\"\u003e#20119\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/f6c0ed0311dcfee853367d5068c765d066e6b756\"\u003e\u003ccode\u003ef6c0ed0\u003c/code\u003e\u003c/a\u003e feat!: report \u003ccode\u003eeslint-env\u003c/code\u003e comments as errors (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20128\"\u003e#20128\u003c/a\u003e) (Francesco Trotta)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/4bf739fb533e59f7f0a66b65f7bc80be0f37d8db\"\u003e\u003ccode\u003e4bf739f\u003c/code\u003e\u003c/a\u003e fix!: remove deprecated \u003ccode\u003eLintMessage#nodeType\u003c/code\u003e and \u003ccode\u003eTestCaseError#type\u003c/code\u003e (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20096\"\u003e#20096\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/523c076866400670fb2192a3f55dbf7ad3469247\"\u003e\u003ccode\u003e523c076\u003c/code\u003e\u003c/a\u003e feat!: drop support for jiti \u0026lt; 2.2.0 (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20016\"\u003e#20016\u003c/a\u003e) (michael faith)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/454a292c95f34dad232411ddac06408e6383bb64\"\u003e\u003ccode\u003e454a292\u003c/code\u003e\u003c/a\u003e feat!: update \u003ccode\u003eeslint:recommended\u003c/code\u003e configuration (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20210\"\u003e#20210\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/4f880ee02992e1bf0e96ebaba679985e2d1295f1\"\u003e\u003ccode\u003e4f880ee\u003c/code\u003e\u003c/a\u003e feat!: remove \u003ccode\u003ev10_*\u003c/code\u003e and inactive \u003ccode\u003eunstable_*\u003c/code\u003e flags (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20225\"\u003e#20225\u003c/a\u003e) (sethamus)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/f18115c363a4ac7671a4c7f30ee13d57ebba330f\"\u003e\u003ccode\u003ef18115c\u003c/code\u003e\u003c/a\u003e feat!: \u003ccode\u003eno-shadow-restricted-names\u003c/code\u003e report \u003ccode\u003eglobalThis\u003c/code\u003e by default (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20027\"\u003e#20027\u003c/a\u003e) (sethamus)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/c6358c31fbd3937b92d89be2618ffdf5a774604e\"\u003e\u003ccode\u003ec6358c3\u003c/code\u003e\u003c/a\u003e feat!: Require Node.js \u003ccode\u003e^20.19.0 || ^22.13.0 || \u0026gt;=24\u003c/code\u003e (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20160\"\u003e#20160\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eFeatures\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/bff9091927811497dbf066b0e3b85ecb37d43822\"\u003e\u003ccode\u003ebff9091\u003c/code\u003e\u003c/a\u003e feat: handle \u003ccode\u003eArray.fromAsync\u003c/code\u003e in \u003ccode\u003earray-callback-return\u003c/code\u003e (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20457\"\u003e#20457\u003c/a\u003e) (Francesco Trotta)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/290c594bb50c439fb71bc75521ee5360daa8c222\"\u003e\u003ccode\u003e290c594\u003c/code\u003e\u003c/a\u003e feat: add \u003ccode\u003eself\u003c/code\u003e to \u003ccode\u003eno-implied-eval\u003c/code\u003e rule (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20468\"\u003e#20468\u003c/a\u003e) (sethamus)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/43677de07ebd6e14bfac40a46ad749ba783c45f2\"\u003e\u003ccode\u003e43677de\u003c/code\u003e\u003c/a\u003e feat: fix handling of function and class expression names in \u003ccode\u003eno-shadow\u003c/code\u003e (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20432\"\u003e#20432\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/84fb885d49ac810e79a9491276b4828b53d913e5\"\u003e\u003ccode\u003e84fb885\u003c/code\u003e\u003c/a\u003e chore: package.json update for \u003ccode\u003e@​eslint/js\u003c/code\u003e release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/1f667344b57c4c09b548d94bcfac1f91b6e5c63d\"\u003e\u003ccode\u003e1f66734\u003c/code\u003e\u003c/a\u003e chore: add \u003ccode\u003eeslint\u003c/code\u003e to \u003ccode\u003epeerDependencies\u003c/code\u003e of \u003ccode\u003e@eslint/js\u003c/code\u003e (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20467\"\u003e#20467\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/f3fbc2f60cbe2c718364feb8c3fc0452c0df3c56\"\u003e\u003ccode\u003ef3fbc2f\u003c/code\u003e\u003c/a\u003e chore: set \u003ccode\u003e@eslint/js\u003c/code\u003e version to 10.0.0 to skip releasing it (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20466\"\u003e#20466\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/b4b3127f8542c599ce2dea804b6582ebc40c993d\"\u003e\u003ccode\u003eb4b3127\u003c/code\u003e\u003c/a\u003e chore: package.json update for \u003ccode\u003e@​eslint/js\u003c/code\u003e release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/0b14059491d830a49b3577931f4f68fbcfce6be5\"\u003e\u003ccode\u003e0b14059\u003c/code\u003e\u003c/a\u003e chore: package.json update for \u003ccode\u003e@​eslint/js\u003c/code\u003e release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/fa31a608901684fbcd9906d1907e66561d16e5aa\"\u003e\u003ccode\u003efa31a60\u003c/code\u003e\u003c/a\u003e feat!: add \u003ccode\u003ename\u003c/code\u003e to configs (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20015\"\u003e#20015\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/1e2cad5f6fa47ed6ed89d2a29798dda926d50990\"\u003e\u003ccode\u003e1e2cad5\u003c/code\u003e\u003c/a\u003e chore: package.json update for \u003ccode\u003e@​eslint/js\u003c/code\u003e release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/454a292c95f34dad232411ddac06408e6383bb64\"\u003e\u003ccode\u003e454a292\u003c/code\u003e\u003c/a\u003e feat!: update \u003ccode\u003eeslint:recommended\u003c/code\u003e configuration (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20210\"\u003e#20210\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/c6358c31fbd3937b92d89be2618ffdf5a774604e\"\u003e\u003ccode\u003ec6358c3\u003c/code\u003e\u003c/a\u003e feat!: Require Node.js \u003ccode\u003e^20.19.0 || ^22.13.0 || \u0026gt;=24\u003c/code\u003e (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20160\"\u003e#20160\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/eslint/eslint/commits/v10.0.1/packages/js\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@typescript-eslint/eslint-plugin` from 8.56.0 to 8.60.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases\"\u003e@​typescript-eslint/eslint-plugin's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev8.60.1\u003c/h2\u003e\n\u003ch2\u003e8.60.1 (2026-06-01)\u003c/h2\u003e\n\u003ch3\u003e🩹 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e respect ECMAScript line terminators in ts-comment rules (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12352\"\u003e#12352\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-shadow] correct rule to match ESLint v10 handling (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12182\"\u003e#12182\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e❤️ Thank You\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003elumir\u003c/li\u003e\n\u003cli\u003eNevette Bailey \u003ca href=\"https://github.com/nevette-bailey\"\u003e\u003ccode\u003e@​nevette-bailey\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.60.1\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003ev8.60.0\u003c/h2\u003e\n\u003ch2\u003e8.60.0 (2026-05-25)\u003c/h2\u003e\n\u003ch3\u003e🚀 Features\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003erule-tester:\u003c/strong\u003e added updates of RuleTester from upstream (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12291\"\u003e#12291\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🩹 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eplayground TS version selector is not working (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12326\"\u003e#12326\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/issues/12325\"\u003e#12325\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e❤️ Thank You\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eEvyatar Daud \u003ca href=\"https://github.com/StyleShit\"\u003e\u003ccode\u003e@​StyleShit\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eVinccool96\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.60.0\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003ev8.59.4\u003c/h2\u003e\n\u003ch2\u003e8.59.4 (2026-05-18)\u003c/h2\u003e\n\u003ch3\u003e🩹 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-floating-promises] stack overflow when using recursive types (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12294\"\u003e#12294\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eproject-service:\u003c/strong\u003e throw error cause in \u003ccode\u003egetParsedConfigFileFromTSServer\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12321\"\u003e#12321\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003etypescript-eslint:\u003c/strong\u003e export Compatible* types from typescript-eslint to resolve pnpm TS error (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12340\"\u003e#12340\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e❤️ Thank You\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eEvyatar Daud \u003ca href=\"https://github.com/StyleShit\"\u003e\u003ccode\u003e@​StyleShit\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eKirk Waiblinger \u003ca href=\"https://github.com/kirkwaiblinger\"\u003e\u003ccode\u003e@​kirkwaiblinger\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/CHANGELOG.md\"\u003e@​typescript-eslint/eslint-plugin's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e8.60.1 (2026-06-01)\u003c/h2\u003e\n\u003ch3\u003e🩹 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-shadow] correct rule to match ESLint v10 handling (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12182\"\u003e#12182\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e respect ECMAScript line terminators in ts-comment rules (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12352\"\u003e#12352\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e❤️ Thank You\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003elumir\u003c/li\u003e\n\u003cli\u003eNevette Bailey \u003ca href=\"https://github.com/nevette-bailey\"\u003e\u003ccode\u003e@​nevette-bailey\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.60.1\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003e8.60.0 (2026-05-25)\u003c/h2\u003e\n\u003cp\u003eThis was a version bump only for eslint-plugin to align it with other projects, there were no code changes.\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.60.0\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003e8.59.4 (2026-05-18)\u003c/h2\u003e\n\u003ch3\u003e🩹 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-floating-promises] stack overflow when using recursive types (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12294\"\u003e#12294\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e❤️ Thank You\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eEvyatar Daud \u003ca href=\"https://github.com/StyleShit\"\u003e\u003ccode\u003e@​StyleShit\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.4\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003e8.59.3 (2026-05-11)\u003c/h2\u003e\n\u003cp\u003eThis was a version bump only for eslint-plugin to align it with other projects, there were no code changes.\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.3\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003e8.59.2 (2026-05-04)\u003c/h2\u003e\n\u003ch3\u003e🩹 Fixes\u003c/h3\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/4f84a697aedc436559c3ae09b5b357d98b448d68\"\u003e\u003ccode\u003e4f84a69\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.60.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/598af564db50593277ba46c7fdea3648e4425391\"\u003e\u003ccode\u003e598af56\u003c/code\u003e\u003c/a\u003e docs(eslint-plugin): clarify no-redeclare type-value collision not covered by...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/1849b530c254fb4f89d7270160f3a998e4acd964\"\u003e\u003ccode\u003e1849b53\u003c/code\u003e\u003c/a\u003e chore: typecheck using tsgo (\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin/issues/12139\"\u003e#12139\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/5341d59dd3c21fc4e2bf3bce55cf35d8f84e5216\"\u003e\u003ccode\u003e5341d59\u003c/code\u003e\u003c/a\u003e chore: fix lint issues (\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin/issues/12369\"\u003e#12369\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/f525814f01766487ab34a54d56de20ea5c4fb576\"\u003e\u003ccode\u003ef525814\u003c/code\u003e\u003c/a\u003e fix(eslint-plugin): [no-shadow] correct rule to match ESLint v10 handling (\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin/issues/1\"\u003e#1\u003c/a\u003e...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/2df540cd8bbeb3e2c56d516912f69bf63c1e9450\"\u003e\u003ccode\u003e2df540c\u003c/code\u003e\u003c/a\u003e chore(eslint-plugin): defer type checks to improve rules performance (\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin/issues/12296\"\u003e#12296\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/1ab4284789b36cf482a4d9924719162a02d54243\"\u003e\u003ccode\u003e1ab4284\u003c/code\u003e\u003c/a\u003e fix(eslint-plugin): respect ECMAScript line terminators in ts-comment rules (...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/2f49df599b2db5f2937caf975d3c63e5cdeb0ea1\"\u003e\u003ccode\u003e2f49df5\u003c/code\u003e\u003c/a\u003e docs: update references to \u003ccode\u003e@stylistic/eslint-plugin\u003c/code\u003e rules in documentation ...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/f891c29de5f3e23f3d8c59cc599d3196e54e9b58\"\u003e\u003ccode\u003ef891c29\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.60.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/ca6ca1431b6d18235297a7e29feb5d98f012dff2\"\u003e\u003ccode\u003eca6ca14\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.59.4\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commits/v8.60.1/packages/eslint-plugin\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@typescript-eslint/parser` from 8.56.0 to 8.60.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases\"\u003e@​typescript-eslint/parser's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev8.60.1\u003c/h2\u003e\n\u003ch2\u003e8.60.1 (2026-06-01)\u003c/h2\u003e\n\u003ch3\u003e🩹 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e respect ECMAScript line terminators in ts-comment rules (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12352\"\u003e#12352\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-shadow] correct rule to match ESLint v10 handling (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12182\"\u003e#12182\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e❤️ Thank You\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003elumir\u003c/li\u003e\n\u003cli\u003eNevette Bailey \u003ca href=\"https://github.com/nevette-bailey\"\u003e\u003ccode\u003e@​nevette-bailey\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.60.1\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003ev8.60.0\u003c/h2\u003e\n\u003ch2\u003e8.60.0 (2026-05-25)\u003c/h2\u003e\n\u003ch3\u003e🚀 Features\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003erule-tester:\u003c/strong\u003e added updates of RuleTester from upstream (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12291\"\u003e#12291\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🩹 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eplayground TS version selector is not working (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12326\"\u003e#12326\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/issues/12325\"\u003e#12325\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e❤️ Thank You\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eEvyatar Daud \u003ca href=\"https://github.com/StyleShit\"\u003e\u003ccode\u003e@​StyleShit\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eVinccool96\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.60.0\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003ev8.59.4\u003c/h2\u003e\n\u003ch2\u003e8.59.4 (2026-05-18)\u003c/h2\u003e\n\u003ch3\u003e🩹 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-floating-promises] stack overflow when using recursive types (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12294\"\u003e#12294\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eproject-service:\u003c/strong\u003e throw error cause in \u003ccode\u003egetParsedConfigFileFromTSServer\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12321\"\u003e#12321\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003etypescript-eslint:\u003c/strong\u003e export Compatible* types from typescript-eslint to resolve pnpm TS error (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12340\"\u003e#12340\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e❤️ Thank You\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eEvyatar Daud \u003ca href=\"https://github.com/StyleShit\"\u003e\u003ccode\u003e@​StyleShit\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eKirk Waiblinger \u003ca href=\"https://github.com/kirkwaiblinger\"\u003e\u003ccode\u003e@​kirkwaiblinger\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/parser/CHANGELOG.md\"\u003e@​typescript-eslint/parser's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e8.60.1 (2026-06-01)\u003c/h2\u003e\n\u003cp\u003eThis was a version bump only for parser to align it with other projects, there were no code changes.\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.60.1\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003e8.60.0 (2026-05-25)\u003c/h2\u003e\n\u003cp\u003eThis was a version bump only for parser to align it with other projects, there were no code changes.\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.60.0\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003e8.59.4 (2026-05-18)\u003c/h2\u003e\n\u003cp\u003eThis was a version bump only for parser to align it with other projects, there were no code changes.\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.4\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003e8.59.3 (2026-05-11)\u003c/h2\u003e\n\u003cp\u003eThis was a version bump only for parser to align it with other projects, there were no code changes.\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.3\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003e8.59.2 (2026-05-04)\u003c/h2\u003e\n\u003cp\u003eThis was a version bump only for parser to align it with other projects, there were no code changes.\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.2\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003e8.59.1 (2026-04-27)\u003c/h2\u003e\n\u003cp\u003eThis was a version bump only for parser to align it with other projects, there were no code changes.\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.1\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003e8.59.0 (2026-04-20)\u003c/h2\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/4f84a697aedc436559c3ae09b5b357d98b448d68\"\u003e\u003ccode\u003e4f84a69\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.60.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/1849b530c254fb4f89d7270160f3a998e4acd964\"\u003e\u003ccode\u003e1849b53\u003c/code\u003e\u003c/a\u003e chore: typecheck using tsgo (\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/parser/issues/12139\"\u003e#12139\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/f891c29de5f3e23f3d8c59cc599d3196e54e9b58\"\u003e\u003ccode\u003ef891c29\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.60.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/ca6ca1431b6d18235297a7e29feb5d98f012dff2\"\u003e\u003ccode\u003eca6ca14\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.59.4\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/48e13c0261e3cb1bf4f4dfaa462cdb3a56ef7383\"\u003e\u003ccode\u003e48e13c0\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.59.3\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/44f9625336841a8ee3eb01a9e02e49b1d7b12648\"\u003e\u003ccode\u003e44f9625\u003c/code\u003e\u003c/a\u003e chore(deps): update vitest monorepo to v4.1.5 (\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/parser/issues/12307\"\u003e#12307\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/2ec35f1760aade4df4c631d76d78c7ed5e136333\"\u003e\u003ccode\u003e2ec35f1\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.59.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/52457932e5507b5ca01e720a541f3f8d01e09b9d\"\u003e\u003ccode\u003e5245793\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.59.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/ea9ae4f8817873480e3501145059f63e39e8d8a1\"\u003e\u003ccode\u003eea9ae4f\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.59.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/90c2803a4c250e0343598d41e973f95e743bf4ce\"\u003e\u003ccode\u003e90c2803\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.58.2\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commits/v8.60.1/packages/parser\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `eslint` from 9.39.2 to 10.4.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/eslint/eslint/releases\"\u003eeslint's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev10.4.1\u003c/h2\u003e\n\u003ch2\u003eBug Fixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/e557467db7496220eebcbe2ac5ea6d38c12bb1ec\"\u003e\u003ccode\u003ee557467\u003c/code\u003e\u003c/a\u003e fix: update \u003ccode\u003e@eslint/plugin-kit\u003c/code\u003e version to 0.7.2 (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20930\"\u003e#20930\u003c/a\u003e) (Francesco Trotta)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/d4ce898796ca22c3b96aa70d3014cb85f4bac1cd\"\u003e\u003ccode\u003ed4ce898\u003c/code\u003e\u003c/a\u003e fix: propagate failures from delegated commands (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20917\"\u003e#20917\u003c/a\u003e) (Minh Vu)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/f4f3507460bc016b5be979c05d2969793f570cbf\"\u003e\u003ccode\u003ef4f3507\u003c/code\u003e\u003c/a\u003e fix: prefer-arrow-callback invalid autofix with newline after \u003ccode\u003easync\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20916\"\u003e#20916\u003c/a\u003e) (kuldeep kumar)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/c5bc78b37e08b9054a11f0cc2d81808bb24acb85\"\u003e\u003ccode\u003ec5bc78b\u003c/code\u003e\u003c/a\u003e fix: false positive for reference in \u003ccode\u003efinally\u003c/code\u003e block (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20655\"\u003e#20655\u003c/a\u003e) (Tanuj Kanti)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/27538c01f5df4e9306f6f4ba867b2dd6307fae59\"\u003e\u003ccode\u003e27538c0\u003c/code\u003e\u003c/a\u003e fix: add missing CodePath and CodePathSegment types (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20853\"\u003e#20853\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eDocumentation\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/61b0add61ffc52665562be7bb96f526690a78b30\"\u003e\u003ccode\u003e61b0add\u003c/code\u003e\u003c/a\u003e docs: remove deprecated rule from related rules of \u003ccode\u003emax-params\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20921\"\u003e#20921\u003c/a\u003e) (Tanuj Kanti)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/305d5b91aeac24d36fde42f75625a8f183d4ce43\"\u003e\u003ccode\u003e305d5b9\u003c/code\u003e\u003c/a\u003e docs: remove deprecated rules from related rules section (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20911\"\u003e#20911\u003c/a\u003e) (Tanuj Kanti)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/49b0202d01918b8061720d586dffd7c68047090c\"\u003e\u003ccode\u003e49b0202\u003c/code\u003e\u003c/a\u003e docs: fix \u003ccode\u003edisplay: none\u003c/code\u003e of ad (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20901\"\u003e#20901\u003c/a\u003e) (Tanuj Kanti)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/9067f9492ec998afc5b4f057a477ecf6ebd45e44\"\u003e\u003ccode\u003e9067f94\u003c/code\u003e\u003c/a\u003e docs: switch build to Node.js 24 (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20893\"\u003e#20893\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/c91b0417e3420c76807ce1fa2aea76e2de87ab86\"\u003e\u003ccode\u003ec91b041\u003c/code\u003e\u003c/a\u003e docs: Update README (GitHub Actions Bot)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/e349265cb37f3ebc837e178e48a725bb782bd870\"\u003e\u003ccode\u003ee349265\u003c/code\u003e\u003c/a\u003e docs: clarify semver strings in rule deprecation objects (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20885\"\u003e#20885\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eChores\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/b0e466b6ab47bfc7de43d8de0c315d8ee83aa584\"\u003e\u003ccode\u003eb0e466b\u003c/code\u003e\u003c/a\u003e test: add \u003ccode\u003edata\u003c/code\u003e property to invalid tests cases for rules (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20924\"\u003e#20924\u003c/a\u003e) (Tanuj Kanti)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/f78838bc4c86d487e1bcc7cede260c4467721c46\"\u003e\u003ccode\u003ef78838b\u003c/code\u003e\u003c/a\u003e test: add CodePath type coverage (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20904\"\u003e#20904\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/1daa4bd734b79a62e317d0394394a6b38cff49f9\"\u003e\u003ccode\u003e1daa4bd\u003c/code\u003e\u003c/a\u003e chore: update \u003ccode\u003eeslint-plugin-eslint-comments\u003c/code\u003e test data to latest commit (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20922\"\u003e#20922\u003c/a\u003e) (Francesco Trotta)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/002942ce988ea28b78e0a2f3b074081e638b552c\"\u003e\u003ccode\u003e002942c\u003c/code\u003e\u003c/a\u003e ci: declare contents:read on update-readme workflow (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20919\"\u003e#20919\u003c/a\u003e) (Arpit Jain)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/64bca24e7bed35bc3c864fc625cb2d89eca87d5b\"\u003e\u003ccode\u003e64bca24\u003c/code\u003e\u003c/a\u003e chore: update ecosystem plugins (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20912\"\u003e#20912\u003c/a\u003e) (ESLint Bot)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/6d7c832950d5e92499d88e504080661f888f8f56\"\u003e\u003ccode\u003e6d7c832\u003c/code\u003e\u003c/a\u003e chore: ignore fflate updates in renovate (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20908\"\u003e#20908\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/b2c86382164d87c6203b78d52068cd6a2a6ffe30\"\u003e\u003ccode\u003eb2c8638\u003c/code\u003e\u003c/a\u003e ci: bump pnpm/action-setup from 6.0.7 to 6.0.8 (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20889\"\u003e#20889\u003c/a\u003e) (dependabot[bot])\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/a9b8d7f74c50211701cfc49710fa541fd91b2aa5\"\u003e\u003ccode\u003ea9b8d7f\u003c/code\u003e\u003c/a\u003e chore: increase maxBuffer for ecosystem tests (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20881\"\u003e#20881\u003c/a\u003e) (sethamus)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/b702ead5e1ed7cb9f28238a454797662efb37396\"\u003e\u003ccode\u003eb702ead\u003c/code\u003e\u003c/a\u003e chore: update ecosystem update PR settings (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20884\"\u003e#20884\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/507f60e9a78c9a902bc8759f066ae17a1ea6cd81\"\u003e\u003ccode\u003e507f60e\u003c/code\u003e\u003c/a\u003e chore: update ecosystem plugins (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20882\"\u003e#20882\u003c/a\u003e) (ESLint Bot)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/92f5c5bb6bf3a5d167c8ee53a430833410295c6d\"\u003e\u003ccode\u003e92f5c5b\u003c/code\u003e\u003c/a\u003e test: add unit test for message-count (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20878\"\u003e#20878\u003c/a\u003e) (kuldeep kumar)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/df321080af5758b1fa25e4b9a40e26135642dd6e\"\u003e\u003ccode\u003edf32108\u003c/code\u003e\u003c/a\u003e chore: add \u003ccode\u003e@​eslint/markdown\u003c/code\u003e and typescript-eslint ecosystem tests (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20837\"\u003e#20837\u003c/a\u003e) (sethamus)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/327f91d36aa49f2a50ded931d841a16374fd875f\"\u003e\u003ccode\u003e327f91d\u003c/code\u003e\u003c/a\u003e chore: use includeIgnoreFile internally (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20876\"\u003e#20876\u003c/a\u003e) (Kirk Waiblinger)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/f0dc4bd893fb3a9f44e4ddc3ad7063ffb0beacd3\"\u003e\u003ccode\u003ef0dc4bd\u003c/code\u003e\u003c/a\u003e chore: pin fflate@0.8.2 (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20877\"\u003e#20877\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/0f4bd257a67a082b756de746d9e0c4842ab764ca\"\u003e\u003ccode\u003e0f4bd25\u003c/code\u003e\u003c/a\u003e ci: run Discord alert for ecosystem test failures (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20873\"\u003e#20873\u003c/a\u003e) (Copilot)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev10.4.0\u003c/h2\u003e\n\u003ch2\u003eFeatures\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/1a45ec596af1dd5f880e6874cb8f24dafb6a7ecf\"\u003e\u003ccode\u003e1a45ec5\u003c/code\u003e\u003c/a\u003e feat: check sequence expressions in \u003ccode\u003efor-direction\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20701\"\u003e#20701\u003c/a\u003e) (kuldeep kumar)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/450040bd89b989b3531824c6be45feb5fe3d936b\"\u003e\u003ccode\u003e450040b\u003c/code\u003e\u003c/a\u003e feat: add \u003ccode\u003eincludeIgnoreFile()\u003c/code\u003e to \u003ccode\u003eeslint/config\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20735\"\u003e#20735\u003c/a\u003e) (Kirk Waiblinger)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eBug Fixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/544c0c3da589166ad8e5d634f35d3d06701c57be\"\u003e\u003ccode\u003e544c0c3\u003c/code\u003e\u003c/a\u003e fix: escape code path DOT labels in debug output (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20866\"\u003e#20866\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/6799431203f2579632d0870f98ba132067f4040c\"\u003e\u003ccode\u003e6799431\u003c/code\u003e\u003c/a\u003e fix: update dependency \u003ccode\u003e@​eslint/config-helpers\u003c/code\u003e to ^0.6.0 (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20850\"\u003e#20850\u003c/a\u003e) (renovate[bot])\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/f078fef5005dceb14fc162aab7c7200e027688dd\"\u003e\u003ccode\u003ef078fef\u003c/code\u003e\u003c/a\u003e fix: handle non-array deprecated rule replacements (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20825\"\u003e#20825\u003c/a\u003e) (xbinaryx)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eDocumentation\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/7e52a7151fb92eec0e0f67fe4e5ddbd1ccce796f\"\u003e\u003ccode\u003e7e52a71\u003c/code\u003e\u003c/a\u003e docs: add mention of \u003ccode\u003e@eslint-react/eslint-plugin\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20869\"\u003e#20869\u003c/a\u003e) (Pavel)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/db3468ba746407d7f286f18f7ea9db6df0e3bc08\"\u003e\u003ccode\u003edb3468b\u003c/code\u003e\u003c/a\u003e docs: tweak wording around ambiguous CJS-vs-ESM config (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20865\"\u003e#20865\u003c/a\u003e) (Kirk Waiblinger)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/90846643ec6e97d447ae0d831fabe6d17b0a998a\"\u003e\u003ccode\u003e9084664\u003c/code\u003e\u003c/a\u003e docs: Update README (GitHub Actions Bot)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/9cc73875046e3c4b8313644cbb1e99e26b36bd3f\"\u003e\u003ccode\u003e9cc7387\u003c/code\u003e\u003c/a\u003e docs: Update README (GitHub Actions Bot)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/3d7b5484407403817aa9071a394d336d8ea96eb5\"\u003e\u003ccode\u003e3d7b548\u003c/code\u003e\u003c/a\u003e docs: Update README (GitHub Actions Bot)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/191ec3c0a3f94ce0f110df761f0b2b8949011ccb\"\u003e\u003ccode\u003e191ec3c\u003c/code\u003e\u003c/a\u003e docs: Update README (GitHub Actions Bot)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/4a3d15a99c452c4db2fd56b577fa7597e98ab0c2\"\u003e\u003ccode\u003e4a3d15a\u003c/code\u003e\u003c/a\u003e 10.4.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/43e7e2bdc5c6cacc535446b7d23c10f780384ba8\"\u003e\u003ccode\u003e43e7e2b\u003c/code\u003e\u003c/a\u003e Build: changelog update for 10.4.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/e557467db7496220eebcbe2ac5ea6d38c12bb1ec\"\u003e\u003ccode\u003ee557467\u003c/code\u003e\u003c/a\u003e fix: update \u003ccode\u003e@eslint/plugin-kit\u003c/code\u003e version to 0.7.2 (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20930\"\u003e#20930\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/b0e466b6ab47bfc7de43d8de0c315d8ee83aa584\"\u003e\u003ccode\u003eb0e466b\u003c/code\u003e\u003c/a\u003e test: add \u003ccode\u003edata\u003c/code\u003e property to invalid tests cases for rules (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20924\"\u003e#20924\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/d4ce898796ca22c3b96aa70d3014cb85f4bac1cd\"\u003e\u003ccode\u003ed4ce898\u003c/code\u003e\u003c/a\u003e fix: propagate failures from delegated commands (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20917\"\u003e#20917\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/f4f3507460bc016b5be979c05d2969793f570cbf\"\u003e\u003ccode\u003ef4f3507\u003c/code\u003e\u003c/a\u003e fix: prefer-arrow-callback invalid autofix with newline after \u003ccode\u003easync\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20916\"\u003e#20916\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/f78838bc4c86d487e1bcc7cede260c4467721c46\"\u003e\u003ccode\u003ef78838b\u003c/code\u003e\u003c/a\u003e test: add CodePath type coverage (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20904\"\u003e#20904\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/61b0add61ffc52665562be7bb96f526690a78b30\"\u003e\u003ccode\u003e61b0add\u003c/code\u003e\u003c/a\u003e docs: remove deprecated rule from related rules of \u003ccode\u003emax-params\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20921\"\u003e#20921\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/1daa4bd734b79a62e317d0394394a6b38cff49f9\"\u003e\u003ccode\u003e1daa4bd\u003c/code\u003e\u003c/a\u003e chore: update \u003ccode\u003eeslint-plugin-eslint-comments\u003c/code\u003e test data to latest commit (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20\"\u003e#20\u003c/a\u003e...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/002942ce988ea28b78e0a2f3b074081e638b552c\"\u003e\u003ccode\u003e002942c\u003c/code\u003e\u003c/a\u003e ci: declare contents:read on update-readme workflow (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20919\"\u003e#20919\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/eslint/eslint/compare/v9.39.2...v10.4.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `eslint-import-resolver-typescript` from 4.4.4 to 4.4.5\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/import-js/eslint-import-resolver-typescript/releases\"\u003eeslint-import-resolver-typescript's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev4.4.5\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/import-js/eslint-import-resolver-typescript/pull/473\"\u003e#473\u003c/a\u003e \u003ca href=\"https://github.com/import-js/eslint-import-resolver-typescript/commit/32c61abccf26bd2a2267f2e0e67d82e6f88d149a\"\u003e\u003ccode\u003e32c61ab\u003c/code\u003e\u003c/a\u003e Thanks \u003ca href=\"https://github.com/leey0818\"\u003e\u003ccode\u003e@​leey0818\u003c/code\u003e\u003c/a\u003e! - fix: check tsconfig matching before using resolver\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/import-js/eslint-import-resolver-typescript/blob/master/CHANGELOG.md\"\u003eeslint-import-resolver-typescript's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e4.4.5\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/import-js/eslint-import-resolver-typescript/pull/473\"\u003e#473\u003c/a\u003e \u003ca href=\"https://github.com/import-js/eslint-import-resolver-typescript/commit/32c61abccf26bd2a2267f2e0e67d82e6f88d149a\"\u003e\u003ccode\u003e32c61ab\u003c/code\u003e\u003c/a\u003e Thanks \u003ca href=\"https://github.com/leey0818\"\u003e\u003ccode\u003e@​leey0818\u003c/code\u003e\u003c/a\u003e! - fix: check tsconfig matching before using resolver\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/import-js/eslint-import-resolver-typescript/commit/724c47d8c08fa8ffa702c7a94ba53b367a4727fb\"\u003e\u003ccode\u003e724c47d\u003c/code\u003e\u003c/a\u003e chore: release eslint-import-resolver-typescript (\u003ca href=\"https://redirect.github.com/import-js/eslint-import-resolver-typescript/issues/480\"\u003e#480\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/import-js/eslint-import-resolver-typescript/commit/32c61abccf26bd2a2267f2e0e67d82e6f88d149a\"\u003e\u003ccode\u003e32c61ab\u003c/code\u003e\u003c/a\u003e fix: check tsconfig matching before using resolver (\u003ca href=\"https://redirect.github.com/import-js/eslint-import-resolver-typescript/issues/473\"\u003e#473\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/import-js/eslint-import-resolver-typescript/compare/v4.4.4...v4.4.5\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eMaintainer changes\u003c/summary\u003e\n\u003cp\u003eThis version was pushed to npm by \u003ca href=\"https://www.npmjs.com/~GitHub%20Actions\"\u003eGitHub Actions\u003c/a\u003e, a new releaser for eslint-import-resolver-typescript since your current version.\u003c/p\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `eslint-plugin-react-hooks` from 7.0.1 to 7.1.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/facebook/react/releases\"\u003eeslint-plugin-react-hooks's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eeslint-plugin-react-hooks@7.1.1 (April 17, 2026)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eNote:\u003c/strong\u003e 7.1.0 accidentally removed the \u003ccode\u003ecomponent-hook-factories\u003c/code\u003e rule, causing errors for users who referenced it in their ESLint config. This is now fixed.\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdd deprecated no-op \u003ccode\u003ecomponent-hook-factories\u003c/code\u003e rule for backwards compatibility. (\u003ca href=\"https://github.com/mofeiZ\"\u003e\u003ccode\u003e@​mofeiZ\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/36307\"\u003e#36307\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eeslint-plugin-react-hooks@7.1.0 (April 16, 2026)\u003c/h2\u003e\n\u003cp\u003eThis release adds ESLint v10 support, improves performance by skipping compilation for non-React files, and includes compiler lint improvements including better \u003ccode\u003eset-state-in-effect\u003c/code\u003e detection, improved ref validation, and more helpful error reporting.\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdd ESLint v10 support. (\u003ca href=\"https://github.com/azat-io\"\u003e\u003ccode\u003e@​azat-io\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/35720\"\u003e#35720\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSkip compilation for non-React files to improve performance. (\u003ca href=\"https://github.com/josephsavona\"\u003e\u003ccode\u003e@​josephsavona\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/35589\"\u003e#35589\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix exhaustive deps bug with Flow type casting. (\u003ca href=\"https://github.com/jorge-cab\"\u003e\u003ccode\u003e@​jorge-cab\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/35691\"\u003e#35691\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix \u003ccode\u003euseEffectEvent\u003c/code\u003e checks in component syntax. (\u003ca href=\"https://github.com/jbrown215\"\u003e\u003ccode\u003e@​jbrown215\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/35041\"\u003e#35041\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eImproved \u003ccode\u003eset-state-in-effect\u003c/code\u003e validation with fewer false negatives. (\u003ca href=\"https://github.com/jorge-cab\"\u003e\u003ccode\u003e@​jorge-cab\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/35134\"\u003e#35134\u003c/a\u003e, \u003ca href=\"https://github.com/josephsav...\n\n_Description has been truncated_","html_url":"https://github.com/mysterym3at/venreactapp/pull/4","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/mysterym3at%2Fvenreactapp/issues/4","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/4/packages"}},{"old_version":"5.1.3","new_version":"5.3.0","update_type":"minor","path":null,"pr_created_at":"2026-06-08T04:29:30.000Z","version_change":"5.1.3 → 5.3.0","issue":{"uuid":"4610033360","node_id":"PR_kwDOSEk9Cc7jwUky","number":8,"state":"open","title":"deps(deps): bump the all-dependencies group across 1 directory with 79 updates","user":"dependabot[bot]","labels":[],"assignees":[],"locked":false,"comments_count":1,"pull_request":true,"closed_at":null,"author_association":null,"state_reason":null,"created_at":"2026-06-08T04:29:30.000Z","updated_at":"2026-06-08T04:29:31.000Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"deps(deps): bump","group_name":"all-dependencies","update_count":79,"packages":[{"name":"@eslint-react/eslint-plugin","old_version":"2.13.0","new_version":"5.8.16","repository_url":"https://github.com/Rel1cx/eslint-react"},{"name":"@eslint/js","old_version":"9.39.2","new_version":"10.0.1","repository_url":"https://github.com/eslint/eslint"},{"name":"@typescript-eslint/eslint-plugin","old_version":"8.56.0","new_version":"8.60.1","repository_url":"https://github.com/typescript-eslint/typescript-eslint"},{"name":"@typescript-eslint/parser","old_version":"8.56.0","new_version":"8.60.1","repository_url":"https://github.com/typescript-eslint/typescript-eslint"},{"name":"eslint","old_version":"9.39.2","new_version":"10.4.1","repository_url":"https://github.com/eslint/eslint"},{"name":"eslint-import-resolver-typescript","old_version":"4.4.4","new_version":"4.4.5","repository_url":"https://github.com/import-js/eslint-import-resolver-typescript"},{"name":"eslint-plugin-react-hooks","old_version":"7.0.1","new_version":"7.1.1","repository_url":"https://github.com/facebook/react"},{"name":"globals","old_version":"17.3.0","new_version":"17.6.0","repository_url":"https://github.com/sindresorhus/globals"},{"name":"graphql","old_version":"16.12.0","new_version":"16.14.1","repository_url":"https://github.com/graphql/graphql-js"},{"name":"happy-dom","old_version":"20.6.2","new_version":"20.10.2","repository_url":"https://github.com/capricorn86/happy-dom"},{"name":"jiti","old_version":"2.6.1","new_version":"2.7.0","repository_url":"https://github.com/unjs/jiti"},{"name":"lint-staged","old_version":"16.2.7","new_version":"17.0.7","repository_url":"https://github.com/lint-staged/lint-staged"},{"name":"mermaid","old_version":"11.12.3","new_version":"11.15.0","repository_url":"https://github.com/mermaid-js/mermaid"},{"name":"prettier","old_version":"3.8.1","new_version":"3.8.3","repository_url":"https://github.com/prettier/prettier"},{"name":"react","old_version":"19.2.4","new_version":"19.2.7","repository_url":"https://github.com/facebook/react"},{"name":"@types/react","old_version":"19.2.14","new_version":"19.2.17","repository_url":"https://github.com/DefinitelyTyped/DefinitelyTyped"},{"name":"typescript","old_version":"5.9.3","new_version":"6.0.3","repository_url":"https://github.com/microsoft/TypeScript"},{"name":"typescript-eslint","old_version":"8.56.0","new_version":"8.60.1","repository_url":"https://github.com/typescript-eslint/typescript-eslint"},{"name":"typescript-language-server","old_version":"5.1.3","new_version":"5.3.0","repository_url":"https://github.com/typescript-language-server/typescript-language-server"},{"name":"vite","old_version":"7.3.1","new_version":"8.0.16","repository_url":"https://github.com/vitejs/vite"},{"name":"vitepress","old_version":"2.0.0-alpha.16","new_version":"2.0.0-alpha.17","repository_url":"https://github.com/vuejs/vitepress"},{"name":"vitepress-plugin-llms","old_version":"1.11.0","new_version":"1.13.1","repository_url":"https://github.com/okineadev/vitepress-plugin-llms"},{"name":"vitest","old_version":"4.0.18","new_version":"4.1.8","repository_url":"https://github.com/vitest-dev/vitest"},{"name":"wrangler","old_version":"4.66.0","new_version":"4.98.0","repository_url":"https://github.com/cloudflare/workers-sdk"},{"name":"@ai-sdk/openai","old_version":"3.0.29","new_version":"3.0.68","repository_url":"https://github.com/vercel/ai"},{"name":"@better-auth/passkey","old_version":"1.4.18","new_version":"1.6.14","repository_url":"https://github.com/better-auth/better-auth"},{"name":"@better-auth/stripe","old_version":"1.4.18","new_version":"1.6.14","repository_url":"https://github.com/better-auth/better-auth"},{"name":"@trpc/server","old_version":"11.10.0","new_version":"11.17.0","repository_url":"https://github.com/trpc/trpc"},{"name":"ai","old_version":"6.0.91","new_version":"6.0.197","repository_url":"https://github.com/vercel/ai"},{"name":"better-auth","old_version":"1.4.18","new_version":"1.6.14","repository_url":"https://github.com/better-auth/better-auth"},{"name":"drizzle-orm","old_version":"0.45.1","new_version":"0.45.2","repository_url":"https://github.com/drizzle-team/drizzle-orm"},{"name":"postgres","old_version":"3.4.8","new_version":"3.4.9","repository_url":"https://github.com/porsager/postgres"},{"name":"resend","old_version":"6.9.2","new_version":"6.12.4","repository_url":"https://github.com/resend/resend-node"},{"name":"stripe","old_version":"20.3.1","new_version":"22.2.0","repository_url":"https://github.com/stripe/stripe-node"},{"name":"@cloudflare/workers-types","old_version":"4.20260218.0","new_version":"4.20260608.1","repository_url":"https://github.com/cloudflare/workerd"},{"name":"@types/bun","old_version":"1.3.9","new_version":"1.3.14","repository_url":"https://github.com/DefinitelyTyped/DefinitelyTyped"},{"name":"hono","old_version":"4.11.10","new_version":"4.12.23","repository_url":"https://github.com/honojs/hono"},{"name":"zod","old_version":"4.3.6","new_version":"4.4.3","repository_url":"https://github.com/colinhacks/zod"},{"name":"@radix-ui/react-checkbox","old_version":"1.3.3","new_version":"1.3.4","repository_url":"https://github.com/radix-ui/primitives"},{"name":"@radix-ui/react-radio-group","old_version":"1.3.8","new_version":"1.4.0","repository_url":"https://github.com/radix-ui/primitives"},{"name":"@radix-ui/react-scroll-area","old_version":"1.2.10","new_version":"1.2.11","repository_url":"https://github.com/radix-ui/primitives"},{"name":"@radix-ui/react-select","old_version":"2.2.6","new_version":"2.3.0","repository_url":"https://github.com/radix-ui/primitives"},{"name":"@radix-ui/react-separator","old_version":"1.1.8","new_version":"1.1.9","repository_url":"https://github.com/radix-ui/primitives"},{"name":"@radix-ui/react-switch","old_version":"1.2.6","new_version":"1.3.0","repository_url":"https://github.com/radix-ui/primitives"},{"name":"@tanstack/react-query","old_version":"5.90.21","new_version":"5.101.0","repository_url":"https://github.com/TanStack/query"},{"name":"@tanstack/react-router","old_version":"1.161.1","new_version":"1.170.15","repository_url":"https://github.com/TanStack/router"},{"name":"@trpc/client","old_version":"11.10.0","new_version":"11.17.0","repository_url":"https://github.com/trpc/trpc"},{"name":"@trpc/tanstack-react-query","old_version":"11.10.0","new_version":"11.17.0","repository_url":"https://github.com/trpc/trpc"},{"name":"jotai","old_version":"2.17.1","new_version":"2.20.0","repository_url":"https://github.com/pmndrs/jotai"},{"name":"jotai-effect","old_version":"2.2.3","new_version":"2.3.1","repository_url":"https://github.com/jotaijs/jotai-effect"},{"name":"lucide-react","old_version":"0.574.0","new_version":"1.17.0","repository_url":"https://github.com/lucide-icons/lucide"},{"name":"react-dom","old_version":"19.2.4","new_version":"19.2.7","repository_url":"https://github.com/facebook/react"},{"name":"react-error-boundary","old_version":"6.1.1","new_version":"6.1.2","repository_url":"https://github.com/bvaughn/react-error-boundary"},{"name":"tailwind-merge","old_version":"3.4.1","new_version":"3.6.0","repository_url":"https://github.com/dcastil/tailwind-merge"},{"name":"@tailwindcss/postcss","old_version":"4.2.0","new_version":"4.3.0","repository_url":"https://github.com/tailwindlabs/tailwindcss"},{"name":"@tanstack/react-query-devtools","old_version":"5.91.3","new_version":"5.101.0","repository_url":"https://github.com/TanStack/query"},{"name":"@tanstack/react-router-devtools","old_version":"1.161.1","new_version":"1.167.0","repository_url":"https://github.com/TanStack/router"},{"name":"@tanstack/router-plugin","old_version":"1.161.1","new_version":"1.168.18","repository_url":"https://github.com/TanStack/router"},{"name":"@types/node","old_version":"25.2.3","new_version":"25.9.2","repository_url":"https://github.com/DefinitelyTyped/DefinitelyTyped"},{"name":"@vitejs/plugin-react","old_version":"5.1.4","new_version":"6.0.2","repository_url":"https://github.com/vitejs/vite-plugin-react"},{"name":"@vitejs/plugin-react-swc","old_version":"4.2.3","new_version":"4.3.1","repository_url":"https://github.com/vitejs/vite-plugin-react"},{"name":"autoprefixer","old_version":"10.4.24","new_version":"10.5.0","repository_url":"https://github.com/postcss/autoprefixer"},{"name":"globby","old_version":"16.1.1","new_version":"16.2.0","repository_url":"https://github.com/sindresorhus/globby"},{"name":"@react-email/components","old_version":"1.0.8","new_version":"1.0.12","repository_url":"https://github.com/resend/react-email"},{"name":"@react-email/render","old_version":"2.0.4","new_version":"2.0.8","repository_url":"https://github.com/resend/react-email"},{"name":"@react-email/preview-server","old_version":"5.2.8","new_version":"5.2.10","repository_url":"https://github.com/resend/react-email"},{"name":"react-email","old_version":"5.2.8","new_version":"6.5.0","repository_url":"https://github.com/resend/react-email"},{"name":"@astrojs/react","old_version":"4.4.2","new_version":"5.0.7","repository_url":"https://github.com/withastro/astro"},{"name":"astro","old_version":"5.17.2","new_version":"6.4.4","repository_url":"https://github.com/withastro/astro"},{"name":"dotenv","old_version":"17.3.1","new_version":"17.4.2","repository_url":"https://github.com/motdotla/dotenv"},{"name":"drizzle-kit","old_version":"0.31.9","new_version":"0.31.10","repository_url":"https://github.com/drizzle-team/drizzle-orm"},{"name":"@radix-ui/react-avatar","old_version":"1.1.11","new_version":"1.1.12","repository_url":"https://github.com/radix-ui/primitives"},{"name":"@radix-ui/react-dialog","old_version":"1.1.15","new_version":"1.1.16","repository_url":"https://github.com/radix-ui/primitives"},{"name":"@radix-ui/react-label","old_version":"2.1.8","new_version":"2.1.9","repository_url":"https://github.com/radix-ui/primitives"},{"name":"@modelcontextprotocol/sdk","old_version":"1.26.0","new_version":"1.29.0","repository_url":"https://github.com/modelcontextprotocol/typescript-sdk"},{"name":"got","old_version":"14.6.6","new_version":"15.0.5","repository_url":"https://github.com/sindresorhus/got"}],"path":null,"ecosystem":"npm"},"body":"Bumps the all-dependencies group with 76 updates in the / directory:\n\n| Package | From | To |\n| --- | --- | --- |\n| [@eslint-react/eslint-plugin](https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin) | `2.13.0` | `5.8.16` |\n| [@eslint/js](https://github.com/eslint/eslint/tree/HEAD/packages/js) | `9.39.2` | `10.0.1` |\n| [@typescript-eslint/eslint-plugin](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin) | `8.56.0` | `8.60.1` |\n| [@typescript-eslint/parser](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/parser) | `8.56.0` | `8.60.1` |\n| [eslint](https://github.com/eslint/eslint) | `9.39.2` | `10.4.1` |\n| [eslint-import-resolver-typescript](https://github.com/import-js/eslint-import-resolver-typescript) | `4.4.4` | `4.4.5` |\n| [eslint-plugin-react-hooks](https://github.com/facebook/react/tree/HEAD/packages/eslint-plugin-react-hooks) | `7.0.1` | `7.1.1` |\n| [globals](https://github.com/sindresorhus/globals) | `17.3.0` | `17.6.0` |\n| [graphql](https://github.com/graphql/graphql-js) | `16.12.0` | `16.14.1` |\n| [happy-dom](https://github.com/capricorn86/happy-dom) | `20.6.2` | `20.10.2` |\n| [jiti](https://github.com/unjs/jiti) | `2.6.1` | `2.7.0` |\n| [lint-staged](https://github.com/lint-staged/lint-staged) | `16.2.7` | `17.0.7` |\n| [mermaid](https://github.com/mermaid-js/mermaid) | `11.12.3` | `11.15.0` |\n| [prettier](https://github.com/prettier/prettier) | `3.8.1` | `3.8.3` |\n| [react](https://github.com/facebook/react/tree/HEAD/packages/react) | `19.2.4` | `19.2.7` |\n| [@types/react](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/react) | `19.2.14` | `19.2.17` |\n| [typescript](https://github.com/microsoft/TypeScript) | `5.9.3` | `6.0.3` |\n| [typescript-eslint](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/typescript-eslint) | `8.56.0` | `8.60.1` |\n| [typescript-language-server](https://github.com/typescript-language-server/typescript-language-server) | `5.1.3` | `5.3.0` |\n| [vite](https://github.com/vitejs/vite/tree/HEAD/packages/vite) | `7.3.1` | `8.0.16` |\n| [vitepress](https://github.com/vuejs/vitepress) | `2.0.0-alpha.16` | `2.0.0-alpha.17` |\n| [vitepress-plugin-llms](https://github.com/okineadev/vitepress-plugin-llms) | `1.11.0` | `1.13.1` |\n| [vitest](https://github.com/vitest-dev/vitest/tree/HEAD/packages/vitest) | `4.0.18` | `4.1.8` |\n| [wrangler](https://github.com/cloudflare/workers-sdk/tree/HEAD/packages/wrangler) | `4.66.0` | `4.98.0` |\n| [@ai-sdk/openai](https://github.com/vercel/ai/tree/HEAD/packages/openai) | `3.0.29` | `3.0.68` |\n| [@better-auth/passkey](https://github.com/better-auth/better-auth/tree/HEAD/packages/passkey) | `1.4.18` | `1.6.14` |\n| [@better-auth/stripe](https://github.com/better-auth/better-auth/tree/HEAD/packages/stripe) | `1.4.18` | `1.6.14` |\n| [@trpc/server](https://github.com/trpc/trpc/tree/HEAD/packages/server) | `11.10.0` | `11.17.0` |\n| [ai](https://github.com/vercel/ai/tree/HEAD/packages/ai) | `6.0.91` | `6.0.197` |\n| [better-auth](https://github.com/better-auth/better-auth/tree/HEAD/packages/better-auth) | `1.4.18` | `1.6.14` |\n| [drizzle-orm](https://github.com/drizzle-team/drizzle-orm) | `0.45.1` | `0.45.2` |\n| [postgres](https://github.com/porsager/postgres) | `3.4.8` | `3.4.9` |\n| [resend](https://github.com/resend/resend-node) | `6.9.2` | `6.12.4` |\n| [stripe](https://github.com/stripe/stripe-node) | `20.3.1` | `22.2.0` |\n| [@cloudflare/workers-types](https://github.com/cloudflare/workerd) | `4.20260218.0` | `4.20260608.1` |\n| [@types/bun](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/bun) | `1.3.9` | `1.3.14` |\n| [hono](https://github.com/honojs/hono) | `4.11.10` | `4.12.23` |\n| [zod](https://github.com/colinhacks/zod) | `4.3.6` | `4.4.3` |\n| [@radix-ui/react-checkbox](https://github.com/radix-ui/primitives/tree/HEAD/packages/react/checkbox) | `1.3.3` | `1.3.4` |\n| [@radix-ui/react-radio-group](https://github.com/radix-ui/primitives/tree/HEAD/packages/react/radio-group) | `1.3.8` | `1.4.0` |\n| [@radix-ui/react-scroll-area](https://github.com/radix-ui/primitives/tree/HEAD/packages/react/scroll-area) | `1.2.10` | `1.2.11` |\n| [@radix-ui/react-select](https://github.com/radix-ui/primitives/tree/HEAD/packages/react/select) | `2.2.6` | `2.3.0` |\n| [@radix-ui/react-separator](https://github.com/radix-ui/primitives/tree/HEAD/packages/react/separator) | `1.1.8` | `1.1.9` |\n| [@radix-ui/react-switch](https://github.com/radix-ui/primitives/tree/HEAD/packages/react/switch) | `1.2.6` | `1.3.0` |\n| [@tanstack/react-query](https://github.com/TanStack/query/tree/HEAD/packages/react-query) | `5.90.21` | `5.101.0` |\n| [@tanstack/react-router](https://github.com/TanStack/router/tree/HEAD/packages/react-router) | `1.161.1` | `1.170.15` |\n| [@trpc/client](https://github.com/trpc/trpc/tree/HEAD/packages/client) | `11.10.0` | `11.17.0` |\n| [@trpc/tanstack-react-query](https://github.com/trpc/trpc/tree/HEAD/packages/tanstack-react-query) | `11.10.0` | `11.17.0` |\n| [jotai](https://github.com/pmndrs/jotai) | `2.17.1` | `2.20.0` |\n| [jotai-effect](https://github.com/jotaijs/jotai-effect) | `2.2.3` | `2.3.1` |\n| [lucide-react](https://github.com/lucide-icons/lucide/tree/HEAD/packages/lucide-react) | `0.574.0` | `1.17.0` |\n| [react-dom](https://github.com/facebook/react/tree/HEAD/packages/react-dom) | `19.2.4` | `19.2.7` |\n| [react-error-boundary](https://github.com/bvaughn/react-error-boundary) | `6.1.1` | `6.1.2` |\n| [tailwind-merge](https://github.com/dcastil/tailwind-merge) | `3.4.1` | `3.6.0` |\n| [@tailwindcss/postcss](https://github.com/tailwindlabs/tailwindcss/tree/HEAD/packages/@tailwindcss-postcss) | `4.2.0` | `4.3.0` |\n| [@tanstack/react-query-devtools](https://github.com/TanStack/query/tree/HEAD/packages/react-query-devtools) | `5.91.3` | `5.101.0` |\n| [@tanstack/react-router-devtools](https://github.com/TanStack/router/tree/HEAD/packages/react-router-devtools) | `1.161.1` | `1.167.0` |\n| [@tanstack/router-plugin](https://github.com/TanStack/router/tree/HEAD/packages/router-plugin) | `1.161.1` | `1.168.18` |\n| [@types/node](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/node) | `25.2.3` | `25.9.2` |\n| [@vitejs/plugin-react](https://github.com/vitejs/vite-plugin-react/tree/HEAD/packages/plugin-react) | `5.1.4` | `6.0.2` |\n| [@vitejs/plugin-react-swc](https://github.com/vitejs/vite-plugin-react/tree/HEAD/packages/plugin-react-swc) | `4.2.3` | `4.3.1` |\n| [autoprefixer](https://github.com/postcss/autoprefixer) | `10.4.24` | `10.5.0` |\n| [globby](https://github.com/sindresorhus/globby) | `16.1.1` | `16.2.0` |\n| [@react-email/components](https://github.com/resend/react-email/tree/HEAD/packages/components) | `1.0.8` | `1.0.12` |\n| [@react-email/render](https://github.com/resend/react-email/tree/HEAD/packages/render) | `2.0.4` | `2.0.8` |\n| [@react-email/preview-server](https://github.com/resend/react-email/tree/HEAD/packages/preview-server) | `5.2.8` | `5.2.10` |\n| [react-email](https://github.com/resend/react-email/tree/HEAD/packages/react-email) | `5.2.8` | `6.5.0` |\n| [@astrojs/react](https://github.com/withastro/astro/tree/HEAD/packages/integrations/react) | `4.4.2` | `5.0.7` |\n| [astro](https://github.com/withastro/astro/tree/HEAD/packages/astro) | `5.17.2` | `6.4.4` |\n| [dotenv](https://github.com/motdotla/dotenv) | `17.3.1` | `17.4.2` |\n| [drizzle-kit](https://github.com/drizzle-team/drizzle-orm) | `0.31.9` | `0.31.10` |\n| [@radix-ui/react-avatar](https://github.com/radix-ui/primitives/tree/HEAD/packages/react/avatar) | `1.1.11` | `1.1.12` |\n| [@radix-ui/react-dialog](https://github.com/radix-ui/primitives/tree/HEAD/packages/react/dialog) | `1.1.15` | `1.1.16` |\n| [@radix-ui/react-label](https://github.com/radix-ui/primitives/tree/HEAD/packages/react/label) | `2.1.8` | `2.1.9` |\n| [@modelcontextprotocol/sdk](https://github.com/modelcontextprotocol/typescript-sdk) | `1.26.0` | `1.29.0` |\n| [got](https://github.com/sindresorhus/got) | `14.6.6` | `15.0.5` |\n\n\nUpdates `@eslint-react/eslint-plugin` from 2.13.0 to 5.8.16\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/Rel1cx/eslint-react/releases\"\u003e@​eslint-react/eslint-plugin's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev5.8.16 (2026-06-07)\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003ch3\u003e🐞 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAligned dependency versions across monorepo (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1853\"\u003e#1853\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/Rel1cx/eslint-react/compare/v5.8.15...v5.8.16\"\u003ehttps://github.com/Rel1cx/eslint-react/compare/v5.8.15...v5.8.16\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003eAttestation\u003c/h2\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/attestations/30180921\"\u003ehttps://github.com/Rel1cx/eslint-react/attestations/30180921\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev5.8.15 (2026-06-07)\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003ch3\u003e📝 Documentation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdded under-construction callouts and refined kit pages on the website (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1850\"\u003e#1850\u003c/a\u003e, \u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1851\"\u003e#1851\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eRemoved \u003ccode\u003eAGENTS.md\u003c/code\u003e and \u003ccode\u003eCONTRIBUTING.md\u003c/code\u003e documents and references (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1848\"\u003e#1848\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eUpdated home and third-party plugins pages on the website.\u003c/li\u003e\n\u003cli\u003eUpdated issue template guidance and labels.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🏗️ Internal\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eBumped \u003ccode\u003e@types/*\u003c/code\u003e dependencies (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1852\"\u003e#1852\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eRelaxed checklist requirements in issue templates (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1849\"\u003e#1849\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/Rel1cx/eslint-react/compare/v5.8.13...v5.8.15\"\u003ehttps://github.com/Rel1cx/eslint-react/compare/v5.8.13...v5.8.15\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003eAttestation\u003c/h2\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/attestations/30180297\"\u003ehttps://github.com/Rel1cx/eslint-react/attestations/30180297\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev5.8.13 (2026-06-07)\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003ch3\u003e📝 Documentation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdded \u003ccode\u003eGoogleCloudPlatform/gke-mcp\u003c/code\u003e and removed archived \u003ccode\u003eantfu/shiki-stream\u003c/code\u003e from community projects on the website.\u003c/li\u003e\n\u003cli\u003eImproved RSC Directives wording in documentation.\u003c/li\u003e\n\u003cli\u003eRemoved the \u003ccode\u003eno-multiple-children-in-title\u003c/code\u003e recipe from the website.\u003c/li\u003e\n\u003cli\u003eRemoved the kit beta banner from the website (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1846\"\u003e#1846\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🏗️ Internal\u003c/h3\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/Rel1cx/eslint-react/blob/main/CHANGELOG.md\"\u003e@​eslint-react/eslint-plugin's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev5.8.16 (2026-06-07)\u003c/h2\u003e\n\u003ch3\u003e🐞 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAligned dependency versions across monorepo (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1853\"\u003e#1853\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/Rel1cx/eslint-react/compare/v5.8.15...v5.8.16\"\u003ehttps://github.com/Rel1cx/eslint-react/compare/v5.8.15...v5.8.16\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev5.8.15 (2026-06-07)\u003c/h2\u003e\n\u003ch3\u003e📝 Documentation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdded under-construction callouts and refined kit pages on the website (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1850\"\u003e#1850\u003c/a\u003e, \u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1851\"\u003e#1851\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eRemoved \u003ccode\u003eAGENTS.md\u003c/code\u003e and \u003ccode\u003eCONTRIBUTING.md\u003c/code\u003e documents and references (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1848\"\u003e#1848\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eUpdated home and third-party plugins pages on the website.\u003c/li\u003e\n\u003cli\u003eUpdated issue template guidance and labels.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🏗️ Internal\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eBumped \u003ccode\u003e@types/*\u003c/code\u003e dependencies (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1852\"\u003e#1852\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eRelaxed checklist requirements in issue templates (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1849\"\u003e#1849\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/Rel1cx/eslint-react/compare/v5.8.13...v5.8.15\"\u003ehttps://github.com/Rel1cx/eslint-react/compare/v5.8.13...v5.8.15\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev5.8.13 (2026-06-06)\u003c/h2\u003e\n\u003ch3\u003e📝 Documentation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdded \u003ccode\u003eGoogleCloudPlatform/gke-mcp\u003c/code\u003e and removed archived \u003ccode\u003eantfu/shiki-stream\u003c/code\u003e from community projects on the website.\u003c/li\u003e\n\u003cli\u003eImproved RSC Directives wording in documentation.\u003c/li\u003e\n\u003cli\u003eRemoved the \u003ccode\u003eno-multiple-children-in-title\u003c/code\u003e recipe from the website.\u003c/li\u003e\n\u003cli\u003eRemoved the kit beta banner from the website (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1846\"\u003e#1846\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🏗️ Internal\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdded \u003ccode\u003eRuleListener\u003c/code\u003e return type to all rule \u003ccode\u003ecreate\u003c/code\u003e functions (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1845\"\u003e#1845\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdded boundary and edge case tests for \u003ccode\u003ereact-dom\u003c/code\u003e rules, JSX rules, and \u003ccode\u003enaming-convention\u003c/code\u003e rules (\u003ccode\u003econtext-name\u003c/code\u003e, \u003ccode\u003eid-name\u003c/code\u003e, \u003ccode\u003eref-name\u003c/code\u003e).\u003c/li\u003e\n\u003cli\u003eAdded identifier resolution tests for \u003ccode\u003ereact-x/no-leaked-conditional-rendering\u003c/code\u003e (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1844\"\u003e#1844\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eBumped \u003ccode\u003epnpm\u003c/code\u003e and updated lockfile.\u003c/li\u003e\n\u003cli\u003eBumped \u003ccode\u003etsdown\u003c/code\u003e to \u003ccode\u003e0.22.2\u003c/code\u003e and updated dependencies.\u003c/li\u003e\n\u003cli\u003eRemoved redundant single-argument \u003ccode\u003emerge()\u003c/code\u003e calls in rules (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1843\"\u003e#1843\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eSwitched GitHub workflows to \u003ccode\u003eubuntu-latest\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003eUpdated website brand assets and icons.\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/Rel1cx/eslint-react/compare/v5.8.12...v5.8.13\"\u003ehttps://github.com/Rel1cx/eslint-react/compare/v5.8.12...v5.8.13\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev5.8.12 (2026-06-05)\u003c/h2\u003e\n\u003ch3\u003e🪄 Improvements\u003c/h3\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/f9e975424aab7552f53308ec40c07eee58086dbb\"\u003e\u003ccode\u003ef9e9754\u003c/code\u003e\u003c/a\u003e release: 5.8.16\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/8719df27f74222afa045f08ed8e79d5d0833de3e\"\u003e\u003ccode\u003e8719df2\u003c/code\u003e\u003c/a\u003e release: 5.8.15\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/1022e493f015bcec49babc6c4a3bbb838bcfc311\"\u003e\u003ccode\u003e1022e49\u003c/code\u003e\u003c/a\u003e release: 5.8.14\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/81cdcc982434b841e2a7b3732644d122932f3229\"\u003e\u003ccode\u003e81cdcc9\u003c/code\u003e\u003c/a\u003e chore(deps): bump @types/* dependencies (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1852\"\u003e#1852\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/ad1aada15ceee6a331f4514fcb6638d6db468323\"\u003e\u003ccode\u003ead1aada\u003c/code\u003e\u003c/a\u003e docs: remove \u003ccode\u003eAGENTS.md\u003c/code\u003e and \u003ccode\u003eCONTRIBUTING.md\u003c/code\u003e docs and references (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1848\"\u003e#1848\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/e2920e3d2296471d1c4b498da17c13eb4750aa8a\"\u003e\u003ccode\u003ee2920e3\u003c/code\u003e\u003c/a\u003e release: 5.8.13\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/e68a316467cc907dda9e9a6f91f89f7f68c067f8\"\u003e\u003ccode\u003ee68a316\u003c/code\u003e\u003c/a\u003e chore: bump tsdown to 0.22.2 and update deps\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/de7d846106872352dcbed7713541d99c03bd5bac\"\u003e\u003ccode\u003ede7d846\u003c/code\u003e\u003c/a\u003e release: 5.8.12\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/3498c34b904454c44425ed148107ef8f5184eecf\"\u003e\u003ccode\u003e3498c34\u003c/code\u003e\u003c/a\u003e release: 5.8.11\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/0ee67d6c2f890f20165ee540773b8eda37adf9cf\"\u003e\u003ccode\u003e0ee67d6\u003c/code\u003e\u003c/a\u003e docs: update Meta legal name and add brand assets page (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1832\"\u003e#1832\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/Rel1cx/eslint-react/commits/v5.8.16/plugins/eslint-plugin\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@eslint/js` from 9.39.2 to 10.0.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/eslint/eslint/releases\"\u003e@​eslint/js's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev10.0.1\u003c/h2\u003e\n\u003ch2\u003eBug Fixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/c87d5bded54c5cf491eb04c24c9d09bbbd42c23e\"\u003e\u003ccode\u003ec87d5bd\u003c/code\u003e\u003c/a\u003e fix: update eslint (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20531\"\u003e#20531\u003c/a\u003e) (renovate[bot])\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/d84100115c14691691058f00779c94e74fca946a\"\u003e\u003ccode\u003ed841001\u003c/code\u003e\u003c/a\u003e fix: update \u003ccode\u003eminimatch\u003c/code\u003e to \u003ccode\u003e10.2.1\u003c/code\u003e to address security vulnerabilities (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20519\"\u003e#20519\u003c/a\u003e) (루밀LuMir)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/04c21475b3004904948f02049f2888b401d82c78\"\u003e\u003ccode\u003e04c2147\u003c/code\u003e\u003c/a\u003e fix: update error message for unused suppressions (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20496\"\u003e#20496\u003c/a\u003e) (fnx)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/38b089c1726feac0e31a31d47941bd99e29ce003\"\u003e\u003ccode\u003e38b089c\u003c/code\u003e\u003c/a\u003e fix: update dependency \u003ccode\u003e@​eslint/config-array\u003c/code\u003e to ^0.23.1 (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20484\"\u003e#20484\u003c/a\u003e) (renovate[bot])\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eDocumentation\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/5b3dbce50a1404a9f118afe810cefeee79388a2a\"\u003e\u003ccode\u003e5b3dbce\u003c/code\u003e\u003c/a\u003e docs: add AI acknowledgement section to templates (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20431\"\u003e#20431\u003c/a\u003e) (루밀LuMir)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/6f23076037d5879f20fb3be2ef094293b1e8d38c\"\u003e\u003ccode\u003e6f23076\u003c/code\u003e\u003c/a\u003e docs: toggle nav in no-JS mode (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20476\"\u003e#20476\u003c/a\u003e) (Tanuj Kanti)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/b69cfb32a16c5d5e9986390d484fae1d21e406f9\"\u003e\u003ccode\u003eb69cfb3\u003c/code\u003e\u003c/a\u003e docs: Update README (GitHub Actions Bot)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eChores\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/e5c281ffd038a3a7a3e5364db0b9378e0ad83020\"\u003e\u003ccode\u003ee5c281f\u003c/code\u003e\u003c/a\u003e chore: updates for v9.39.3 release (Jenkins)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/8c3832adb77cd993b4a24891900d5eeaaf093cdc\"\u003e\u003ccode\u003e8c3832a\u003c/code\u003e\u003c/a\u003e chore: update \u003ccode\u003e@​typescript-eslint/parser\u003c/code\u003e to ^8.56.0 (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20514\"\u003e#20514\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/8330d238ae6adb68bb6a1c9381e38cfedd990d94\"\u003e\u003ccode\u003e8330d23\u003c/code\u003e\u003c/a\u003e test: add tests for config-api (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20493\"\u003e#20493\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/37d6e91e88fa6a2ca6d8726679096acff21ba6cc\"\u003e\u003ccode\u003e37d6e91\u003c/code\u003e\u003c/a\u003e chore: remove eslint v10 prereleases from eslint-config-eslint deps (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20494\"\u003e#20494\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/da7cd0e79197ad16e17052eef99df141de6dbfb1\"\u003e\u003ccode\u003eda7cd0e\u003c/code\u003e\u003c/a\u003e refactor: cleanup error message templates (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20479\"\u003e#20479\u003c/a\u003e) (Francesco Trotta)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/84fb885d49ac810e79a9491276b4828b53d913e5\"\u003e\u003ccode\u003e84fb885\u003c/code\u003e\u003c/a\u003e chore: package.json update for \u003ccode\u003e@​eslint/js\u003c/code\u003e release (Jenkins)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/1f667344b57c4c09b548d94bcfac1f91b6e5c63d\"\u003e\u003ccode\u003e1f66734\u003c/code\u003e\u003c/a\u003e chore: add \u003ccode\u003eeslint\u003c/code\u003e to \u003ccode\u003epeerDependencies\u003c/code\u003e of \u003ccode\u003e@eslint/js\u003c/code\u003e (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20467\"\u003e#20467\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev10.0.0\u003c/h2\u003e\n\u003ch2\u003eBreaking Changes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/f9e54f43a5e497cdfa179338b431093245cb787b\"\u003e\u003ccode\u003ef9e54f4\u003c/code\u003e\u003c/a\u003e feat!: estimate rule-tester failure location (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20420\"\u003e#20420\u003c/a\u003e) (ST-DDT)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/a176319d8ade1a7d9b2d7fb8f038f55a2662325f\"\u003e\u003ccode\u003ea176319\u003c/code\u003e\u003c/a\u003e feat!: replace \u003ccode\u003echalk\u003c/code\u003e with \u003ccode\u003estyleText\u003c/code\u003e and add \u003ccode\u003ecolor\u003c/code\u003e to \u003ccode\u003eResultsMeta\u003c/code\u003e (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20227\"\u003e#20227\u003c/a\u003e) (루밀LuMir)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/c7046e6c1e03c4ca0eee4888a1f2eba4c6454f84\"\u003e\u003ccode\u003ec7046e6\u003c/code\u003e\u003c/a\u003e feat!: enable JSX reference tracking (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20152\"\u003e#20152\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/fa31a608901684fbcd9906d1907e66561d16e5aa\"\u003e\u003ccode\u003efa31a60\u003c/code\u003e\u003c/a\u003e feat!: add \u003ccode\u003ename\u003c/code\u003e to configs (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20015\"\u003e#20015\u003c/a\u003e) (Kirk Waiblinger)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/3383e7ec9028166cafc8ea7986c2f7498d0049f0\"\u003e\u003ccode\u003e3383e7e\u003c/code\u003e\u003c/a\u003e fix!: remove deprecated \u003ccode\u003eSourceCode\u003c/code\u003e methods (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20137\"\u003e#20137\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/501abd0e916a35554c58b7c0365537f1fa3880ce\"\u003e\u003ccode\u003e501abd0\u003c/code\u003e\u003c/a\u003e feat!: update dependency minimatch to v10 (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20246\"\u003e#20246\u003c/a\u003e) (renovate[bot])\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/ca4d3b40085de47561f89656a2207d09946ed45e\"\u003e\u003ccode\u003eca4d3b4\u003c/code\u003e\u003c/a\u003e fix!: stricter rule tester assertions for valid test cases (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20125\"\u003e#20125\u003c/a\u003e) (唯然)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/96512a66c86402fb0538cdcb6cd30b9073f6bf3b\"\u003e\u003ccode\u003e96512a6\u003c/code\u003e\u003c/a\u003e fix!: Remove deprecated rule context methods (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20086\"\u003e#20086\u003c/a\u003e) (Nicholas C. Zakas)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/c69fdacdb2e886b9d965568a397aa8220db3fe90\"\u003e\u003ccode\u003ec69fdac\u003c/code\u003e\u003c/a\u003e feat!: remove eslintrc support (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20037\"\u003e#20037\u003c/a\u003e) (Francesco Trotta)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/208b5cc34a8374ff81412b5bec2e0800eebfbd04\"\u003e\u003ccode\u003e208b5cc\u003c/code\u003e\u003c/a\u003e feat!: Use \u003ccode\u003eScopeManager#addGlobals()\u003c/code\u003e (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20132\"\u003e#20132\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/a2ee188ea7a38a0c6155f3d39e2b00e1d0f36e14\"\u003e\u003ccode\u003ea2ee188\u003c/code\u003e\u003c/a\u003e fix!: add \u003ccode\u003euniqueItems: true\u003c/code\u003e in \u003ccode\u003eno-invalid-regexp\u003c/code\u003e option (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20155\"\u003e#20155\u003c/a\u003e) (Tanuj Kanti)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/a89059dbf2832d417dd493ee81483227ec44e4ab\"\u003e\u003ccode\u003ea89059d\u003c/code\u003e\u003c/a\u003e feat!: Program range span entire source text (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20133\"\u003e#20133\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/39a6424373d915fa9de0d7b0caba9a4dc3da9b53\"\u003e\u003ccode\u003e39a6424\u003c/code\u003e\u003c/a\u003e fix!: assert 'text' is a string across all RuleFixer methods (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20082\"\u003e#20082\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/f28fbf846244e043c92b355b224d121b06140b44\"\u003e\u003ccode\u003ef28fbf8\u003c/code\u003e\u003c/a\u003e fix!: Deprecate \u003ccode\u003e\u0026quot;always\u0026quot;\u003c/code\u003e and \u003ccode\u003e\u0026quot;as-needed\u0026quot;\u003c/code\u003e options of the \u003ccode\u003eradix\u003c/code\u003e rule (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20223\"\u003e#20223\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/aa3fb2b233e929b37220be940575f42c280e0b98\"\u003e\u003ccode\u003eaa3fb2b\u003c/code\u003e\u003c/a\u003e fix!: tighten \u003ccode\u003efunc-names\u003c/code\u003e schema (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20119\"\u003e#20119\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/f6c0ed0311dcfee853367d5068c765d066e6b756\"\u003e\u003ccode\u003ef6c0ed0\u003c/code\u003e\u003c/a\u003e feat!: report \u003ccode\u003eeslint-env\u003c/code\u003e comments as errors (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20128\"\u003e#20128\u003c/a\u003e) (Francesco Trotta)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/4bf739fb533e59f7f0a66b65f7bc80be0f37d8db\"\u003e\u003ccode\u003e4bf739f\u003c/code\u003e\u003c/a\u003e fix!: remove deprecated \u003ccode\u003eLintMessage#nodeType\u003c/code\u003e and \u003ccode\u003eTestCaseError#type\u003c/code\u003e (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20096\"\u003e#20096\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/523c076866400670fb2192a3f55dbf7ad3469247\"\u003e\u003ccode\u003e523c076\u003c/code\u003e\u003c/a\u003e feat!: drop support for jiti \u0026lt; 2.2.0 (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20016\"\u003e#20016\u003c/a\u003e) (michael faith)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/454a292c95f34dad232411ddac06408e6383bb64\"\u003e\u003ccode\u003e454a292\u003c/code\u003e\u003c/a\u003e feat!: update \u003ccode\u003eeslint:recommended\u003c/code\u003e configuration (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20210\"\u003e#20210\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/4f880ee02992e1bf0e96ebaba679985e2d1295f1\"\u003e\u003ccode\u003e4f880ee\u003c/code\u003e\u003c/a\u003e feat!: remove \u003ccode\u003ev10_*\u003c/code\u003e and inactive \u003ccode\u003eunstable_*\u003c/code\u003e flags (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20225\"\u003e#20225\u003c/a\u003e) (sethamus)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/f18115c363a4ac7671a4c7f30ee13d57ebba330f\"\u003e\u003ccode\u003ef18115c\u003c/code\u003e\u003c/a\u003e feat!: \u003ccode\u003eno-shadow-restricted-names\u003c/code\u003e report \u003ccode\u003eglobalThis\u003c/code\u003e by default (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20027\"\u003e#20027\u003c/a\u003e) (sethamus)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/c6358c31fbd3937b92d89be2618ffdf5a774604e\"\u003e\u003ccode\u003ec6358c3\u003c/code\u003e\u003c/a\u003e feat!: Require Node.js \u003ccode\u003e^20.19.0 || ^22.13.0 || \u0026gt;=24\u003c/code\u003e (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20160\"\u003e#20160\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eFeatures\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/bff9091927811497dbf066b0e3b85ecb37d43822\"\u003e\u003ccode\u003ebff9091\u003c/code\u003e\u003c/a\u003e feat: handle \u003ccode\u003eArray.fromAsync\u003c/code\u003e in \u003ccode\u003earray-callback-return\u003c/code\u003e (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20457\"\u003e#20457\u003c/a\u003e) (Francesco Trotta)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/290c594bb50c439fb71bc75521ee5360daa8c222\"\u003e\u003ccode\u003e290c594\u003c/code\u003e\u003c/a\u003e feat: add \u003ccode\u003eself\u003c/code\u003e to \u003ccode\u003eno-implied-eval\u003c/code\u003e rule (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20468\"\u003e#20468\u003c/a\u003e) (sethamus)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/43677de07ebd6e14bfac40a46ad749ba783c45f2\"\u003e\u003ccode\u003e43677de\u003c/code\u003e\u003c/a\u003e feat: fix handling of function and class expression names in \u003ccode\u003eno-shadow\u003c/code\u003e (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20432\"\u003e#20432\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/84fb885d49ac810e79a9491276b4828b53d913e5\"\u003e\u003ccode\u003e84fb885\u003c/code\u003e\u003c/a\u003e chore: package.json update for \u003ccode\u003e@​eslint/js\u003c/code\u003e release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/1f667344b57c4c09b548d94bcfac1f91b6e5c63d\"\u003e\u003ccode\u003e1f66734\u003c/code\u003e\u003c/a\u003e chore: add \u003ccode\u003eeslint\u003c/code\u003e to \u003ccode\u003epeerDependencies\u003c/code\u003e of \u003ccode\u003e@eslint/js\u003c/code\u003e (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20467\"\u003e#20467\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/f3fbc2f60cbe2c718364feb8c3fc0452c0df3c56\"\u003e\u003ccode\u003ef3fbc2f\u003c/code\u003e\u003c/a\u003e chore: set \u003ccode\u003e@eslint/js\u003c/code\u003e version to 10.0.0 to skip releasing it (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20466\"\u003e#20466\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/b4b3127f8542c599ce2dea804b6582ebc40c993d\"\u003e\u003ccode\u003eb4b3127\u003c/code\u003e\u003c/a\u003e chore: package.json update for \u003ccode\u003e@​eslint/js\u003c/code\u003e release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/0b14059491d830a49b3577931f4f68fbcfce6be5\"\u003e\u003ccode\u003e0b14059\u003c/code\u003e\u003c/a\u003e chore: package.json update for \u003ccode\u003e@​eslint/js\u003c/code\u003e release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/fa31a608901684fbcd9906d1907e66561d16e5aa\"\u003e\u003ccode\u003efa31a60\u003c/code\u003e\u003c/a\u003e feat!: add \u003ccode\u003ename\u003c/code\u003e to configs (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20015\"\u003e#20015\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/1e2cad5f6fa47ed6ed89d2a29798dda926d50990\"\u003e\u003ccode\u003e1e2cad5\u003c/code\u003e\u003c/a\u003e chore: package.json update for \u003ccode\u003e@​eslint/js\u003c/code\u003e release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/454a292c95f34dad232411ddac06408e6383bb64\"\u003e\u003ccode\u003e454a292\u003c/code\u003e\u003c/a\u003e feat!: update \u003ccode\u003eeslint:recommended\u003c/code\u003e configuration (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20210\"\u003e#20210\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/c6358c31fbd3937b92d89be2618ffdf5a774604e\"\u003e\u003ccode\u003ec6358c3\u003c/code\u003e\u003c/a\u003e feat!: Require Node.js \u003ccode\u003e^20.19.0 || ^22.13.0 || \u0026gt;=24\u003c/code\u003e (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20160\"\u003e#20160\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/eslint/eslint/commits/v10.0.1/packages/js\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@typescript-eslint/eslint-plugin` from 8.56.0 to 8.60.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases\"\u003e@​typescript-eslint/eslint-plugin's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev8.60.1\u003c/h2\u003e\n\u003ch2\u003e8.60.1 (2026-06-01)\u003c/h2\u003e\n\u003ch3\u003e🩹 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e respect ECMAScript line terminators in ts-comment rules (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12352\"\u003e#12352\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-shadow] correct rule to match ESLint v10 handling (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12182\"\u003e#12182\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e❤️ Thank You\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003elumir\u003c/li\u003e\n\u003cli\u003eNevette Bailey \u003ca href=\"https://github.com/nevette-bailey\"\u003e\u003ccode\u003e@​nevette-bailey\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.60.1\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003ev8.60.0\u003c/h2\u003e\n\u003ch2\u003e8.60.0 (2026-05-25)\u003c/h2\u003e\n\u003ch3\u003e🚀 Features\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003erule-tester:\u003c/strong\u003e added updates of RuleTester from upstream (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12291\"\u003e#12291\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🩹 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eplayground TS version selector is not working (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12326\"\u003e#12326\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/issues/12325\"\u003e#12325\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e❤️ Thank You\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eEvyatar Daud \u003ca href=\"https://github.com/StyleShit\"\u003e\u003ccode\u003e@​StyleShit\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eVinccool96\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.60.0\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003ev8.59.4\u003c/h2\u003e\n\u003ch2\u003e8.59.4 (2026-05-18)\u003c/h2\u003e\n\u003ch3\u003e🩹 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-floating-promises] stack overflow when using recursive types (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12294\"\u003e#12294\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eproject-service:\u003c/strong\u003e throw error cause in \u003ccode\u003egetParsedConfigFileFromTSServer\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12321\"\u003e#12321\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003etypescript-eslint:\u003c/strong\u003e export Compatible* types from typescript-eslint to resolve pnpm TS error (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12340\"\u003e#12340\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e❤️ Thank You\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eEvyatar Daud \u003ca href=\"https://github.com/StyleShit\"\u003e\u003ccode\u003e@​StyleShit\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eKirk Waiblinger \u003ca href=\"https://github.com/kirkwaiblinger\"\u003e\u003ccode\u003e@​kirkwaiblinger\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/CHANGELOG.md\"\u003e@​typescript-eslint/eslint-plugin's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e8.60.1 (2026-06-01)\u003c/h2\u003e\n\u003ch3\u003e🩹 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-shadow] correct rule to match ESLint v10 handling (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12182\"\u003e#12182\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e respect ECMAScript line terminators in ts-comment rules (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12352\"\u003e#12352\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e❤️ Thank You\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003elumir\u003c/li\u003e\n\u003cli\u003eNevette Bailey \u003ca href=\"https://github.com/nevette-bailey\"\u003e\u003ccode\u003e@​nevette-bailey\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.60.1\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003e8.60.0 (2026-05-25)\u003c/h2\u003e\n\u003cp\u003eThis was a version bump only for eslint-plugin to align it with other projects, there were no code changes.\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.60.0\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003e8.59.4 (2026-05-18)\u003c/h2\u003e\n\u003ch3\u003e🩹 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-floating-promises] stack overflow when using recursive types (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12294\"\u003e#12294\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e❤️ Thank You\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eEvyatar Daud \u003ca href=\"https://github.com/StyleShit\"\u003e\u003ccode\u003e@​StyleShit\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.4\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003e8.59.3 (2026-05-11)\u003c/h2\u003e\n\u003cp\u003eThis was a version bump only for eslint-plugin to align it with other projects, there were no code changes.\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.3\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003e8.59.2 (2026-05-04)\u003c/h2\u003e\n\u003ch3\u003e🩹 Fixes\u003c/h3\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/4f84a697aedc436559c3ae09b5b357d98b448d68\"\u003e\u003ccode\u003e4f84a69\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.60.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/598af564db50593277ba46c7fdea3648e4425391\"\u003e\u003ccode\u003e598af56\u003c/code\u003e\u003c/a\u003e docs(eslint-plugin): clarify no-redeclare type-value collision not covered by...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/1849b530c254fb4f89d7270160f3a998e4acd964\"\u003e\u003ccode\u003e1849b53\u003c/code\u003e\u003c/a\u003e chore: typecheck using tsgo (\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin/issues/12139\"\u003e#12139\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/5341d59dd3c21fc4e2bf3bce55cf35d8f84e5216\"\u003e\u003ccode\u003e5341d59\u003c/code\u003e\u003c/a\u003e chore: fix lint issues (\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin/issues/12369\"\u003e#12369\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/f525814f01766487ab34a54d56de20ea5c4fb576\"\u003e\u003ccode\u003ef525814\u003c/code\u003e\u003c/a\u003e fix(eslint-plugin): [no-shadow] correct rule to match ESLint v10 handling (\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin/issues/1\"\u003e#1\u003c/a\u003e...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/2df540cd8bbeb3e2c56d516912f69bf63c1e9450\"\u003e\u003ccode\u003e2df540c\u003c/code\u003e\u003c/a\u003e chore(eslint-plugin): defer type checks to improve rules performance (\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin/issues/12296\"\u003e#12296\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/1ab4284789b36cf482a4d9924719162a02d54243\"\u003e\u003ccode\u003e1ab4284\u003c/code\u003e\u003c/a\u003e fix(eslint-plugin): respect ECMAScript line terminators in ts-comment rules (...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/2f49df599b2db5f2937caf975d3c63e5cdeb0ea1\"\u003e\u003ccode\u003e2f49df5\u003c/code\u003e\u003c/a\u003e docs: update references to \u003ccode\u003e@stylistic/eslint-plugin\u003c/code\u003e rules in documentation ...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/f891c29de5f3e23f3d8c59cc599d3196e54e9b58\"\u003e\u003ccode\u003ef891c29\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.60.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/ca6ca1431b6d18235297a7e29feb5d98f012dff2\"\u003e\u003ccode\u003eca6ca14\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.59.4\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commits/v8.60.1/packages/eslint-plugin\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@typescript-eslint/parser` from 8.56.0 to 8.60.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases\"\u003e@​typescript-eslint/parser's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev8.60.1\u003c/h2\u003e\n\u003ch2\u003e8.60.1 (2026-06-01)\u003c/h2\u003e\n\u003ch3\u003e🩹 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e respect ECMAScript line terminators in ts-comment rules (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12352\"\u003e#12352\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-shadow] correct rule to match ESLint v10 handling (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12182\"\u003e#12182\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e❤️ Thank You\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003elumir\u003c/li\u003e\n\u003cli\u003eNevette Bailey \u003ca href=\"https://github.com/nevette-bailey\"\u003e\u003ccode\u003e@​nevette-bailey\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.60.1\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003ev8.60.0\u003c/h2\u003e\n\u003ch2\u003e8.60.0 (2026-05-25)\u003c/h2\u003e\n\u003ch3\u003e🚀 Features\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003erule-tester:\u003c/strong\u003e added updates of RuleTester from upstream (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12291\"\u003e#12291\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🩹 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eplayground TS version selector is not working (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12326\"\u003e#12326\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/issues/12325\"\u003e#12325\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e❤️ Thank You\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eEvyatar Daud \u003ca href=\"https://github.com/StyleShit\"\u003e\u003ccode\u003e@​StyleShit\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eVinccool96\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.60.0\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003ev8.59.4\u003c/h2\u003e\n\u003ch2\u003e8.59.4 (2026-05-18)\u003c/h2\u003e\n\u003ch3\u003e🩹 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-floating-promises] stack overflow when using recursive types (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12294\"\u003e#12294\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eproject-service:\u003c/strong\u003e throw error cause in \u003ccode\u003egetParsedConfigFileFromTSServer\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12321\"\u003e#12321\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003etypescript-eslint:\u003c/strong\u003e export Compatible* types from typescript-eslint to resolve pnpm TS error (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12340\"\u003e#12340\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e❤️ Thank You\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eEvyatar Daud \u003ca href=\"https://github.com/StyleShit\"\u003e\u003ccode\u003e@​StyleShit\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eKirk Waiblinger \u003ca href=\"https://github.com/kirkwaiblinger\"\u003e\u003ccode\u003e@​kirkwaiblinger\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/parser/CHANGELOG.md\"\u003e@​typescript-eslint/parser's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e8.60.1 (2026-06-01)\u003c/h2\u003e\n\u003cp\u003eThis was a version bump only for parser to align it with other projects, there were no code changes.\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.60.1\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003e8.60.0 (2026-05-25)\u003c/h2\u003e\n\u003cp\u003eThis was a version bump only for parser to align it with other projects, there were no code changes.\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.60.0\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003e8.59.4 (2026-05-18)\u003c/h2\u003e\n\u003cp\u003eThis was a version bump only for parser to align it with other projects, there were no code changes.\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.4\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003e8.59.3 (2026-05-11)\u003c/h2\u003e\n\u003cp\u003eThis was a version bump only for parser to align it with other projects, there were no code changes.\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.3\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003e8.59.2 (2026-05-04)\u003c/h2\u003e\n\u003cp\u003eThis was a version bump only for parser to align it with other projects, there were no code changes.\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.2\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003e8.59.1 (2026-04-27)\u003c/h2\u003e\n\u003cp\u003eThis was a version bump only for parser to align it with other projects, there were no code changes.\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.1\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003e8.59.0 (2026-04-20)\u003c/h2\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/4f84a697aedc436559c3ae09b5b357d98b448d68\"\u003e\u003ccode\u003e4f84a69\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.60.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/1849b530c254fb4f89d7270160f3a998e4acd964\"\u003e\u003ccode\u003e1849b53\u003c/code\u003e\u003c/a\u003e chore: typecheck using tsgo (\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/parser/issues/12139\"\u003e#12139\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/f891c29de5f3e23f3d8c59cc599d3196e54e9b58\"\u003e\u003ccode\u003ef891c29\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.60.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/ca6ca1431b6d18235297a7e29feb5d98f012dff2\"\u003e\u003ccode\u003eca6ca14\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.59.4\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/48e13c0261e3cb1bf4f4dfaa462cdb3a56ef7383\"\u003e\u003ccode\u003e48e13c0\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.59.3\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/44f9625336841a8ee3eb01a9e02e49b1d7b12648\"\u003e\u003ccode\u003e44f9625\u003c/code\u003e\u003c/a\u003e chore(deps): update vitest monorepo to v4.1.5 (\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/parser/issues/12307\"\u003e#12307\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/2ec35f1760aade4df4c631d76d78c7ed5e136333\"\u003e\u003ccode\u003e2ec35f1\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.59.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/52457932e5507b5ca01e720a541f3f8d01e09b9d\"\u003e\u003ccode\u003e5245793\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.59.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/ea9ae4f8817873480e3501145059f63e39e8d8a1\"\u003e\u003ccode\u003eea9ae4f\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.59.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/90c2803a4c250e0343598d41e973f95e743bf4ce\"\u003e\u003ccode\u003e90c2803\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.58.2\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commits/v8.60.1/packages/parser\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `eslint` from 9.39.2 to 10.4.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/eslint/eslint/releases\"\u003eeslint's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev10.4.1\u003c/h2\u003e\n\u003ch2\u003eBug Fixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/e557467db7496220eebcbe2ac5ea6d38c12bb1ec\"\u003e\u003ccode\u003ee557467\u003c/code\u003e\u003c/a\u003e fix: update \u003ccode\u003e@eslint/plugin-kit\u003c/code\u003e version to 0.7.2 (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20930\"\u003e#20930\u003c/a\u003e) (Francesco Trotta)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/d4ce898796ca22c3b96aa70d3014cb85f4bac1cd\"\u003e\u003ccode\u003ed4ce898\u003c/code\u003e\u003c/a\u003e fix: propagate failures from delegated commands (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20917\"\u003e#20917\u003c/a\u003e) (Minh Vu)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/f4f3507460bc016b5be979c05d2969793f570cbf\"\u003e\u003ccode\u003ef4f3507\u003c/code\u003e\u003c/a\u003e fix: prefer-arrow-callback invalid autofix with newline after \u003ccode\u003easync\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20916\"\u003e#20916\u003c/a\u003e) (kuldeep kumar)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/c5bc78b37e08b9054a11f0cc2d81808bb24acb85\"\u003e\u003ccode\u003ec5bc78b\u003c/code\u003e\u003c/a\u003e fix: false positive for reference in \u003ccode\u003efinally\u003c/code\u003e block (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20655\"\u003e#20655\u003c/a\u003e) (Tanuj Kanti)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/27538c01f5df4e9306f6f4ba867b2dd6307fae59\"\u003e\u003ccode\u003e27538c0\u003c/code\u003e\u003c/a\u003e fix: add missing CodePath and CodePathSegment types (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20853\"\u003e#20853\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eDocumentation\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/61b0add61ffc52665562be7bb96f526690a78b30\"\u003e\u003ccode\u003e61b0add\u003c/code\u003e\u003c/a\u003e docs: remove deprecated rule from related rules of \u003ccode\u003emax-params\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20921\"\u003e#20921\u003c/a\u003e) (Tanuj Kanti)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/305d5b91aeac24d36fde42f75625a8f183d4ce43\"\u003e\u003ccode\u003e305d5b9\u003c/code\u003e\u003c/a\u003e docs: remove deprecated rules from related rules section (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20911\"\u003e#20911\u003c/a\u003e) (Tanuj Kanti)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/49b0202d01918b8061720d586dffd7c68047090c\"\u003e\u003ccode\u003e49b0202\u003c/code\u003e\u003c/a\u003e docs: fix \u003ccode\u003edisplay: none\u003c/code\u003e of ad (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20901\"\u003e#20901\u003c/a\u003e) (Tanuj Kanti)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/9067f9492ec998afc5b4f057a477ecf6ebd45e44\"\u003e\u003ccode\u003e9067f94\u003c/code\u003e\u003c/a\u003e docs: switch build to Node.js 24 (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20893\"\u003e#20893\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/c91b0417e3420c76807ce1fa2aea76e2de87ab86\"\u003e\u003ccode\u003ec91b041\u003c/code\u003e\u003c/a\u003e docs: Update README (GitHub Actions Bot)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/e349265cb37f3ebc837e178e48a725bb782bd870\"\u003e\u003ccode\u003ee349265\u003c/code\u003e\u003c/a\u003e docs: clarify semver strings in rule deprecation objects (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20885\"\u003e#20885\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eChores\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/b0e466b6ab47bfc7de43d8de0c315d8ee83aa584\"\u003e\u003ccode\u003eb0e466b\u003c/code\u003e\u003c/a\u003e test: add \u003ccode\u003edata\u003c/code\u003e property to invalid tests cases for rules (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20924\"\u003e#20924\u003c/a\u003e) (Tanuj Kanti)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/f78838bc4c86d487e1bcc7cede260c4467721c46\"\u003e\u003ccode\u003ef78838b\u003c/code\u003e\u003c/a\u003e test: add CodePath type coverage (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20904\"\u003e#20904\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/1daa4bd734b79a62e317d0394394a6b38cff49f9\"\u003e\u003ccode\u003e1daa4bd\u003c/code\u003e\u003c/a\u003e chore: update \u003ccode\u003eeslint-plugin-eslint-comments\u003c/code\u003e test data to latest commit (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20922\"\u003e#20922\u003c/a\u003e) (Francesco Trotta)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/002942ce988ea28b78e0a2f3b074081e638b552c\"\u003e\u003ccode\u003e002942c\u003c/code\u003e\u003c/a\u003e ci: declare contents:read on update-readme workflow (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20919\"\u003e#20919\u003c/a\u003e) (Arpit Jain)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/64bca24e7bed35bc3c864fc625cb2d89eca87d5b\"\u003e\u003ccode\u003e64bca24\u003c/code\u003e\u003c/a\u003e chore: update ecosystem plugins (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20912\"\u003e#20912\u003c/a\u003e) (ESLint Bot)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/6d7c832950d5e92499d88e504080661f888f8f56\"\u003e\u003ccode\u003e6d7c832\u003c/code\u003e\u003c/a\u003e chore: ignore fflate updates in renovate (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20908\"\u003e#20908\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/b2c86382164d87c6203b78d52068cd6a2a6ffe30\"\u003e\u003ccode\u003eb2c8638\u003c/code\u003e\u003c/a\u003e ci: bump pnpm/action-setup from 6.0.7 to 6.0.8 (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20889\"\u003e#20889\u003c/a\u003e) (dependabot[bot])\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/a9b8d7f74c50211701cfc49710fa541fd91b2aa5\"\u003e\u003ccode\u003ea9b8d7f\u003c/code\u003e\u003c/a\u003e chore: increase maxBuffer for ecosystem tests (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20881\"\u003e#20881\u003c/a\u003e) (sethamus)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/b702ead5e1ed7cb9f28238a454797662efb37396\"\u003e\u003ccode\u003eb702ead\u003c/code\u003e\u003c/a\u003e chore: update ecosystem update PR settings (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20884\"\u003e#20884\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/507f60e9a78c9a902bc8759f066ae17a1ea6cd81\"\u003e\u003ccode\u003e507f60e\u003c/code\u003e\u003c/a\u003e chore: update ecosystem plugins (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20882\"\u003e#20882\u003c/a\u003e) (ESLint Bot)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/92f5c5bb6bf3a5d167c8ee53a430833410295c6d\"\u003e\u003ccode\u003e92f5c5b\u003c/code\u003e\u003c/a\u003e test: add unit test for message-count (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20878\"\u003e#20878\u003c/a\u003e) (kuldeep kumar)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/df321080af5758b1fa25e4b9a40e26135642dd6e\"\u003e\u003ccode\u003edf32108\u003c/code\u003e\u003c/a\u003e chore: add \u003ccode\u003e@​eslint/markdown\u003c/code\u003e and typescript-eslint ecosystem tests (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20837\"\u003e#20837\u003c/a\u003e) (sethamus)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/327f91d36aa49f2a50ded931d841a16374fd875f\"\u003e\u003ccode\u003e327f91d\u003c/code\u003e\u003c/a\u003e chore: use includeIgnoreFile internally (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20876\"\u003e#20876\u003c/a\u003e) (Kirk Waiblinger)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/f0dc4bd893fb3a9f44e4ddc3ad7063ffb0beacd3\"\u003e\u003ccode\u003ef0dc4bd\u003c/code\u003e\u003c/a\u003e chore: pin fflate@0.8.2 (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20877\"\u003e#20877\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/0f4bd257a67a082b756de746d9e0c4842ab764ca\"\u003e\u003ccode\u003e0f4bd25\u003c/code\u003e\u003c/a\u003e ci: run Discord alert for ecosystem test failures (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20873\"\u003e#20873\u003c/a\u003e) (Copilot)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev10.4.0\u003c/h2\u003e\n\u003ch2\u003eFeatures\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/1a45ec596af1dd5f880e6874cb8f24dafb6a7ecf\"\u003e\u003ccode\u003e1a45ec5\u003c/code\u003e\u003c/a\u003e feat: check sequence expressions in \u003ccode\u003efor-direction\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20701\"\u003e#20701\u003c/a\u003e) (kuldeep kumar)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/450040bd89b989b3531824c6be45feb5fe3d936b\"\u003e\u003ccode\u003e450040b\u003c/code\u003e\u003c/a\u003e feat: add \u003ccode\u003eincludeIgnoreFile()\u003c/code\u003e to \u003ccode\u003eeslint/config\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20735\"\u003e#20735\u003c/a\u003e) (Kirk Waiblinger)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eBug Fixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/544c0c3da589166ad8e5d634f35d3d06701c57be\"\u003e\u003ccode\u003e544c0c3\u003c/code\u003e\u003c/a\u003e fix: escape code path DOT labels in debug output (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20866\"\u003e#20866\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/6799431203f2579632d0870f98ba132067f4040c\"\u003e\u003ccode\u003e6799431\u003c/code\u003e\u003c/a\u003e fix: update dependency \u003ccode\u003e@​eslint/config-helpers\u003c/code\u003e to ^0.6.0 (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20850\"\u003e#20850\u003c/a\u003e) (renovate[bot])\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/f078fef5005dceb14fc162aab7c7200e027688dd\"\u003e\u003ccode\u003ef078fef\u003c/code\u003e\u003c/a\u003e fix: handle non-array deprecated rule replacements (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20825\"\u003e#20825\u003c/a\u003e) (xbinaryx)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eDocumentation\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/7e52a7151fb92eec0e0f67fe4e5ddbd1ccce796f\"\u003e\u003ccode\u003e7e52a71\u003c/code\u003e\u003c/a\u003e docs: add mention of \u003ccode\u003e@eslint-react/eslint-plugin\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20869\"\u003e#20869\u003c/a\u003e) (Pavel)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/db3468ba746407d7f286f18f7ea9db6df0e3bc08\"\u003e\u003ccode\u003edb3468b\u003c/code\u003e\u003c/a\u003e docs: tweak wording around ambiguous CJS-vs-ESM config (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20865\"\u003e#20865\u003c/a\u003e) (Kirk Waiblinger)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/90846643ec6e97d447ae0d831fabe6d17b0a998a\"\u003e\u003ccode\u003e9084664\u003c/code\u003e\u003c/a\u003e docs: Update README (GitHub Actions Bot)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/9cc73875046e3c4b8313644cbb1e99e26b36bd3f\"\u003e\u003ccode\u003e9cc7387\u003c/code\u003e\u003c/a\u003e docs: Update README (GitHub Actions Bot)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/3d7b5484407403817aa9071a394d336d8ea96eb5\"\u003e\u003ccode\u003e3d7b548\u003c/code\u003e\u003c/a\u003e docs: Update README (GitHub Actions Bot)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/191ec3c0a3f94ce0f110df761f0b2b8949011ccb\"\u003e\u003ccode\u003e191ec3c\u003c/code\u003e\u003c/a\u003e docs: Update README (GitHub Actions Bot)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/4a3d15a99c452c4db2fd56b577fa7597e98ab0c2\"\u003e\u003ccode\u003e4a3d15a\u003c/code\u003e\u003c/a\u003e 10.4.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/43e7e2bdc5c6cacc535446b7d23c10f780384ba8\"\u003e\u003ccode\u003e43e7e2b\u003c/code\u003e\u003c/a\u003e Build: changelog update for 10.4.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/e557467db7496220eebcbe2ac5ea6d38c12bb1ec\"\u003e\u003ccode\u003ee557467\u003c/code\u003e\u003c/a\u003e fix: update \u003ccode\u003e@eslint/plugin-kit\u003c/code\u003e version to 0.7.2 (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20930\"\u003e#20930\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/b0e466b6ab47bfc7de43d8de0c315d8ee83aa584\"\u003e\u003ccode\u003eb0e466b\u003c/code\u003e\u003c/a\u003e test: add \u003ccode\u003edata\u003c/code\u003e property to invalid tests cases for rules (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20924\"\u003e#20924\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/d4ce898796ca22c3b96aa70d3014cb85f4bac1cd\"\u003e\u003ccode\u003ed4ce898\u003c/code\u003e\u003c/a\u003e fix: propagate failures from delegated commands (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20917\"\u003e#20917\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/f4f3507460bc016b5be979c05d2969793f570cbf\"\u003e\u003ccode\u003ef4f3507\u003c/code\u003e\u003c/a\u003e fix: prefer-arrow-callback invalid autofix with newline after \u003ccode\u003easync\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20916\"\u003e#20916\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/f78838bc4c86d487e1bcc7cede260c4467721c46\"\u003e\u003ccode\u003ef78838b\u003c/code\u003e\u003c/a\u003e test: add CodePath type coverage (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20904\"\u003e#20904\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/61b0add61ffc52665562be7bb96f526690a78b30\"\u003e\u003ccode\u003e61b0add\u003c/code\u003e\u003c/a\u003e docs: remove deprecated rule from related rules of \u003ccode\u003emax-params\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20921\"\u003e#20921\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/1daa4bd734b79a62e317d0394394a6b38cff49f9\"\u003e\u003ccode\u003e1daa4bd\u003c/code\u003e\u003c/a\u003e chore: update \u003ccode\u003eeslint-plugin-eslint-comments\u003c/code\u003e test data to latest commit (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20\"\u003e#20\u003c/a\u003e...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/002942ce988ea28b78e0a2f3b074081e638b552c\"\u003e\u003ccode\u003e002942c\u003c/code\u003e\u003c/a\u003e ci: declare contents:read on update-readme workflow (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20919\"\u003e#20919\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/eslint/eslint/compare/v9.39.2...v10.4.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `eslint-import-resolver-typescript` from 4.4.4 to 4.4.5\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/import-js/eslint-import-resolver-typescript/releases\"\u003eeslint-import-resolver-typescript's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev4.4.5\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/import-js/eslint-import-resolver-typescript/pull/473\"\u003e#473\u003c/a\u003e \u003ca href=\"https://github.com/import-js/eslint-import-resolver-typescript/commit/32c61abccf26bd2a2267f2e0e67d82e6f88d149a\"\u003e\u003ccode\u003e32c61ab\u003c/code\u003e\u003c/a\u003e Thanks \u003ca href=\"https://github.com/leey0818\"\u003e\u003ccode\u003e@​leey0818\u003c/code\u003e\u003c/a\u003e! - fix: check tsconfig matching before using resolver\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/import-js/eslint-import-resolver-typescript/blob/master/CHANGELOG.md\"\u003eeslint-import-resolver-typescript's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e4.4.5\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/import-js/eslint-import-resolver-typescript/pull/473\"\u003e#473\u003c/a\u003e \u003ca href=\"https://github.com/import-js/eslint-import-resolver-typescript/commit/32c61abccf26bd2a2267f2e0e67d82e6f88d149a\"\u003e\u003ccode\u003e32c61ab\u003c/code\u003e\u003c/a\u003e Thanks \u003ca href=\"https://github.com/leey0818\"\u003e\u003ccode\u003e@​leey0818\u003c/code\u003e\u003c/a\u003e! - fix: check tsconfig matching before using resolver\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/import-js/eslint-import-resolver-typescript/commit/724c47d8c08fa8ffa702c7a94ba53b367a4727fb\"\u003e\u003ccode\u003e724c47d\u003c/code\u003e\u003c/a\u003e chore: release eslint-import-resolver-typescript (\u003ca href=\"https://redirect.github.com/import-js/eslint-import-resolver-typescript/issues/480\"\u003e#480\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/import-js/eslint-import-resolver-typescript/commit/32c61abccf26bd2a2267f2e0e67d82e6f88d149a\"\u003e\u003ccode\u003e32c61ab\u003c/code\u003e\u003c/a\u003e fix: check tsconfig matching before using resolver (\u003ca href=\"https://redirect.github.com/import-js/eslint-import-resolver-typescript/issues/473\"\u003e#473\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/import-js/eslint-import-resolver-typescript/compare/v4.4.4...v4.4.5\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eMaintainer changes\u003c/summary\u003e\n\u003cp\u003eThis version was pushed to npm by \u003ca href=\"https://www.npmjs.com/~GitHub%20Actions\"\u003eGitHub Actions\u003c/a\u003e, a new releaser for eslint-import-resolver-typescript since your current version.\u003c/p\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `eslint-plugin-react-hooks` from 7.0.1 to 7.1.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/facebook/react/releases\"\u003eeslint-plugin-react-hooks's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eeslint-plugin-react-hooks@7.1.1 (April 17, 2026)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eNote:\u003c/strong\u003e 7.1.0 accidentally removed the \u003ccode\u003ecomponent-hook-factories\u003c/code\u003e rule, causing errors for users who referenced it in their ESLint config. This is now fixed.\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdd deprecated no-op \u003ccode\u003ecomponent-hook-factories\u003c/code\u003e rule for backwards compatibility. (\u003ca href=\"https://github.com/mofeiZ\"\u003e\u003ccode\u003e@​mofeiZ\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/36307\"\u003e#36307\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eeslint-plugin-react-hooks@7.1.0 (April 16, 2026)\u003c/h2\u003e\n\u003cp\u003eThis release adds ESLint v10 support, improves performance by skipping compilation for non-React files, and includes compiler lint improvements including better \u003ccode\u003eset-state-in-effect\u003c/code\u003e detection, improved ref validation, and more helpful error reporting.\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdd ESLint v10 support. (\u003ca href=\"https://github.com/azat-io\"\u003e\u003ccode\u003e@​azat-io\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/35720\"\u003e#35720\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSkip compilation for non-React files to improve performance. (\u003ca href=\"https://github.com/josephsavona\"\u003e\u003ccode\u003e@​josephsavona\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/35589\"\u003e#35589\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix exhaustive deps bug with Flow type casting. (\u003ca href=\"https://github.com/jorge-cab\"\u003e\u003ccode\u003e@​jorge-cab\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/35691\"\u003e#35691\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix \u003ccode\u003euseEffectEvent\u003c/code\u003e checks in component syntax. (\u003ca href=\"https://github.com/jbrown215\"\u003e\u003ccode\u003e@​jbrown215\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/35041\"\u003e#35041\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eImproved \u003ccode\u003eset-state-in-effect\u003c/code\u003e validation with fewer false negatives. (\u003ca href=\"https://github.com/jorge-cab\"\u003e\u003ccode\u003e@​jorge-cab\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/35134\"\u003e#35134\u003c/a\u003e, \u003ca href=\"https://github.com/josephsav...\n\n_Description has been truncated_","html_url":"https://github.com/AnandKg22/ReactStarter/pull/8","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/AnandKg22%2FReactStarter/issues/8","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/8/packages"}},{"old_version":"5.1.3","new_version":"5.3.0","update_type":"minor","path":null,"pr_created_at":"2026-06-04T22:09:42.000Z","version_change":"5.1.3 → 5.3.0","issue":{"uuid":"4592501387","node_id":"PR_kwDOSvGKx87i32VZ","number":2,"state":"closed","title":"deps(deps): Bump the all-dependencies group across 1 directory with 68 updates","user":"dependabot[bot]","labels":[],"assignees":[],"locked":false,"comments_count":2,"pull_request":true,"closed_at":"2026-06-08T04:29:51.000Z","author_association":null,"state_reason":null,"created_at":"2026-06-04T22:09:42.000Z","updated_at":"2026-06-08T04:29:53.000Z","time_to_close":282009,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"deps(deps): Bump","group_name":"all-dependencies","update_count":68,"packages":[{"name":"@eslint-react/eslint-plugin","old_version":"2.13.0","new_version":"5.8.12","repository_url":"https://github.com/Rel1cx/eslint-react"},{"name":"@eslint/js","old_version":"9.39.2","new_version":"10.0.1","repository_url":"https://github.com/eslint/eslint"},{"name":"@typescript-eslint/eslint-plugin","old_version":"8.56.0","new_version":"8.60.1","repository_url":"https://github.com/typescript-eslint/typescript-eslint"},{"name":"@typescript-eslint/parser","old_version":"8.56.0","new_version":"8.60.1","repository_url":"https://github.com/typescript-eslint/typescript-eslint"},{"name":"eslint","old_version":"9.39.2","new_version":"10.4.1","repository_url":"https://github.com/eslint/eslint"},{"name":"eslint-import-resolver-typescript","old_version":"4.4.4","new_version":"4.4.5","repository_url":"https://github.com/import-js/eslint-import-resolver-typescript"},{"name":"eslint-plugin-react-hooks","old_version":"7.0.1","new_version":"7.1.1","repository_url":"https://github.com/facebook/react"},{"name":"globals","old_version":"17.3.0","new_version":"17.6.0","repository_url":"https://github.com/sindresorhus/globals"},{"name":"graphql","old_version":"16.12.0","new_version":"16.14.1","repository_url":"https://github.com/graphql/graphql-js"},{"name":"happy-dom","old_version":"20.6.2","new_version":"20.10.1","repository_url":"https://github.com/capricorn86/happy-dom"},{"name":"jiti","old_version":"2.6.1","new_version":"2.7.0","repository_url":"https://github.com/unjs/jiti"},{"name":"lint-staged","old_version":"16.2.7","new_version":"17.0.7","repository_url":"https://github.com/lint-staged/lint-staged"},{"name":"mermaid","old_version":"11.12.3","new_version":"11.15.0","repository_url":"https://github.com/mermaid-js/mermaid"},{"name":"prettier","old_version":"3.8.1","new_version":"3.8.3","repository_url":"https://github.com/prettier/prettier"},{"name":"react","old_version":"19.2.4","new_version":"19.2.7","repository_url":"https://github.com/facebook/react"},{"name":"@types/react","old_version":"19.2.14","new_version":"19.2.16","repository_url":"https://github.com/DefinitelyTyped/DefinitelyTyped"},{"name":"typescript","old_version":"5.9.3","new_version":"6.0.3","repository_url":"https://github.com/microsoft/TypeScript"},{"name":"typescript-eslint","old_version":"8.56.0","new_version":"8.60.1","repository_url":"https://github.com/typescript-eslint/typescript-eslint"},{"name":"typescript-language-server","old_version":"5.1.3","new_version":"5.3.0","repository_url":"https://github.com/typescript-language-server/typescript-language-server"},{"name":"vite","old_version":"7.3.1","new_version":"8.0.16","repository_url":"https://github.com/vitejs/vite"},{"name":"vitepress","old_version":"2.0.0-alpha.16","new_version":"2.0.0-alpha.17","repository_url":"https://github.com/vuejs/vitepress"},{"name":"vitepress-plugin-llms","old_version":"1.11.0","new_version":"1.13.1","repository_url":"https://github.com/okineadev/vitepress-plugin-llms"},{"name":"vitest","old_version":"4.0.18","new_version":"4.1.8","repository_url":"https://github.com/vitest-dev/vitest"},{"name":"wrangler","old_version":"4.66.0","new_version":"4.98.0","repository_url":"https://github.com/cloudflare/workers-sdk"},{"name":"@ai-sdk/openai","old_version":"3.0.29","new_version":"3.0.67","repository_url":"https://github.com/vercel/ai"},{"name":"@better-auth/passkey","old_version":"1.4.18","new_version":"1.6.14","repository_url":"https://github.com/better-auth/better-auth"},{"name":"@better-auth/stripe","old_version":"1.4.18","new_version":"1.6.14","repository_url":"https://github.com/better-auth/better-auth"},{"name":"@trpc/server","old_version":"11.10.0","new_version":"11.17.0","repository_url":"https://github.com/trpc/trpc"},{"name":"ai","old_version":"6.0.91","new_version":"6.0.196","repository_url":"https://github.com/vercel/ai"},{"name":"better-auth","old_version":"1.4.18","new_version":"1.6.14","repository_url":"https://github.com/better-auth/better-auth"},{"name":"drizzle-orm","old_version":"0.45.1","new_version":"0.45.2","repository_url":"https://github.com/drizzle-team/drizzle-orm"},{"name":"postgres","old_version":"3.4.8","new_version":"3.4.9","repository_url":"https://github.com/porsager/postgres"},{"name":"resend","old_version":"6.9.2","new_version":"6.12.4","repository_url":"https://github.com/resend/resend-node"},{"name":"stripe","old_version":"20.3.1","new_version":"22.2.0","repository_url":"https://github.com/stripe/stripe-node"},{"name":"@cloudflare/workers-types","old_version":"4.20260218.0","new_version":"4.20260604.1","repository_url":"https://github.com/cloudflare/workerd"},{"name":"@types/bun","old_version":"1.3.9","new_version":"1.3.14","repository_url":"https://github.com/DefinitelyTyped/DefinitelyTyped"},{"name":"hono","old_version":"4.11.10","new_version":"4.12.23","repository_url":"https://github.com/honojs/hono"},{"name":"zod","old_version":"4.3.6","new_version":"4.4.3","repository_url":"https://github.com/colinhacks/zod"},{"name":"@tanstack/react-query","old_version":"5.90.21","new_version":"5.101.0","repository_url":"https://github.com/TanStack/query"},{"name":"@tanstack/react-router","old_version":"1.161.1","new_version":"1.170.11","repository_url":"https://github.com/TanStack/router"},{"name":"@trpc/client","old_version":"11.10.0","new_version":"11.17.0","repository_url":"https://github.com/trpc/trpc"},{"name":"@trpc/tanstack-react-query","old_version":"11.10.0","new_version":"11.17.0","repository_url":"https://github.com/trpc/trpc"},{"name":"jotai","old_version":"2.17.1","new_version":"2.20.0","repository_url":"https://github.com/pmndrs/jotai"},{"name":"jotai-effect","old_version":"2.2.3","new_version":"2.3.1","repository_url":"https://github.com/jotaijs/jotai-effect"},{"name":"lucide-react","old_version":"0.574.0","new_version":"1.17.0","repository_url":"https://github.com/lucide-icons/lucide"},{"name":"react-dom","old_version":"19.2.4","new_version":"19.2.7","repository_url":"https://github.com/facebook/react"},{"name":"react-error-boundary","old_version":"6.1.1","new_version":"6.1.2","repository_url":"https://github.com/bvaughn/react-error-boundary"},{"name":"tailwind-merge","old_version":"3.4.1","new_version":"3.6.0","repository_url":"https://github.com/dcastil/tailwind-merge"},{"name":"@tailwindcss/postcss","old_version":"4.2.0","new_version":"4.3.0","repository_url":"https://github.com/tailwindlabs/tailwindcss"},{"name":"@tanstack/react-query-devtools","old_version":"5.91.3","new_version":"5.101.0","repository_url":"https://github.com/TanStack/query"},{"name":"@tanstack/react-router-devtools","old_version":"1.161.1","new_version":"1.167.0","repository_url":"https://github.com/TanStack/router"},{"name":"@tanstack/router-plugin","old_version":"1.161.1","new_version":"1.168.14","repository_url":"https://github.com/TanStack/router"},{"name":"@types/node","old_version":"25.2.3","new_version":"25.9.1","repository_url":"https://github.com/DefinitelyTyped/DefinitelyTyped"},{"name":"@vitejs/plugin-react","old_version":"5.1.4","new_version":"6.0.2","repository_url":"https://github.com/vitejs/vite-plugin-react"},{"name":"@vitejs/plugin-react-swc","old_version":"4.2.3","new_version":"4.3.1","repository_url":"https://github.com/vitejs/vite-plugin-react"},{"name":"autoprefixer","old_version":"10.4.24","new_version":"10.5.0","repository_url":"https://github.com/postcss/autoprefixer"},{"name":"globby","old_version":"16.1.1","new_version":"16.2.0","repository_url":"https://github.com/sindresorhus/globby"},{"name":"@react-email/components","old_version":"1.0.8","new_version":"1.0.12","repository_url":"https://github.com/resend/react-email"},{"name":"@react-email/render","old_version":"2.0.4","new_version":"2.0.8","repository_url":"https://github.com/resend/react-email"},{"name":"@react-email/preview-server","old_version":"5.2.8","new_version":"5.2.10","repository_url":"https://github.com/resend/react-email"},{"name":"react-email","old_version":"5.2.8","new_version":"6.5.0","repository_url":"https://github.com/resend/react-email"},{"name":"@astrojs/react","old_version":"4.4.2","new_version":"5.0.7","repository_url":"https://github.com/withastro/astro"},{"name":"dotenv","old_version":"17.3.1","new_version":"17.4.2","repository_url":"https://github.com/motdotla/dotenv"},{"name":"drizzle-kit","old_version":"0.31.9","new_version":"0.31.10","repository_url":"https://github.com/drizzle-team/drizzle-orm"},{"name":"@modelcontextprotocol/sdk","old_version":"1.26.0","new_version":"1.29.0","repository_url":"https://github.com/modelcontextprotocol/typescript-sdk"},{"name":"got","old_version":"14.6.6","new_version":"15.0.5","repository_url":"https://github.com/sindresorhus/got"}],"path":null,"ecosystem":"npm"},"body":"Bumps the all-dependencies group with 66 updates in the / directory:\n\n| Package | From | To |\n| --- | --- | --- |\n| [@eslint-react/eslint-plugin](https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin) | `2.13.0` | `5.8.12` |\n| [@eslint/js](https://github.com/eslint/eslint/tree/HEAD/packages/js) | `9.39.2` | `10.0.1` |\n| [@typescript-eslint/eslint-plugin](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin) | `8.56.0` | `8.60.1` |\n| [@typescript-eslint/parser](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/parser) | `8.56.0` | `8.60.1` |\n| [eslint](https://github.com/eslint/eslint) | `9.39.2` | `10.4.1` |\n| [eslint-import-resolver-typescript](https://github.com/import-js/eslint-import-resolver-typescript) | `4.4.4` | `4.4.5` |\n| [eslint-plugin-react-hooks](https://github.com/facebook/react/tree/HEAD/packages/eslint-plugin-react-hooks) | `7.0.1` | `7.1.1` |\n| [globals](https://github.com/sindresorhus/globals) | `17.3.0` | `17.6.0` |\n| [graphql](https://github.com/graphql/graphql-js) | `16.12.0` | `16.14.1` |\n| [happy-dom](https://github.com/capricorn86/happy-dom) | `20.6.2` | `20.10.1` |\n| [jiti](https://github.com/unjs/jiti) | `2.6.1` | `2.7.0` |\n| [lint-staged](https://github.com/lint-staged/lint-staged) | `16.2.7` | `17.0.7` |\n| [mermaid](https://github.com/mermaid-js/mermaid) | `11.12.3` | `11.15.0` |\n| [prettier](https://github.com/prettier/prettier) | `3.8.1` | `3.8.3` |\n| [react](https://github.com/facebook/react/tree/HEAD/packages/react) | `19.2.4` | `19.2.7` |\n| [@types/react](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/react) | `19.2.14` | `19.2.16` |\n| [typescript](https://github.com/microsoft/TypeScript) | `5.9.3` | `6.0.3` |\n| [typescript-eslint](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/typescript-eslint) | `8.56.0` | `8.60.1` |\n| [typescript-language-server](https://github.com/typescript-language-server/typescript-language-server) | `5.1.3` | `5.3.0` |\n| [vite](https://github.com/vitejs/vite/tree/HEAD/packages/vite) | `7.3.1` | `8.0.16` |\n| [vitepress](https://github.com/vuejs/vitepress) | `2.0.0-alpha.16` | `2.0.0-alpha.17` |\n| [vitepress-plugin-llms](https://github.com/okineadev/vitepress-plugin-llms) | `1.11.0` | `1.13.1` |\n| [vitest](https://github.com/vitest-dev/vitest/tree/HEAD/packages/vitest) | `4.0.18` | `4.1.8` |\n| [wrangler](https://github.com/cloudflare/workers-sdk/tree/HEAD/packages/wrangler) | `4.66.0` | `4.98.0` |\n| [@ai-sdk/openai](https://github.com/vercel/ai/tree/HEAD/packages/openai) | `3.0.29` | `3.0.67` |\n| [@better-auth/passkey](https://github.com/better-auth/better-auth/tree/HEAD/packages/passkey) | `1.4.18` | `1.6.14` |\n| [@better-auth/stripe](https://github.com/better-auth/better-auth/tree/HEAD/packages/stripe) | `1.4.18` | `1.6.14` |\n| [@trpc/server](https://github.com/trpc/trpc/tree/HEAD/packages/server) | `11.10.0` | `11.17.0` |\n| [ai](https://github.com/vercel/ai/tree/HEAD/packages/ai) | `6.0.91` | `6.0.196` |\n| [better-auth](https://github.com/better-auth/better-auth/tree/HEAD/packages/better-auth) | `1.4.18` | `1.6.14` |\n| [drizzle-orm](https://github.com/drizzle-team/drizzle-orm) | `0.45.1` | `0.45.2` |\n| [postgres](https://github.com/porsager/postgres) | `3.4.8` | `3.4.9` |\n| [resend](https://github.com/resend/resend-node) | `6.9.2` | `6.12.4` |\n| [stripe](https://github.com/stripe/stripe-node) | `20.3.1` | `22.2.0` |\n| [@cloudflare/workers-types](https://github.com/cloudflare/workerd) | `4.20260218.0` | `4.20260604.1` |\n| [@types/bun](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/bun) | `1.3.9` | `1.3.14` |\n| [hono](https://github.com/honojs/hono) | `4.11.10` | `4.12.23` |\n| [zod](https://github.com/colinhacks/zod) | `4.3.6` | `4.4.3` |\n| [@tanstack/react-query](https://github.com/TanStack/query/tree/HEAD/packages/react-query) | `5.90.21` | `5.101.0` |\n| [@tanstack/react-router](https://github.com/TanStack/router/tree/HEAD/packages/react-router) | `1.161.1` | `1.170.11` |\n| [@trpc/client](https://github.com/trpc/trpc/tree/HEAD/packages/client) | `11.10.0` | `11.17.0` |\n| [@trpc/tanstack-react-query](https://github.com/trpc/trpc/tree/HEAD/packages/tanstack-react-query) | `11.10.0` | `11.17.0` |\n| [jotai](https://github.com/pmndrs/jotai) | `2.17.1` | `2.20.0` |\n| [jotai-effect](https://github.com/jotaijs/jotai-effect) | `2.2.3` | `2.3.1` |\n| [lucide-react](https://github.com/lucide-icons/lucide/tree/HEAD/packages/lucide-react) | `0.574.0` | `1.17.0` |\n| [react-dom](https://github.com/facebook/react/tree/HEAD/packages/react-dom) | `19.2.4` | `19.2.7` |\n| [react-error-boundary](https://github.com/bvaughn/react-error-boundary) | `6.1.1` | `6.1.2` |\n| [tailwind-merge](https://github.com/dcastil/tailwind-merge) | `3.4.1` | `3.6.0` |\n| [@tailwindcss/postcss](https://github.com/tailwindlabs/tailwindcss/tree/HEAD/packages/@tailwindcss-postcss) | `4.2.0` | `4.3.0` |\n| [@tanstack/react-query-devtools](https://github.com/TanStack/query/tree/HEAD/packages/react-query-devtools) | `5.91.3` | `5.101.0` |\n| [@tanstack/react-router-devtools](https://github.com/TanStack/router/tree/HEAD/packages/react-router-devtools) | `1.161.1` | `1.167.0` |\n| [@tanstack/router-plugin](https://github.com/TanStack/router/tree/HEAD/packages/router-plugin) | `1.161.1` | `1.168.14` |\n| [@types/node](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/node) | `25.2.3` | `25.9.1` |\n| [@vitejs/plugin-react](https://github.com/vitejs/vite-plugin-react/tree/HEAD/packages/plugin-react) | `5.1.4` | `6.0.2` |\n| [@vitejs/plugin-react-swc](https://github.com/vitejs/vite-plugin-react/tree/HEAD/packages/plugin-react-swc) | `4.2.3` | `4.3.1` |\n| [autoprefixer](https://github.com/postcss/autoprefixer) | `10.4.24` | `10.5.0` |\n| [globby](https://github.com/sindresorhus/globby) | `16.1.1` | `16.2.0` |\n| [@react-email/components](https://github.com/resend/react-email/tree/HEAD/packages/components) | `1.0.8` | `1.0.12` |\n| [@react-email/render](https://github.com/resend/react-email/tree/HEAD/packages/render) | `2.0.4` | `2.0.8` |\n| [@react-email/preview-server](https://github.com/resend/react-email/tree/HEAD/packages/preview-server) | `5.2.8` | `5.2.10` |\n| [react-email](https://github.com/resend/react-email/tree/HEAD/packages/react-email) | `5.2.8` | `6.5.0` |\n| [@astrojs/react](https://github.com/withastro/astro/tree/HEAD/packages/integrations/react) | `4.4.2` | `5.0.7` |\n| [dotenv](https://github.com/motdotla/dotenv) | `17.3.1` | `17.4.2` |\n| [drizzle-kit](https://github.com/drizzle-team/drizzle-orm) | `0.31.9` | `0.31.10` |\n| [@modelcontextprotocol/sdk](https://github.com/modelcontextprotocol/typescript-sdk) | `1.26.0` | `1.29.0` |\n| [got](https://github.com/sindresorhus/got) | `14.6.6` | `15.0.5` |\n\n\nUpdates `@eslint-react/eslint-plugin` from 2.13.0 to 5.8.12\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/Rel1cx/eslint-react/releases\"\u003e@​eslint-react/eslint-plugin's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev5.8.12 (2026-06-05)\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003ch3\u003e🪄 Improvements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003e\u003ccode\u003ejsx\u003c/code\u003e\u003c/strong\u003e: Aligned \u003ccode\u003egetChildren\u003c/code\u003e with Babel's \u003ccode\u003ebuildChildren\u003c/code\u003e and \u003ccode\u003ecleanJSXElementLiteralChild\u003c/code\u003e patterns, improving whitespace handling accuracy in \u003ccode\u003ereact-jsx/no-useless-fragment\u003c/code\u003e and \u003ccode\u003ereact-jsx/no-children-prop\u003c/code\u003e rules. Migrated child text cleanup to \u003ccode\u003e@eslint-react/jsx\u003c/code\u003e utilities and removed local \u003ccode\u003elib.ts\u003c/code\u003e helpers. (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1836\"\u003e#1836\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003e\u003ccode\u003ejsx\u003c/code\u003e\u003c/strong\u003e: Removed \u003ccode\u003eisPaddingWhitespace\u003c/code\u003e API and added whitespace boundary tests for \u003ccode\u003ereact-jsx/no-useless-fragment\u003c/code\u003e and \u003ccode\u003ereact-dom/no-dangerously-set-innerhtml-with-children\u003c/code\u003e rules. (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1837\"\u003e#1837\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003e\u003ccode\u003ejsx\u003c/code\u003e\u003c/strong\u003e: Renamed \u003ccode\u003ecleanJSXTextValue\u003c/code\u003e to \u003ccode\u003ecollapseMultilineText\u003c/code\u003e in the public API and updated \u003ccode\u003ereact-jsx/no-useless-fragment\u003c/code\u003e to use the new name. (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1838\"\u003e#1838\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e📝 Documentation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eWebsite\u003c/strong\u003e: Expanded the Brand Assets page with an icons section and formatted file names as inline code. (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1834\"\u003e#1834\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🏗️ Internal\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eWebsite\u003c/strong\u003e: Added \u003ccode\u003escripts/generate-website-icons.py\u003c/code\u003e for automated icon generation and refined logo geometry across all website assets. (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1833\"\u003e#1833\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eDeps\u003c/strong\u003e: Bumped \u003ccode\u003eimport-integrity-lint\u003c/code\u003e and \u003ccode\u003eenhanced-resolve\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eDeps\u003c/strong\u003e: Bumped \u003ccode\u003eaxios\u003c/code\u003e to \u003ccode\u003e^1.17.0\u003c/code\u003e and \u003ccode\u003eshiki\u003c/code\u003e to \u003ccode\u003e4.2.0\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eDeps\u003c/strong\u003e: Updated pnpm lockfiles for \u003ccode\u003edompurify\u003c/code\u003e and \u003ccode\u003erolldown\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003ePer-rule CHANGELOGs\u003c/strong\u003e: Updated rule-level changelogs for \u003ccode\u003eno-useless-fragment\u003c/code\u003e, \u003ccode\u003eno-children-prop\u003c/code\u003e, and \u003ccode\u003eno-dangerously-set-innerhtml-with-children\u003c/code\u003e. (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1836\"\u003e#1836\u003c/a\u003e, \u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1837\"\u003e#1837\u003c/a\u003e, \u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1838\"\u003e#1838\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/Rel1cx/eslint-react/compare/v5.8.11...v5.8.12\"\u003ehttps://github.com/Rel1cx/eslint-react/compare/v5.8.11...v5.8.12\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003eAttestation\u003c/h2\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/attestations/29936186\"\u003ehttps://github.com/Rel1cx/eslint-react/attestations/29936186\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev5.8.11 (2026-06-04)\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003ch3\u003e📝 Documentation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eWebsite\u003c/strong\u003e: Added a new \u003cstrong\u003eBrand Assets\u003c/strong\u003e page and updated Meta legal name (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1832\"\u003e#1832\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🏗️ Internal\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eReact\u003c/strong\u003e: Updated default React fallback version to \u003ccode\u003e19.2.7\u003c/code\u003e (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1827\"\u003e#1827\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eAssets\u003c/strong\u003e: Recreated logo with an open-source workflow, removing reliance on SVG assets exported by Amadine (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1831\"\u003e#1831\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eWebsite\u003c/strong\u003e: Removed \u003ccode\u003e@fontsource/iosevka-aile\u003c/code\u003e and switched to system font fallbacks.\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eDeps\u003c/strong\u003e: Bumped TypeScript to \u003ccode\u003e6.0.3\u003c/code\u003e (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1828\"\u003e#1828\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eDeps\u003c/strong\u003e: Patch bumped \u003ccode\u003e@typescript-eslint/*\u003c/code\u003e to \u003ccode\u003e8.60.1\u003c/code\u003e, \u003ccode\u003ereact\u003c/code\u003e / \u003ccode\u003ereact-dom\u003c/code\u003e to \u003ccode\u003e19.2.7\u003c/code\u003e, \u003ccode\u003enext\u003c/code\u003e to \u003ccode\u003e16.2.7\u003c/code\u003e, and \u003ccode\u003e@types/react\u003c/code\u003e to \u003ccode\u003e19.2.16\u003c/code\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/Rel1cx/eslint-react/compare/v5.8.10...v5.8.11\"\u003ehttps://github.com/Rel1cx/eslint-react/compare/v5.8.10...v5.8.11\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003eAttestation\u003c/h2\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/Rel1cx/eslint-react/blob/main/CHANGELOG.md\"\u003e@​eslint-react/eslint-plugin's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev5.8.12 (2026-06-05)\u003c/h2\u003e\n\u003ch3\u003e🪄 Improvements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003e\u003ccode\u003ejsx\u003c/code\u003e\u003c/strong\u003e: Aligned \u003ccode\u003egetChildren\u003c/code\u003e with Babel's \u003ccode\u003ebuildChildren\u003c/code\u003e and \u003ccode\u003ecleanJSXElementLiteralChild\u003c/code\u003e patterns, improving whitespace handling accuracy in \u003ccode\u003ereact-jsx/no-useless-fragment\u003c/code\u003e and \u003ccode\u003ereact-jsx/no-children-prop\u003c/code\u003e rules. Migrated child text cleanup to \u003ccode\u003e@eslint-react/jsx\u003c/code\u003e utilities and removed local \u003ccode\u003elib.ts\u003c/code\u003e helpers. (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1836\"\u003e#1836\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003e\u003ccode\u003ejsx\u003c/code\u003e\u003c/strong\u003e: Removed \u003ccode\u003eisPaddingWhitespace\u003c/code\u003e API and added whitespace boundary tests for \u003ccode\u003ereact-jsx/no-useless-fragment\u003c/code\u003e and \u003ccode\u003ereact-dom/no-dangerously-set-innerhtml-with-children\u003c/code\u003e rules. (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1837\"\u003e#1837\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003e\u003ccode\u003ejsx\u003c/code\u003e\u003c/strong\u003e: Renamed \u003ccode\u003ecleanJSXTextValue\u003c/code\u003e to \u003ccode\u003ecollapseMultilineText\u003c/code\u003e in the public API and updated \u003ccode\u003ereact-jsx/no-useless-fragment\u003c/code\u003e to use the new name. (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1838\"\u003e#1838\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e📝 Documentation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eWebsite\u003c/strong\u003e: Expanded the Brand Assets page with an icons section and formatted file names as inline code. (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1834\"\u003e#1834\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🏗️ Internal\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eWebsite\u003c/strong\u003e: Added \u003ccode\u003escripts/generate-website-icons.py\u003c/code\u003e for automated icon generation and refined logo geometry across all website assets. (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1833\"\u003e#1833\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eDeps\u003c/strong\u003e: Bumped \u003ccode\u003eimport-integrity-lint\u003c/code\u003e and \u003ccode\u003eenhanced-resolve\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eDeps\u003c/strong\u003e: Bumped \u003ccode\u003eaxios\u003c/code\u003e to \u003ccode\u003e^1.17.0\u003c/code\u003e and \u003ccode\u003eshiki\u003c/code\u003e to \u003ccode\u003e4.2.0\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eDeps\u003c/strong\u003e: Updated pnpm lockfiles for \u003ccode\u003edompurify\u003c/code\u003e and \u003ccode\u003erolldown\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003ePer-rule CHANGELOGs\u003c/strong\u003e: Updated rule-level changelogs for \u003ccode\u003eno-useless-fragment\u003c/code\u003e, \u003ccode\u003eno-children-prop\u003c/code\u003e, and \u003ccode\u003eno-dangerously-set-innerhtml-with-children\u003c/code\u003e. (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1836\"\u003e#1836\u003c/a\u003e, \u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1837\"\u003e#1837\u003c/a\u003e, \u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1838\"\u003e#1838\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/Rel1cx/eslint-react/compare/v5.8.11...v5.8.12\"\u003ehttps://github.com/Rel1cx/eslint-react/compare/v5.8.11...v5.8.12\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev5.8.11 (2026-06-04)\u003c/h2\u003e\n\u003ch3\u003e📝 Documentation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eWebsite\u003c/strong\u003e: Added a new \u003cstrong\u003eBrand Assets\u003c/strong\u003e page and updated Meta legal name (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1832\"\u003e#1832\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🏗️ Internal\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eReact\u003c/strong\u003e: Updated default React fallback version to \u003ccode\u003e19.2.7\u003c/code\u003e (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1827\"\u003e#1827\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eAssets\u003c/strong\u003e: Recreated logo with an open-source workflow, removing reliance on SVG assets exported by Amadine (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1831\"\u003e#1831\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eWebsite\u003c/strong\u003e: Removed \u003ccode\u003e@fontsource/iosevka-aile\u003c/code\u003e and switched to system font fallbacks.\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eDeps\u003c/strong\u003e: Bumped TypeScript to \u003ccode\u003e6.0.3\u003c/code\u003e (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1828\"\u003e#1828\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eDeps\u003c/strong\u003e: Patch bumped \u003ccode\u003e@typescript-eslint/*\u003c/code\u003e to \u003ccode\u003e8.60.1\u003c/code\u003e, \u003ccode\u003ereact\u003c/code\u003e / \u003ccode\u003ereact-dom\u003c/code\u003e to \u003ccode\u003e19.2.7\u003c/code\u003e, \u003ccode\u003enext\u003c/code\u003e to \u003ccode\u003e16.2.7\u003c/code\u003e, and \u003ccode\u003e@types/react\u003c/code\u003e to \u003ccode\u003e19.2.16\u003c/code\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/Rel1cx/eslint-react/compare/v5.8.10...v5.8.11\"\u003ehttps://github.com/Rel1cx/eslint-react/compare/v5.8.10...v5.8.11\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev5.8.10 (2026-06-02)\u003c/h2\u003e\n\u003ch3\u003e🐞 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003e\u003ccode\u003ereact-dom/no-unused-class-component-members\u003c/code\u003e\u003c/strong\u003e: Aligned preset details in rule documentation (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1825\"\u003e#1825\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003e\u003ccode\u003ereact-dom/no-unsafe-iframe-sandbox\u003c/code\u003e\u003c/strong\u003e, \u003cstrong\u003e\u003ccode\u003ereact-x/context-name\u003c/code\u003e\u003c/strong\u003e, \u003cstrong\u003e\u003ccode\u003ereact-x/id-name\u003c/code\u003e\u003c/strong\u003e, \u003cstrong\u003e\u003ccode\u003ereact-x/ref-name\u003c/code\u003e\u003c/strong\u003e, \u003cstrong\u003e\u003ccode\u003ereact-x/no-unnecessary-use-prefix\u003c/code\u003e\u003c/strong\u003e, \u003cstrong\u003e\u003ccode\u003ereact-x/no-string-style-prop\u003c/code\u003e\u003c/strong\u003e: Fixed missing or incorrect presets in rule documentation (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1826\"\u003e#1826\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e📝 Documentation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003e\u003ccode\u003enaming-convention\u003c/code\u003e\u003c/strong\u003e: Expanded examples and annotated Ok cases for \u003ccode\u003econtext-name\u003c/code\u003e, \u003ccode\u003eid-name\u003c/code\u003e, and \u003ccode\u003eref-name\u003c/code\u003e rules (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1819\"\u003e#1819\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eRecipes\u003c/strong\u003e: Refactored \u003ccode\u003eMyComponent\u003c/code\u003e examples to \u003ccode\u003eButton\u003c/code\u003e component in custom rules of props and function component definition recipes (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1823\"\u003e#1823\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eCommunity\u003c/strong\u003e: Added \u003ccode\u003eazat-io\u003c/code\u003e eslint-config to the community presets list.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/de7d846106872352dcbed7713541d99c03bd5bac\"\u003e\u003ccode\u003ede7d846\u003c/code\u003e\u003c/a\u003e release: 5.8.12\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/3498c34b904454c44425ed148107ef8f5184eecf\"\u003e\u003ccode\u003e3498c34\u003c/code\u003e\u003c/a\u003e release: 5.8.11\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/0ee67d6c2f890f20165ee540773b8eda37adf9cf\"\u003e\u003ccode\u003e0ee67d6\u003c/code\u003e\u003c/a\u003e docs: update Meta legal name and add brand assets page (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1832\"\u003e#1832\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/fcaca7f7d952e34324f008b243a9e2e21c35b4f4\"\u003e\u003ccode\u003efcaca7f\u003c/code\u003e\u003c/a\u003e chore: bump TypeScript to 6.0.3 (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1828\"\u003e#1828\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/4e240ae64faf857c6de9caef94b489dc59117046\"\u003e\u003ccode\u003e4e240ae\u003c/code\u003e\u003c/a\u003e chore(deps): bump patch dependencies\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/f023663af467095393b88290049a3ab5443a29d7\"\u003e\u003ccode\u003ef023663\u003c/code\u003e\u003c/a\u003e release: 5.8.10\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/ff9258dc21cd08546d20e8596d2de9e5387a6875\"\u003e\u003ccode\u003eff9258d\u003c/code\u003e\u003c/a\u003e release: 5.8.9\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/60e2514c793e3f7c06f6bb1f81ac6a20da014cfa\"\u003e\u003ccode\u003e60e2514\u003c/code\u003e\u003c/a\u003e release: 5.8.8\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/5b62a422ea43365ed2abab803a95f34cab47a335\"\u003e\u003ccode\u003e5b62a42\u003c/code\u003e\u003c/a\u003e Update baseline timestamp and bump eslint to 10.4.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/0e85aa0e12f2f1cfe0c0203908f0a4e32e4c8c06\"\u003e\u003ccode\u003e0e85aa0\u003c/code\u003e\u003c/a\u003e release: 5.8.7\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/Rel1cx/eslint-react/commits/v5.8.12/plugins/eslint-plugin\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@eslint/js` from 9.39.2 to 10.0.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/eslint/eslint/releases\"\u003e@​eslint/js's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev10.0.1\u003c/h2\u003e\n\u003ch2\u003eBug Fixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/c87d5bded54c5cf491eb04c24c9d09bbbd42c23e\"\u003e\u003ccode\u003ec87d5bd\u003c/code\u003e\u003c/a\u003e fix: update eslint (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20531\"\u003e#20531\u003c/a\u003e) (renovate[bot])\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/d84100115c14691691058f00779c94e74fca946a\"\u003e\u003ccode\u003ed841001\u003c/code\u003e\u003c/a\u003e fix: update \u003ccode\u003eminimatch\u003c/code\u003e to \u003ccode\u003e10.2.1\u003c/code\u003e to address security vulnerabilities (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20519\"\u003e#20519\u003c/a\u003e) (루밀LuMir)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/04c21475b3004904948f02049f2888b401d82c78\"\u003e\u003ccode\u003e04c2147\u003c/code\u003e\u003c/a\u003e fix: update error message for unused suppressions (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20496\"\u003e#20496\u003c/a\u003e) (fnx)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/38b089c1726feac0e31a31d47941bd99e29ce003\"\u003e\u003ccode\u003e38b089c\u003c/code\u003e\u003c/a\u003e fix: update dependency \u003ccode\u003e@​eslint/config-array\u003c/code\u003e to ^0.23.1 (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20484\"\u003e#20484\u003c/a\u003e) (renovate[bot])\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eDocumentation\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/5b3dbce50a1404a9f118afe810cefeee79388a2a\"\u003e\u003ccode\u003e5b3dbce\u003c/code\u003e\u003c/a\u003e docs: add AI acknowledgement section to templates (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20431\"\u003e#20431\u003c/a\u003e) (루밀LuMir)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/6f23076037d5879f20fb3be2ef094293b1e8d38c\"\u003e\u003ccode\u003e6f23076\u003c/code\u003e\u003c/a\u003e docs: toggle nav in no-JS mode (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20476\"\u003e#20476\u003c/a\u003e) (Tanuj Kanti)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/b69cfb32a16c5d5e9986390d484fae1d21e406f9\"\u003e\u003ccode\u003eb69cfb3\u003c/code\u003e\u003c/a\u003e docs: Update README (GitHub Actions Bot)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eChores\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/e5c281ffd038a3a7a3e5364db0b9378e0ad83020\"\u003e\u003ccode\u003ee5c281f\u003c/code\u003e\u003c/a\u003e chore: updates for v9.39.3 release (Jenkins)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/8c3832adb77cd993b4a24891900d5eeaaf093cdc\"\u003e\u003ccode\u003e8c3832a\u003c/code\u003e\u003c/a\u003e chore: update \u003ccode\u003e@​typescript-eslint/parser\u003c/code\u003e to ^8.56.0 (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20514\"\u003e#20514\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/8330d238ae6adb68bb6a1c9381e38cfedd990d94\"\u003e\u003ccode\u003e8330d23\u003c/code\u003e\u003c/a\u003e test: add tests for config-api (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20493\"\u003e#20493\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/37d6e91e88fa6a2ca6d8726679096acff21ba6cc\"\u003e\u003ccode\u003e37d6e91\u003c/code\u003e\u003c/a\u003e chore: remove eslint v10 prereleases from eslint-config-eslint deps (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20494\"\u003e#20494\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/da7cd0e79197ad16e17052eef99df141de6dbfb1\"\u003e\u003ccode\u003eda7cd0e\u003c/code\u003e\u003c/a\u003e refactor: cleanup error message templates (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20479\"\u003e#20479\u003c/a\u003e) (Francesco Trotta)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/84fb885d49ac810e79a9491276b4828b53d913e5\"\u003e\u003ccode\u003e84fb885\u003c/code\u003e\u003c/a\u003e chore: package.json update for \u003ccode\u003e@​eslint/js\u003c/code\u003e release (Jenkins)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/1f667344b57c4c09b548d94bcfac1f91b6e5c63d\"\u003e\u003ccode\u003e1f66734\u003c/code\u003e\u003c/a\u003e chore: add \u003ccode\u003eeslint\u003c/code\u003e to \u003ccode\u003epeerDependencies\u003c/code\u003e of \u003ccode\u003e@eslint/js\u003c/code\u003e (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20467\"\u003e#20467\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev10.0.0\u003c/h2\u003e\n\u003ch2\u003eBreaking Changes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/f9e54f43a5e497cdfa179338b431093245cb787b\"\u003e\u003ccode\u003ef9e54f4\u003c/code\u003e\u003c/a\u003e feat!: estimate rule-tester failure location (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20420\"\u003e#20420\u003c/a\u003e) (ST-DDT)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/a176319d8ade1a7d9b2d7fb8f038f55a2662325f\"\u003e\u003ccode\u003ea176319\u003c/code\u003e\u003c/a\u003e feat!: replace \u003ccode\u003echalk\u003c/code\u003e with \u003ccode\u003estyleText\u003c/code\u003e and add \u003ccode\u003ecolor\u003c/code\u003e to \u003ccode\u003eResultsMeta\u003c/code\u003e (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20227\"\u003e#20227\u003c/a\u003e) (루밀LuMir)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/c7046e6c1e03c4ca0eee4888a1f2eba4c6454f84\"\u003e\u003ccode\u003ec7046e6\u003c/code\u003e\u003c/a\u003e feat!: enable JSX reference tracking (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20152\"\u003e#20152\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/fa31a608901684fbcd9906d1907e66561d16e5aa\"\u003e\u003ccode\u003efa31a60\u003c/code\u003e\u003c/a\u003e feat!: add \u003ccode\u003ename\u003c/code\u003e to configs (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20015\"\u003e#20015\u003c/a\u003e) (Kirk Waiblinger)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/3383e7ec9028166cafc8ea7986c2f7498d0049f0\"\u003e\u003ccode\u003e3383e7e\u003c/code\u003e\u003c/a\u003e fix!: remove deprecated \u003ccode\u003eSourceCode\u003c/code\u003e methods (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20137\"\u003e#20137\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/501abd0e916a35554c58b7c0365537f1fa3880ce\"\u003e\u003ccode\u003e501abd0\u003c/code\u003e\u003c/a\u003e feat!: update dependency minimatch to v10 (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20246\"\u003e#20246\u003c/a\u003e) (renovate[bot])\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/ca4d3b40085de47561f89656a2207d09946ed45e\"\u003e\u003ccode\u003eca4d3b4\u003c/code\u003e\u003c/a\u003e fix!: stricter rule tester assertions for valid test cases (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20125\"\u003e#20125\u003c/a\u003e) (唯然)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/96512a66c86402fb0538cdcb6cd30b9073f6bf3b\"\u003e\u003ccode\u003e96512a6\u003c/code\u003e\u003c/a\u003e fix!: Remove deprecated rule context methods (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20086\"\u003e#20086\u003c/a\u003e) (Nicholas C. Zakas)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/c69fdacdb2e886b9d965568a397aa8220db3fe90\"\u003e\u003ccode\u003ec69fdac\u003c/code\u003e\u003c/a\u003e feat!: remove eslintrc support (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20037\"\u003e#20037\u003c/a\u003e) (Francesco Trotta)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/208b5cc34a8374ff81412b5bec2e0800eebfbd04\"\u003e\u003ccode\u003e208b5cc\u003c/code\u003e\u003c/a\u003e feat!: Use \u003ccode\u003eScopeManager#addGlobals()\u003c/code\u003e (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20132\"\u003e#20132\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/a2ee188ea7a38a0c6155f3d39e2b00e1d0f36e14\"\u003e\u003ccode\u003ea2ee188\u003c/code\u003e\u003c/a\u003e fix!: add \u003ccode\u003euniqueItems: true\u003c/code\u003e in \u003ccode\u003eno-invalid-regexp\u003c/code\u003e option (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20155\"\u003e#20155\u003c/a\u003e) (Tanuj Kanti)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/a89059dbf2832d417dd493ee81483227ec44e4ab\"\u003e\u003ccode\u003ea89059d\u003c/code\u003e\u003c/a\u003e feat!: Program range span entire source text (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20133\"\u003e#20133\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/39a6424373d915fa9de0d7b0caba9a4dc3da9b53\"\u003e\u003ccode\u003e39a6424\u003c/code\u003e\u003c/a\u003e fix!: assert 'text' is a string across all RuleFixer methods (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20082\"\u003e#20082\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/f28fbf846244e043c92b355b224d121b06140b44\"\u003e\u003ccode\u003ef28fbf8\u003c/code\u003e\u003c/a\u003e fix!: Deprecate \u003ccode\u003e\u0026quot;always\u0026quot;\u003c/code\u003e and \u003ccode\u003e\u0026quot;as-needed\u0026quot;\u003c/code\u003e options of the \u003ccode\u003eradix\u003c/code\u003e rule (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20223\"\u003e#20223\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/aa3fb2b233e929b37220be940575f42c280e0b98\"\u003e\u003ccode\u003eaa3fb2b\u003c/code\u003e\u003c/a\u003e fix!: tighten \u003ccode\u003efunc-names\u003c/code\u003e schema (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20119\"\u003e#20119\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/f6c0ed0311dcfee853367d5068c765d066e6b756\"\u003e\u003ccode\u003ef6c0ed0\u003c/code\u003e\u003c/a\u003e feat!: report \u003ccode\u003eeslint-env\u003c/code\u003e comments as errors (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20128\"\u003e#20128\u003c/a\u003e) (Francesco Trotta)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/4bf739fb533e59f7f0a66b65f7bc80be0f37d8db\"\u003e\u003ccode\u003e4bf739f\u003c/code\u003e\u003c/a\u003e fix!: remove deprecated \u003ccode\u003eLintMessage#nodeType\u003c/code\u003e and \u003ccode\u003eTestCaseError#type\u003c/code\u003e (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20096\"\u003e#20096\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/523c076866400670fb2192a3f55dbf7ad3469247\"\u003e\u003ccode\u003e523c076\u003c/code\u003e\u003c/a\u003e feat!: drop support for jiti \u0026lt; 2.2.0 (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20016\"\u003e#20016\u003c/a\u003e) (michael faith)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/454a292c95f34dad232411ddac06408e6383bb64\"\u003e\u003ccode\u003e454a292\u003c/code\u003e\u003c/a\u003e feat!: update \u003ccode\u003eeslint:recommended\u003c/code\u003e configuration (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20210\"\u003e#20210\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/4f880ee02992e1bf0e96ebaba679985e2d1295f1\"\u003e\u003ccode\u003e4f880ee\u003c/code\u003e\u003c/a\u003e feat!: remove \u003ccode\u003ev10_*\u003c/code\u003e and inactive \u003ccode\u003eunstable_*\u003c/code\u003e flags (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20225\"\u003e#20225\u003c/a\u003e) (sethamus)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/f18115c363a4ac7671a4c7f30ee13d57ebba330f\"\u003e\u003ccode\u003ef18115c\u003c/code\u003e\u003c/a\u003e feat!: \u003ccode\u003eno-shadow-restricted-names\u003c/code\u003e report \u003ccode\u003eglobalThis\u003c/code\u003e by default (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20027\"\u003e#20027\u003c/a\u003e) (sethamus)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/c6358c31fbd3937b92d89be2618ffdf5a774604e\"\u003e\u003ccode\u003ec6358c3\u003c/code\u003e\u003c/a\u003e feat!: Require Node.js \u003ccode\u003e^20.19.0 || ^22.13.0 || \u0026gt;=24\u003c/code\u003e (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20160\"\u003e#20160\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eFeatures\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/bff9091927811497dbf066b0e3b85ecb37d43822\"\u003e\u003ccode\u003ebff9091\u003c/code\u003e\u003c/a\u003e feat: handle \u003ccode\u003eArray.fromAsync\u003c/code\u003e in \u003ccode\u003earray-callback-return\u003c/code\u003e (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20457\"\u003e#20457\u003c/a\u003e) (Francesco Trotta)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/290c594bb50c439fb71bc75521ee5360daa8c222\"\u003e\u003ccode\u003e290c594\u003c/code\u003e\u003c/a\u003e feat: add \u003ccode\u003eself\u003c/code\u003e to \u003ccode\u003eno-implied-eval\u003c/code\u003e rule (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20468\"\u003e#20468\u003c/a\u003e) (sethamus)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/43677de07ebd6e14bfac40a46ad749ba783c45f2\"\u003e\u003ccode\u003e43677de\u003c/code\u003e\u003c/a\u003e feat: fix handling of function and class expression names in \u003ccode\u003eno-shadow\u003c/code\u003e (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20432\"\u003e#20432\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/84fb885d49ac810e79a9491276b4828b53d913e5\"\u003e\u003ccode\u003e84fb885\u003c/code\u003e\u003c/a\u003e chore: package.json update for \u003ccode\u003e@​eslint/js\u003c/code\u003e release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/1f667344b57c4c09b548d94bcfac1f91b6e5c63d\"\u003e\u003ccode\u003e1f66734\u003c/code\u003e\u003c/a\u003e chore: add \u003ccode\u003eeslint\u003c/code\u003e to \u003ccode\u003epeerDependencies\u003c/code\u003e of \u003ccode\u003e@eslint/js\u003c/code\u003e (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20467\"\u003e#20467\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/f3fbc2f60cbe2c718364feb8c3fc0452c0df3c56\"\u003e\u003ccode\u003ef3fbc2f\u003c/code\u003e\u003c/a\u003e chore: set \u003ccode\u003e@eslint/js\u003c/code\u003e version to 10.0.0 to skip releasing it (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20466\"\u003e#20466\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/b4b3127f8542c599ce2dea804b6582ebc40c993d\"\u003e\u003ccode\u003eb4b3127\u003c/code\u003e\u003c/a\u003e chore: package.json update for \u003ccode\u003e@​eslint/js\u003c/code\u003e release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/0b14059491d830a49b3577931f4f68fbcfce6be5\"\u003e\u003ccode\u003e0b14059\u003c/code\u003e\u003c/a\u003e chore: package.json update for \u003ccode\u003e@​eslint/js\u003c/code\u003e release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/fa31a608901684fbcd9906d1907e66561d16e5aa\"\u003e\u003ccode\u003efa31a60\u003c/code\u003e\u003c/a\u003e feat!: add \u003ccode\u003ename\u003c/code\u003e to configs (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20015\"\u003e#20015\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/1e2cad5f6fa47ed6ed89d2a29798dda926d50990\"\u003e\u003ccode\u003e1e2cad5\u003c/code\u003e\u003c/a\u003e chore: package.json update for \u003ccode\u003e@​eslint/js\u003c/code\u003e release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/454a292c95f34dad232411ddac06408e6383bb64\"\u003e\u003ccode\u003e454a292\u003c/code\u003e\u003c/a\u003e feat!: update \u003ccode\u003eeslint:recommended\u003c/code\u003e configuration (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20210\"\u003e#20210\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/c6358c31fbd3937b92d89be2618ffdf5a774604e\"\u003e\u003ccode\u003ec6358c3\u003c/code\u003e\u003c/a\u003e feat!: Require Node.js \u003ccode\u003e^20.19.0 || ^22.13.0 || \u0026gt;=24\u003c/code\u003e (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20160\"\u003e#20160\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/eslint/eslint/commits/v10.0.1/packages/js\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@typescript-eslint/eslint-plugin` from 8.56.0 to 8.60.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases\"\u003e@​typescript-eslint/eslint-plugin's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev8.60.1\u003c/h2\u003e\n\u003ch2\u003e8.60.1 (2026-06-01)\u003c/h2\u003e\n\u003ch3\u003e🩹 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e respect ECMAScript line terminators in ts-comment rules (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12352\"\u003e#12352\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-shadow] correct rule to match ESLint v10 handling (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12182\"\u003e#12182\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e❤️ Thank You\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003elumir\u003c/li\u003e\n\u003cli\u003eNevette Bailey \u003ca href=\"https://github.com/nevette-bailey\"\u003e\u003ccode\u003e@​nevette-bailey\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.60.1\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003ev8.60.0\u003c/h2\u003e\n\u003ch2\u003e8.60.0 (2026-05-25)\u003c/h2\u003e\n\u003ch3\u003e🚀 Features\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003erule-tester:\u003c/strong\u003e added updates of RuleTester from upstream (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12291\"\u003e#12291\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🩹 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eplayground TS version selector is not working (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12326\"\u003e#12326\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/issues/12325\"\u003e#12325\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e❤️ Thank You\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eEvyatar Daud \u003ca href=\"https://github.com/StyleShit\"\u003e\u003ccode\u003e@​StyleShit\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eVinccool96\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.60.0\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003ev8.59.4\u003c/h2\u003e\n\u003ch2\u003e8.59.4 (2026-05-18)\u003c/h2\u003e\n\u003ch3\u003e🩹 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-floating-promises] stack overflow when using recursive types (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12294\"\u003e#12294\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eproject-service:\u003c/strong\u003e throw error cause in \u003ccode\u003egetParsedConfigFileFromTSServer\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12321\"\u003e#12321\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003etypescript-eslint:\u003c/strong\u003e export Compatible* types from typescript-eslint to resolve pnpm TS error (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12340\"\u003e#12340\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e❤️ Thank You\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eEvyatar Daud \u003ca href=\"https://github.com/StyleShit\"\u003e\u003ccode\u003e@​StyleShit\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eKirk Waiblinger \u003ca href=\"https://github.com/kirkwaiblinger\"\u003e\u003ccode\u003e@​kirkwaiblinger\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/CHANGELOG.md\"\u003e@​typescript-eslint/eslint-plugin's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e8.60.1 (2026-06-01)\u003c/h2\u003e\n\u003ch3\u003e🩹 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-shadow] correct rule to match ESLint v10 handling (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12182\"\u003e#12182\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e respect ECMAScript line terminators in ts-comment rules (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12352\"\u003e#12352\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e❤️ Thank You\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003elumir\u003c/li\u003e\n\u003cli\u003eNevette Bailey \u003ca href=\"https://github.com/nevette-bailey\"\u003e\u003ccode\u003e@​nevette-bailey\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.60.1\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003e8.60.0 (2026-05-25)\u003c/h2\u003e\n\u003cp\u003eThis was a version bump only for eslint-plugin to align it with other projects, there were no code changes.\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.60.0\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003e8.59.4 (2026-05-18)\u003c/h2\u003e\n\u003ch3\u003e🩹 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-floating-promises] stack overflow when using recursive types (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12294\"\u003e#12294\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e❤️ Thank You\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eEvyatar Daud \u003ca href=\"https://github.com/StyleShit\"\u003e\u003ccode\u003e@​StyleShit\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.4\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003e8.59.3 (2026-05-11)\u003c/h2\u003e\n\u003cp\u003eThis was a version bump only for eslint-plugin to align it with other projects, there were no code changes.\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.3\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003e8.59.2 (2026-05-04)\u003c/h2\u003e\n\u003ch3\u003e🩹 Fixes\u003c/h3\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/4f84a697aedc436559c3ae09b5b357d98b448d68\"\u003e\u003ccode\u003e4f84a69\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.60.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/598af564db50593277ba46c7fdea3648e4425391\"\u003e\u003ccode\u003e598af56\u003c/code\u003e\u003c/a\u003e docs(eslint-plugin): clarify no-redeclare type-value collision not covered by...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/1849b530c254fb4f89d7270160f3a998e4acd964\"\u003e\u003ccode\u003e1849b53\u003c/code\u003e\u003c/a\u003e chore: typecheck using tsgo (\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin/issues/12139\"\u003e#12139\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/5341d59dd3c21fc4e2bf3bce55cf35d8f84e5216\"\u003e\u003ccode\u003e5341d59\u003c/code\u003e\u003c/a\u003e chore: fix lint issues (\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin/issues/12369\"\u003e#12369\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/f525814f01766487ab34a54d56de20ea5c4fb576\"\u003e\u003ccode\u003ef525814\u003c/code\u003e\u003c/a\u003e fix(eslint-plugin): [no-shadow] correct rule to match ESLint v10 handling (\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin/issues/1\"\u003e#1\u003c/a\u003e...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/2df540cd8bbeb3e2c56d516912f69bf63c1e9450\"\u003e\u003ccode\u003e2df540c\u003c/code\u003e\u003c/a\u003e chore(eslint-plugin): defer type checks to improve rules performance (\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin/issues/12296\"\u003e#12296\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/1ab4284789b36cf482a4d9924719162a02d54243\"\u003e\u003ccode\u003e1ab4284\u003c/code\u003e\u003c/a\u003e fix(eslint-plugin): respect ECMAScript line terminators in ts-comment rules (...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/2f49df599b2db5f2937caf975d3c63e5cdeb0ea1\"\u003e\u003ccode\u003e2f49df5\u003c/code\u003e\u003c/a\u003e docs: update references to \u003ccode\u003e@stylistic/eslint-plugin\u003c/code\u003e rules in documentation ...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/f891c29de5f3e23f3d8c59cc599d3196e54e9b58\"\u003e\u003ccode\u003ef891c29\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.60.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/ca6ca1431b6d18235297a7e29feb5d98f012dff2\"\u003e\u003ccode\u003eca6ca14\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.59.4\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commits/v8.60.1/packages/eslint-plugin\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@typescript-eslint/parser` from 8.56.0 to 8.60.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases\"\u003e@​typescript-eslint/parser's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev8.60.1\u003c/h2\u003e\n\u003ch2\u003e8.60.1 (2026-06-01)\u003c/h2\u003e\n\u003ch3\u003e🩹 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e respect ECMAScript line terminators in ts-comment rules (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12352\"\u003e#12352\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-shadow] correct rule to match ESLint v10 handling (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12182\"\u003e#12182\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e❤️ Thank You\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003elumir\u003c/li\u003e\n\u003cli\u003eNevette Bailey \u003ca href=\"https://github.com/nevette-bailey\"\u003e\u003ccode\u003e@​nevette-bailey\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.60.1\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003ev8.60.0\u003c/h2\u003e\n\u003ch2\u003e8.60.0 (2026-05-25)\u003c/h2\u003e\n\u003ch3\u003e🚀 Features\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003erule-tester:\u003c/strong\u003e added updates of RuleTester from upstream (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12291\"\u003e#12291\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🩹 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eplayground TS version selector is not working (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12326\"\u003e#12326\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/issues/12325\"\u003e#12325\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e❤️ Thank You\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eEvyatar Daud \u003ca href=\"https://github.com/StyleShit\"\u003e\u003ccode\u003e@​StyleShit\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eVinccool96\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.60.0\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003ev8.59.4\u003c/h2\u003e\n\u003ch2\u003e8.59.4 (2026-05-18)\u003c/h2\u003e\n\u003ch3\u003e🩹 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-floating-promises] stack overflow when using recursive types (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12294\"\u003e#12294\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eproject-service:\u003c/strong\u003e throw error cause in \u003ccode\u003egetParsedConfigFileFromTSServer\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12321\"\u003e#12321\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003etypescript-eslint:\u003c/strong\u003e export Compatible* types from typescript-eslint to resolve pnpm TS error (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12340\"\u003e#12340\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e❤️ Thank You\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eEvyatar Daud \u003ca href=\"https://github.com/StyleShit\"\u003e\u003ccode\u003e@​StyleShit\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eKirk Waiblinger \u003ca href=\"https://github.com/kirkwaiblinger\"\u003e\u003ccode\u003e@​kirkwaiblinger\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/parser/CHANGELOG.md\"\u003e@​typescript-eslint/parser's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e8.60.1 (2026-06-01)\u003c/h2\u003e\n\u003cp\u003eThis was a version bump only for parser to align it with other projects, there were no code changes.\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.60.1\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003e8.60.0 (2026-05-25)\u003c/h2\u003e\n\u003cp\u003eThis was a version bump only for parser to align it with other projects, there were no code changes.\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.60.0\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003e8.59.4 (2026-05-18)\u003c/h2\u003e\n\u003cp\u003eThis was a version bump only for parser to align it with other projects, there were no code changes.\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.4\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003e8.59.3 (2026-05-11)\u003c/h2\u003e\n\u003cp\u003eThis was a version bump only for parser to align it with other projects, there were no code changes.\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.3\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003e8.59.2 (2026-05-04)\u003c/h2\u003e\n\u003cp\u003eThis was a version bump only for parser to align it with other projects, there were no code changes.\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.2\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003e8.59.1 (2026-04-27)\u003c/h2\u003e\n\u003cp\u003eThis was a version bump only for parser to align it with other projects, there were no code changes.\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.1\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003e8.59.0 (2026-04-20)\u003c/h2\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/4f84a697aedc436559c3ae09b5b357d98b448d68\"\u003e\u003ccode\u003e4f84a69\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.60.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/1849b530c254fb4f89d7270160f3a998e4acd964\"\u003e\u003ccode\u003e1849b53\u003c/code\u003e\u003c/a\u003e chore: typecheck using tsgo (\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/parser/issues/12139\"\u003e#12139\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/f891c29de5f3e23f3d8c59cc599d3196e54e9b58\"\u003e\u003ccode\u003ef891c29\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.60.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/ca6ca1431b6d18235297a7e29feb5d98f012dff2\"\u003e\u003ccode\u003eca6ca14\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.59.4\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/48e13c0261e3cb1bf4f4dfaa462cdb3a56ef7383\"\u003e\u003ccode\u003e48e13c0\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.59.3\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/44f9625336841a8ee3eb01a9e02e49b1d7b12648\"\u003e\u003ccode\u003e44f9625\u003c/code\u003e\u003c/a\u003e chore(deps): update vitest monorepo to v4.1.5 (\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/parser/issues/12307\"\u003e#12307\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/2ec35f1760aade4df4c631d76d78c7ed5e136333\"\u003e\u003ccode\u003e2ec35f1\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.59.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/52457932e5507b5ca01e720a541f3f8d01e09b9d\"\u003e\u003ccode\u003e5245793\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.59.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/ea9ae4f8817873480e3501145059f63e39e8d8a1\"\u003e\u003ccode\u003eea9ae4f\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.59.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/90c2803a4c250e0343598d41e973f95e743bf4ce\"\u003e\u003ccode\u003e90c2803\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.58.2\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commits/v8.60.1/packages/parser\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `eslint` from 9.39.2 to 10.4.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/eslint/eslint/releases\"\u003eeslint's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev10.4.1\u003c/h2\u003e\n\u003ch2\u003eBug Fixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/e557467db7496220eebcbe2ac5ea6d38c12bb1ec\"\u003e\u003ccode\u003ee557467\u003c/code\u003e\u003c/a\u003e fix: update \u003ccode\u003e@eslint/plugin-kit\u003c/code\u003e version to 0.7.2 (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20930\"\u003e#20930\u003c/a\u003e) (Francesco Trotta)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/d4ce898796ca22c3b96aa70d3014cb85f4bac1cd\"\u003e\u003ccode\u003ed4ce898\u003c/code\u003e\u003c/a\u003e fix: propagate failures from delegated commands (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20917\"\u003e#20917\u003c/a\u003e) (Minh Vu)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/f4f3507460bc016b5be979c05d2969793f570cbf\"\u003e\u003ccode\u003ef4f3507\u003c/code\u003e\u003c/a\u003e fix: prefer-arrow-callback invalid autofix with newline after \u003ccode\u003easync\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20916\"\u003e#20916\u003c/a\u003e) (kuldeep kumar)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/c5bc78b37e08b9054a11f0cc2d81808bb24acb85\"\u003e\u003ccode\u003ec5bc78b\u003c/code\u003e\u003c/a\u003e fix: false positive for reference in \u003ccode\u003efinally\u003c/code\u003e block (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20655\"\u003e#20655\u003c/a\u003e) (Tanuj Kanti)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/27538c01f5df4e9306f6f4ba867b2dd6307fae59\"\u003e\u003ccode\u003e27538c0\u003c/code\u003e\u003c/a\u003e fix: add missing CodePath and CodePathSegment types (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20853\"\u003e#20853\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eDocumentation\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/61b0add61ffc52665562be7bb96f526690a78b30\"\u003e\u003ccode\u003e61b0add\u003c/code\u003e\u003c/a\u003e docs: remove deprecated rule from related rules of \u003ccode\u003emax-params\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20921\"\u003e#20921\u003c/a\u003e) (Tanuj Kanti)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/305d5b91aeac24d36fde42f75625a8f183d4ce43\"\u003e\u003ccode\u003e305d5b9\u003c/code\u003e\u003c/a\u003e docs: remove deprecated rules from related rules section (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20911\"\u003e#20911\u003c/a\u003e) (Tanuj Kanti)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/49b0202d01918b8061720d586dffd7c68047090c\"\u003e\u003ccode\u003e49b0202\u003c/code\u003e\u003c/a\u003e docs: fix \u003ccode\u003edisplay: none\u003c/code\u003e of ad (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20901\"\u003e#20901\u003c/a\u003e) (Tanuj Kanti)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/9067f9492ec998afc5b4f057a477ecf6ebd45e44\"\u003e\u003ccode\u003e9067f94\u003c/code\u003e\u003c/a\u003e docs: switch build to Node.js 24 (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20893\"\u003e#20893\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/c91b0417e3420c76807ce1fa2aea76e2de87ab86\"\u003e\u003ccode\u003ec91b041\u003c/code\u003e\u003c/a\u003e docs: Update README (GitHub Actions Bot)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/e349265cb37f3ebc837e178e48a725bb782bd870\"\u003e\u003ccode\u003ee349265\u003c/code\u003e\u003c/a\u003e docs: clarify semver strings in rule deprecation objects (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20885\"\u003e#20885\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eChores\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/b0e466b6ab47bfc7de43d8de0c315d8ee83aa584\"\u003e\u003ccode\u003eb0e466b\u003c/code\u003e\u003c/a\u003e test: add \u003ccode\u003edata\u003c/code\u003e property to invalid tests cases for rules (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20924\"\u003e#20924\u003c/a\u003e) (Tanuj Kanti)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/f78838bc4c86d487e1bcc7cede260c4467721c46\"\u003e\u003ccode\u003ef78838b\u003c/code\u003e\u003c/a\u003e test: add CodePath type coverage (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20904\"\u003e#20904\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/1daa4bd734b79a62e317d0394394a6b38cff49f9\"\u003e\u003ccode\u003e1daa4bd\u003c/code\u003e\u003c/a\u003e chore: update \u003ccode\u003eeslint-plugin-eslint-comments\u003c/code\u003e test data to latest commit (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20922\"\u003e#20922\u003c/a\u003e) (Francesco Trotta)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/002942ce988ea28b78e0a2f3b074081e638b552c\"\u003e\u003ccode\u003e002942c\u003c/code\u003e\u003c/a\u003e ci: declare contents:read on update-readme workflow (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20919\"\u003e#20919\u003c/a\u003e) (Arpit Jain)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/64bca24e7bed35bc3c864fc625cb2d89eca87d5b\"\u003e\u003ccode\u003e64bca24\u003c/code\u003e\u003c/a\u003e chore: update ecosystem plugins (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20912\"\u003e#20912\u003c/a\u003e) (ESLint Bot)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/6d7c832950d5e92499d88e504080661f888f8f56\"\u003e\u003ccode\u003e6d7c832\u003c/code\u003e\u003c/a\u003e chore: ignore fflate updates in renovate (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20908\"\u003e#20908\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/b2c86382164d87c6203b78d52068cd6a2a6ffe30\"\u003e\u003ccode\u003eb2c8638\u003c/code\u003e\u003c/a\u003e ci: bump pnpm/action-setup from 6.0.7 to 6.0.8 (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20889\"\u003e#20889\u003c/a\u003e) (dependabot[bot])\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/a9b8d7f74c50211701cfc49710fa541fd91b2aa5\"\u003e\u003ccode\u003ea9b8d7f\u003c/code\u003e\u003c/a\u003e chore: increase maxBuffer for ecosystem tests (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20881\"\u003e#20881\u003c/a\u003e) (sethamus)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/b702ead5e1ed7cb9f28238a454797662efb37396\"\u003e\u003ccode\u003eb702ead\u003c/code\u003e\u003c/a\u003e chore: update ecosystem update PR settings (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20884\"\u003e#20884\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/507f60e9a78c9a902bc8759f066ae17a1ea6cd81\"\u003e\u003ccode\u003e507f60e\u003c/code\u003e\u003c/a\u003e chore: update ecosystem plugins (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20882\"\u003e#20882\u003c/a\u003e) (ESLint Bot)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/92f5c5bb6bf3a5d167c8ee53a430833410295c6d\"\u003e\u003ccode\u003e92f5c5b\u003c/code\u003e\u003c/a\u003e test: add unit test for message-count (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20878\"\u003e#20878\u003c/a\u003e) (kuldeep kumar)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/df321080af5758b1fa25e4b9a40e26135642dd6e\"\u003e\u003ccode\u003edf32108\u003c/code\u003e\u003c/a\u003e chore: add \u003ccode\u003e@​eslint/markdown\u003c/code\u003e and typescript-eslint ecosystem tests (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20837\"\u003e#20837\u003c/a\u003e) (sethamus)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/327f91d36aa49f2a50ded931d841a16374fd875f\"\u003e\u003ccode\u003e327f91d\u003c/code\u003e\u003c/a\u003e chore: use includeIgnoreFile internally (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20876\"\u003e#20876\u003c/a\u003e) (Kirk Waiblinger)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/f0dc4bd893fb3a9f44e4ddc3ad7063ffb0beacd3\"\u003e\u003ccode\u003ef0dc4bd\u003c/code\u003e\u003c/a\u003e chore: pin fflate@0.8.2 (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20877\"\u003e#20877\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/0f4bd257a67a082b756de746d9e0c4842ab764ca\"\u003e\u003ccode\u003e0f4bd25\u003c/code\u003e\u003c/a\u003e ci: run Discord alert for ecosystem test failures (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20873\"\u003e#20873\u003c/a\u003e) (Copilot)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev10.4.0\u003c/h2\u003e\n\u003ch2\u003eFeatures\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/1a45ec596af1dd5f880e6874cb8f24dafb6a7ecf\"\u003e\u003ccode\u003e1a45ec5\u003c/code\u003e\u003c/a\u003e feat: check sequence expressions in \u003ccode\u003efor-direction\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20701\"\u003e#20701\u003c/a\u003e) (kuldeep kumar)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/450040bd89b989b3531824c6be45feb5fe3d936b\"\u003e\u003ccode\u003e450040b\u003c/code\u003e\u003c/a\u003e feat: add \u003ccode\u003eincludeIgnoreFile()\u003c/code\u003e to \u003ccode\u003eeslint/config\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20735\"\u003e#20735\u003c/a\u003e) (Kirk Waiblinger)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eBug Fixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/544c0c3da589166ad8e5d634f35d3d06701c57be\"\u003e\u003ccode\u003e544c0c3\u003c/code\u003e\u003c/a\u003e fix: escape code path DOT labels in debug output (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20866\"\u003e#20866\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/6799431203f2579632d0870f98ba132067f4040c\"\u003e\u003ccode\u003e6799431\u003c/code\u003e\u003c/a\u003e fix: update dependency \u003ccode\u003e@​eslint/config-helpers\u003c/code\u003e to ^0.6.0 (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20850\"\u003e#20850\u003c/a\u003e) (renovate[bot])\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/f078fef5005dceb14fc162aab7c7200e027688dd\"\u003e\u003ccode\u003ef078fef\u003c/code\u003e\u003c/a\u003e fix: handle non-array deprecated rule replacements (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20825\"\u003e#20825\u003c/a\u003e) (xbinaryx)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eDocumentation\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/7e52a7151fb92eec0e0f67fe4e5ddbd1ccce796f\"\u003e\u003ccode\u003e7e52a71\u003c/code\u003e\u003c/a\u003e docs: add mention of \u003ccode\u003e@eslint-react/eslint-plugin\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20869\"\u003e#20869\u003c/a\u003e) (Pavel)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/db3468ba746407d7f286f18f7ea9db6df0e3bc08\"\u003e\u003ccode\u003edb3468b\u003c/code\u003e\u003c/a\u003e docs: tweak wording around ambiguous CJS-vs-ESM config (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20865\"\u003e#20865\u003c/a\u003e) (Kirk Waiblinger)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/90846643ec6e97d447ae0d831fabe6d17b0a998a\"\u003e\u003ccode\u003e9084664\u003c/code\u003e\u003c/a\u003e docs: Update README (GitHub Actions Bot)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/9cc73875046e3c4b8313644cbb1e99e26b36bd3f\"\u003e\u003ccode\u003e9cc7387\u003c/code\u003e\u003c/a\u003e docs: Update README (GitHub Actions Bot)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/3d7b5484407403817aa9071a394d336d8ea96eb5\"\u003e\u003ccode\u003e3d7b548\u003c/code\u003e\u003c/a\u003e docs: Update README (GitHub Actions Bot)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/191ec3c0a3f94ce0f110df761f0b2b8949011ccb\"\u003e\u003ccode\u003e191ec3c\u003c/code\u003e\u003c/a\u003e docs: Update README (GitHub Actions Bot)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/4a3d15a99c452c4db2fd56b577fa7597e98ab0c2\"\u003e\u003ccode\u003e4a3d15a\u003c/code\u003e\u003c/a\u003e 10.4.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/43e7e2bdc5c6cacc535446b7d23c10f780384ba8\"\u003e\u003ccode\u003e43e7e2b\u003c/code\u003e\u003c/a\u003e Build: changelog update for 10.4.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/e557467db7496220eebcbe2ac5ea6d38c12bb1ec\"\u003e\u003ccode\u003ee557467\u003c/code\u003e\u003c/a\u003e fix: update \u003ccode\u003e@eslint/plugin-kit\u003c/code\u003e version to 0.7.2 (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20930\"\u003e#20930\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/b0e466b6ab47bfc7de43d8de0c315d8ee83aa584\"\u003e\u003ccode\u003eb0e466b\u003c/code\u003e\u003c/a\u003e test: add \u003ccode\u003edata\u003c/code\u003e property to invalid tests cases for rules (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20924\"\u003e#20924\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/d4ce898796ca22c3b96aa70d3014cb85f4bac1cd\"\u003e\u003ccode\u003ed4ce898\u003c/code\u003e\u003c/a\u003e fix: propagate failures from delegated commands (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20917\"\u003e#20917\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/f4f3507460bc016b5be979c05d2969793f570cbf\"\u003e\u003ccode\u003ef4f3507\u003c/code\u003e\u003c/a\u003e fix: prefer-arrow-callback invalid autofix with newline after \u003ccode\u003easync\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20916\"\u003e#20916\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/f78838bc4c86d487e1bcc7cede260c4467721c46\"\u003e\u003ccode\u003ef78838b\u003c/code\u003e\u003c/a\u003e test: add CodePath type coverage (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20904\"\u003e#20904\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/61b0add61ffc52665562be7bb96f526690a78b30\"\u003e\u003ccode\u003e61b0add\u003c/code\u003e\u003c/a\u003e docs: remove deprecated rule from related rules of \u003ccode\u003emax-params\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20921\"\u003e#20921\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/1daa4bd734b79a62e317d0394394a6b38cff49f9\"\u003e\u003ccode\u003e1daa4bd\u003c/code\u003e\u003c/a\u003e chore: update \u003ccode\u003eeslint-plugin-eslint-comments\u003c/code\u003e test data to latest commit (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20\"\u003e#20\u003c/a\u003e...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/002942ce988ea28b78e0a2f3b074081e638b552c\"\u003e\u003ccode\u003e002942c\u003c/code\u003e\u003c/a\u003e ci: declare contents:read on update-readme workflow (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20919\"\u003e#20919\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/eslint/eslint/compare/v9.39.2...v10.4.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `eslint-import-resolver-typescript` from 4.4.4 to 4.4.5\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/import-js/eslint-import-resolver-typescript/releases\"\u003eeslint-import-resolver-typescript's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev4.4.5\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/import-js/eslint-import-resolver-typescript/pull/473\"\u003e#473\u003c/a\u003e \u003ca href=\"https://github.com/import-js/eslint-import-resolver-typescript/commit/32c61abccf26bd2a2267f2e0e67d82e6f88d149a\"\u003e\u003ccode\u003e32c61ab\u003c/code\u003e\u003c/a\u003e Thanks \u003ca href=\"https://github.com/leey0818\"\u003e\u003ccode\u003e@​leey0818\u003c/code\u003e\u003c/a\u003e! - fix: check tsconfig matching before using resolver\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/import-js/eslint-import-resolver-typescript/blob/master/CHANGELOG.md\"\u003eeslint-import-resolver-typescript's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e4.4.5\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/import-js/eslint-import-resolver-typescript/pull/473\"\u003e#473\u003c/a\u003e \u003ca href=\"https://github.com/import-js/eslint-import-resolver-typescript/commit/32c61abccf26bd2a2267f2e0e67d82e6f88d149a\"\u003e\u003ccode\u003e32c61ab\u003c/code\u003e\u003c/a\u003e Thanks \u003ca href=\"https://github.com/leey0818\"\u003e\u003ccode\u003e@​leey0818\u003c/code\u003e\u003c/a\u003e! - fix: check tsconfig matching before using resolver\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/import-js/eslint-...\n\n_Description has been truncated_","html_url":"https://github.com/ThatGuySam/agentready/pull/2","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/ThatGuySam%2Fagentready/issues/2","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/2/packages"}},{"old_version":"5.1.3","new_version":"5.3.0","update_type":"minor","path":null,"pr_created_at":"2026-06-01T09:15:20.000Z","version_change":"5.1.3 → 5.3.0","issue":{"uuid":"4561835467","node_id":"PR_kwDOSttBWc7hS_u1","number":1,"state":"closed","title":"deps(deps): bump the all-dependencies group with 69 updates","user":"dependabot[bot]","labels":[],"assignees":[],"locked":false,"comments_count":2,"pull_request":true,"closed_at":"2026-06-08T04:30:01.000Z","author_association":null,"state_reason":null,"created_at":"2026-06-01T09:15:20.000Z","updated_at":"2026-06-08T04:30:02.000Z","time_to_close":587681,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"deps(deps): bump","group_name":"all-dependencies","update_count":69,"packages":[{"name":"@eslint-react/eslint-plugin","old_version":"2.13.0","new_version":"5.8.9","repository_url":"https://github.com/Rel1cx/eslint-react"},{"name":"@eslint/js","old_version":"9.39.2","new_version":"10.0.1","repository_url":"https://github.com/eslint/eslint"},{"name":"@typescript-eslint/eslint-plugin","old_version":"8.56.0","new_version":"8.60.0","repository_url":"https://github.com/typescript-eslint/typescript-eslint"},{"name":"@typescript-eslint/parser","old_version":"8.56.0","new_version":"8.60.0","repository_url":"https://github.com/typescript-eslint/typescript-eslint"},{"name":"eslint","old_version":"9.39.2","new_version":"10.4.1","repository_url":"https://github.com/eslint/eslint"},{"name":"eslint-import-resolver-typescript","old_version":"4.4.4","new_version":"4.4.5","repository_url":"https://github.com/import-js/eslint-import-resolver-typescript"},{"name":"eslint-plugin-react-hooks","old_version":"7.0.1","new_version":"7.1.1","repository_url":"https://github.com/facebook/react"},{"name":"globals","old_version":"17.3.0","new_version":"17.6.0","repository_url":"https://github.com/sindresorhus/globals"},{"name":"graphql","old_version":"16.12.0","new_version":"16.14.0","repository_url":"https://github.com/graphql/graphql-js"},{"name":"happy-dom","old_version":"20.6.2","new_version":"20.9.0","repository_url":"https://github.com/capricorn86/happy-dom"},{"name":"jiti","old_version":"2.6.1","new_version":"2.7.0","repository_url":"https://github.com/unjs/jiti"},{"name":"lint-staged","old_version":"16.2.7","new_version":"17.0.7","repository_url":"https://github.com/lint-staged/lint-staged"},{"name":"mermaid","old_version":"11.12.3","new_version":"11.15.0","repository_url":"https://github.com/mermaid-js/mermaid"},{"name":"prettier","old_version":"3.8.1","new_version":"3.8.3","repository_url":"https://github.com/prettier/prettier"},{"name":"react","old_version":"19.2.4","new_version":"19.2.6","repository_url":"https://github.com/facebook/react"},{"name":"@types/react","old_version":"19.2.14","new_version":"19.2.15","repository_url":"https://github.com/DefinitelyTyped/DefinitelyTyped"},{"name":"typescript","old_version":"5.9.3","new_version":"6.0.3","repository_url":"https://github.com/microsoft/TypeScript"},{"name":"typescript-eslint","old_version":"8.56.0","new_version":"8.60.0","repository_url":"https://github.com/typescript-eslint/typescript-eslint"},{"name":"typescript-language-server","old_version":"5.1.3","new_version":"5.3.0","repository_url":"https://github.com/typescript-language-server/typescript-language-server"},{"name":"vite","old_version":"7.3.1","new_version":"8.0.15","repository_url":"https://github.com/vitejs/vite"},{"name":"vitepress","old_version":"2.0.0-alpha.16","new_version":"2.0.0-alpha.17","repository_url":"https://github.com/vuejs/vitepress"},{"name":"vitepress-plugin-llms","old_version":"1.11.0","new_version":"1.13.1","repository_url":"https://github.com/okineadev/vitepress-plugin-llms"},{"name":"vitest","old_version":"4.0.18","new_version":"4.1.8","repository_url":"https://github.com/vitest-dev/vitest"},{"name":"wrangler","old_version":"4.66.0","new_version":"4.95.0","repository_url":"https://github.com/cloudflare/workers-sdk"},{"name":"@ai-sdk/openai","old_version":"3.0.29","new_version":"3.0.67","repository_url":"https://github.com/vercel/ai"},{"name":"@better-auth/passkey","old_version":"1.4.18","new_version":"1.6.13","repository_url":"https://github.com/better-auth/better-auth"},{"name":"@better-auth/stripe","old_version":"1.4.18","new_version":"1.6.13","repository_url":"https://github.com/better-auth/better-auth"},{"name":"@trpc/server","old_version":"11.10.0","new_version":"11.17.0","repository_url":"https://github.com/trpc/trpc"},{"name":"ai","old_version":"6.0.91","new_version":"6.0.193","repository_url":"https://github.com/vercel/ai"},{"name":"better-auth","old_version":"1.4.18","new_version":"1.6.13","repository_url":"https://github.com/better-auth/better-auth"},{"name":"drizzle-orm","old_version":"0.45.1","new_version":"0.45.2","repository_url":"https://github.com/drizzle-team/drizzle-orm"},{"name":"postgres","old_version":"3.4.8","new_version":"3.4.9","repository_url":"https://github.com/porsager/postgres"},{"name":"resend","old_version":"6.9.2","new_version":"6.12.4","repository_url":"https://github.com/resend/resend-node"},{"name":"stripe","old_version":"20.3.1","new_version":"22.2.0","repository_url":"https://github.com/stripe/stripe-node"},{"name":"@cloudflare/workers-types","old_version":"4.20260218.0","new_version":"4.20260601.1","repository_url":"https://github.com/cloudflare/workerd"},{"name":"@types/bun","old_version":"1.3.9","new_version":"1.3.14","repository_url":"https://github.com/DefinitelyTyped/DefinitelyTyped"},{"name":"hono","old_version":"4.11.10","new_version":"4.12.23","repository_url":"https://github.com/honojs/hono"},{"name":"zod","old_version":"4.3.6","new_version":"4.4.3","repository_url":"https://github.com/colinhacks/zod"},{"name":"@tanstack/react-query","old_version":"5.90.21","new_version":"5.100.14","repository_url":"https://github.com/TanStack/query"},{"name":"@tanstack/react-router","old_version":"1.161.1","new_version":"1.170.10","repository_url":"https://github.com/TanStack/router"},{"name":"@trpc/client","old_version":"11.10.0","new_version":"11.17.0","repository_url":"https://github.com/trpc/trpc"},{"name":"@trpc/tanstack-react-query","old_version":"11.10.0","new_version":"11.17.0","repository_url":"https://github.com/trpc/trpc"},{"name":"jotai","old_version":"2.17.1","new_version":"2.20.0","repository_url":"https://github.com/pmndrs/jotai"},{"name":"jotai-effect","old_version":"2.2.3","new_version":"2.3.1","repository_url":"https://github.com/jotaijs/jotai-effect"},{"name":"lucide-react","old_version":"0.574.0","new_version":"1.17.0","repository_url":"https://github.com/lucide-icons/lucide"},{"name":"react-dom","old_version":"19.2.4","new_version":"19.2.6","repository_url":"https://github.com/facebook/react"},{"name":"react-error-boundary","old_version":"6.1.1","new_version":"6.1.2","repository_url":"https://github.com/bvaughn/react-error-boundary"},{"name":"tailwind-merge","old_version":"3.4.1","new_version":"3.6.0","repository_url":"https://github.com/dcastil/tailwind-merge"},{"name":"@tailwindcss/postcss","old_version":"4.2.0","new_version":"4.3.0","repository_url":"https://github.com/tailwindlabs/tailwindcss"},{"name":"@tanstack/react-query-devtools","old_version":"5.91.3","new_version":"5.100.14","repository_url":"https://github.com/TanStack/query"},{"name":"@tanstack/react-router-devtools","old_version":"1.161.1","new_version":"1.167.0","repository_url":"https://github.com/TanStack/router"},{"name":"@tanstack/router-plugin","old_version":"1.161.1","new_version":"1.168.13","repository_url":"https://github.com/TanStack/router"},{"name":"@types/node","old_version":"25.2.3","new_version":"25.9.1","repository_url":"https://github.com/DefinitelyTyped/DefinitelyTyped"},{"name":"@vitejs/plugin-react","old_version":"5.1.4","new_version":"6.0.2","repository_url":"https://github.com/vitejs/vite-plugin-react"},{"name":"@vitejs/plugin-react-swc","old_version":"4.2.3","new_version":"4.3.1","repository_url":"https://github.com/vitejs/vite-plugin-react"},{"name":"autoprefixer","old_version":"10.4.24","new_version":"10.5.0","repository_url":"https://github.com/postcss/autoprefixer"},{"name":"globby","old_version":"16.1.1","new_version":"16.2.0","repository_url":"https://github.com/sindresorhus/globby"},{"name":"postcss","old_version":"8.5.6","new_version":"8.5.15","repository_url":"https://github.com/postcss/postcss"},{"name":"tailwindcss","old_version":"4.2.0","new_version":"4.3.0","repository_url":"https://github.com/tailwindlabs/tailwindcss"},{"name":"@react-email/components","old_version":"1.0.8","new_version":"1.0.12","repository_url":"https://github.com/resend/react-email"},{"name":"@react-email/render","old_version":"2.0.4","new_version":"2.0.8","repository_url":"https://github.com/resend/react-email"},{"name":"@react-email/preview-server","old_version":"5.2.8","new_version":"5.2.10","repository_url":"https://github.com/resend/react-email"},{"name":"react-email","old_version":"5.2.8","new_version":"6.5.0","repository_url":"https://github.com/resend/react-email"},{"name":"@astrojs/react","old_version":"4.4.2","new_version":"5.0.6","repository_url":"https://github.com/withastro/astro"},{"name":"astro","old_version":"5.17.2","new_version":"6.4.2","repository_url":"https://github.com/withastro/astro"},{"name":"dotenv","old_version":"17.3.1","new_version":"17.4.2","repository_url":"https://github.com/motdotla/dotenv"},{"name":"drizzle-kit","old_version":"0.31.9","new_version":"0.31.10","repository_url":"https://github.com/drizzle-team/drizzle-orm"},{"name":"@modelcontextprotocol/sdk","old_version":"1.26.0","new_version":"1.29.0","repository_url":"https://github.com/modelcontextprotocol/typescript-sdk"},{"name":"got","old_version":"14.6.6","new_version":"15.0.5","repository_url":"https://github.com/sindresorhus/got"}],"path":null,"ecosystem":"npm"},"body":"Bumps the all-dependencies group with 69 updates:\n\n| Package | From | To |\n| --- | --- | --- |\n| [@eslint-react/eslint-plugin](https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin) | `2.13.0` | `5.8.9` |\n| [@eslint/js](https://github.com/eslint/eslint/tree/HEAD/packages/js) | `9.39.2` | `10.0.1` |\n| [@typescript-eslint/eslint-plugin](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin) | `8.56.0` | `8.60.0` |\n| [@typescript-eslint/parser](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/parser) | `8.56.0` | `8.60.0` |\n| [eslint](https://github.com/eslint/eslint) | `9.39.2` | `10.4.1` |\n| [eslint-import-resolver-typescript](https://github.com/import-js/eslint-import-resolver-typescript) | `4.4.4` | `4.4.5` |\n| [eslint-plugin-react-hooks](https://github.com/facebook/react/tree/HEAD/packages/eslint-plugin-react-hooks) | `7.0.1` | `7.1.1` |\n| [globals](https://github.com/sindresorhus/globals) | `17.3.0` | `17.6.0` |\n| [graphql](https://github.com/graphql/graphql-js) | `16.12.0` | `16.14.0` |\n| [happy-dom](https://github.com/capricorn86/happy-dom) | `20.6.2` | `20.9.0` |\n| [jiti](https://github.com/unjs/jiti) | `2.6.1` | `2.7.0` |\n| [lint-staged](https://github.com/lint-staged/lint-staged) | `16.2.7` | `17.0.7` |\n| [mermaid](https://github.com/mermaid-js/mermaid) | `11.12.3` | `11.15.0` |\n| [prettier](https://github.com/prettier/prettier) | `3.8.1` | `3.8.3` |\n| [react](https://github.com/facebook/react/tree/HEAD/packages/react) | `19.2.4` | `19.2.6` |\n| [@types/react](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/react) | `19.2.14` | `19.2.15` |\n| [typescript](https://github.com/microsoft/TypeScript) | `5.9.3` | `6.0.3` |\n| [typescript-eslint](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/typescript-eslint) | `8.56.0` | `8.60.0` |\n| [typescript-language-server](https://github.com/typescript-language-server/typescript-language-server) | `5.1.3` | `5.3.0` |\n| [vite](https://github.com/vitejs/vite/tree/HEAD/packages/vite) | `7.3.1` | `8.0.15` |\n| [vitepress](https://github.com/vuejs/vitepress) | `2.0.0-alpha.16` | `2.0.0-alpha.17` |\n| [vitepress-plugin-llms](https://github.com/okineadev/vitepress-plugin-llms) | `1.11.0` | `1.13.1` |\n| [vitest](https://github.com/vitest-dev/vitest/tree/HEAD/packages/vitest) | `4.0.18` | `4.1.8` |\n| [wrangler](https://github.com/cloudflare/workers-sdk/tree/HEAD/packages/wrangler) | `4.66.0` | `4.95.0` |\n| [@ai-sdk/openai](https://github.com/vercel/ai/tree/HEAD/packages/openai) | `3.0.29` | `3.0.67` |\n| [@better-auth/passkey](https://github.com/better-auth/better-auth/tree/HEAD/packages/passkey) | `1.4.18` | `1.6.13` |\n| [@better-auth/stripe](https://github.com/better-auth/better-auth/tree/HEAD/packages/stripe) | `1.4.18` | `1.6.13` |\n| [@trpc/server](https://github.com/trpc/trpc/tree/HEAD/packages/server) | `11.10.0` | `11.17.0` |\n| [ai](https://github.com/vercel/ai/tree/HEAD/packages/ai) | `6.0.91` | `6.0.193` |\n| [better-auth](https://github.com/better-auth/better-auth/tree/HEAD/packages/better-auth) | `1.4.18` | `1.6.13` |\n| [drizzle-orm](https://github.com/drizzle-team/drizzle-orm) | `0.45.1` | `0.45.2` |\n| [postgres](https://github.com/porsager/postgres) | `3.4.8` | `3.4.9` |\n| [resend](https://github.com/resend/resend-node) | `6.9.2` | `6.12.4` |\n| [stripe](https://github.com/stripe/stripe-node) | `20.3.1` | `22.2.0` |\n| [@cloudflare/workers-types](https://github.com/cloudflare/workerd) | `4.20260218.0` | `4.20260601.1` |\n| [@types/bun](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/bun) | `1.3.9` | `1.3.14` |\n| [hono](https://github.com/honojs/hono) | `4.11.10` | `4.12.23` |\n| [zod](https://github.com/colinhacks/zod) | `4.3.6` | `4.4.3` |\n| [@tanstack/react-query](https://github.com/TanStack/query/tree/HEAD/packages/react-query) | `5.90.21` | `5.100.14` |\n| [@tanstack/react-router](https://github.com/TanStack/router/tree/HEAD/packages/react-router) | `1.161.1` | `1.170.10` |\n| [@trpc/client](https://github.com/trpc/trpc/tree/HEAD/packages/client) | `11.10.0` | `11.17.0` |\n| [@trpc/tanstack-react-query](https://github.com/trpc/trpc/tree/HEAD/packages/tanstack-react-query) | `11.10.0` | `11.17.0` |\n| [jotai](https://github.com/pmndrs/jotai) | `2.17.1` | `2.20.0` |\n| [jotai-effect](https://github.com/jotaijs/jotai-effect) | `2.2.3` | `2.3.1` |\n| [lucide-react](https://github.com/lucide-icons/lucide/tree/HEAD/packages/lucide-react) | `0.574.0` | `1.17.0` |\n| [react-dom](https://github.com/facebook/react/tree/HEAD/packages/react-dom) | `19.2.4` | `19.2.6` |\n| [react-error-boundary](https://github.com/bvaughn/react-error-boundary) | `6.1.1` | `6.1.2` |\n| [tailwind-merge](https://github.com/dcastil/tailwind-merge) | `3.4.1` | `3.6.0` |\n| [@tailwindcss/postcss](https://github.com/tailwindlabs/tailwindcss/tree/HEAD/packages/@tailwindcss-postcss) | `4.2.0` | `4.3.0` |\n| [@tanstack/react-query-devtools](https://github.com/TanStack/query/tree/HEAD/packages/react-query-devtools) | `5.91.3` | `5.100.14` |\n| [@tanstack/react-router-devtools](https://github.com/TanStack/router/tree/HEAD/packages/react-router-devtools) | `1.161.1` | `1.167.0` |\n| [@tanstack/router-plugin](https://github.com/TanStack/router/tree/HEAD/packages/router-plugin) | `1.161.1` | `1.168.13` |\n| [@types/node](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/node) | `25.2.3` | `25.9.1` |\n| [@vitejs/plugin-react](https://github.com/vitejs/vite-plugin-react/tree/HEAD/packages/plugin-react) | `5.1.4` | `6.0.2` |\n| [@vitejs/plugin-react-swc](https://github.com/vitejs/vite-plugin-react/tree/HEAD/packages/plugin-react-swc) | `4.2.3` | `4.3.1` |\n| [autoprefixer](https://github.com/postcss/autoprefixer) | `10.4.24` | `10.5.0` |\n| [globby](https://github.com/sindresorhus/globby) | `16.1.1` | `16.2.0` |\n| [postcss](https://github.com/postcss/postcss) | `8.5.6` | `8.5.15` |\n| [tailwindcss](https://github.com/tailwindlabs/tailwindcss/tree/HEAD/packages/tailwindcss) | `4.2.0` | `4.3.0` |\n| [@react-email/components](https://github.com/resend/react-email/tree/HEAD/packages/components) | `1.0.8` | `1.0.12` |\n| [@react-email/render](https://github.com/resend/react-email/tree/HEAD/packages/render) | `2.0.4` | `2.0.8` |\n| [@react-email/preview-server](https://github.com/resend/react-email/tree/HEAD/packages/preview-server) | `5.2.8` | `5.2.10` |\n| [react-email](https://github.com/resend/react-email/tree/HEAD/packages/react-email) | `5.2.8` | `6.5.0` |\n| [@astrojs/react](https://github.com/withastro/astro/tree/HEAD/packages/integrations/react) | `4.4.2` | `5.0.6` |\n| [astro](https://github.com/withastro/astro/tree/HEAD/packages/astro) | `5.17.2` | `6.4.2` |\n| [dotenv](https://github.com/motdotla/dotenv) | `17.3.1` | `17.4.2` |\n| [drizzle-kit](https://github.com/drizzle-team/drizzle-orm) | `0.31.9` | `0.31.10` |\n| [@modelcontextprotocol/sdk](https://github.com/modelcontextprotocol/typescript-sdk) | `1.26.0` | `1.29.0` |\n| [got](https://github.com/sindresorhus/got) | `14.6.6` | `15.0.5` |\n\nUpdates `@eslint-react/eslint-plugin` from 2.13.0 to 5.8.9\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/Rel1cx/eslint-react/releases\"\u003e@​eslint-react/eslint-plugin's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev5.8.9 (2026-06-01)\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003ch3\u003e🐞 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003e\u003ccode\u003ereact-x/no-direct-mutation-state\u003c/code\u003e\u003c/strong\u003e: Detect nested state mutations and member expressions in assignment expressions (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1818\"\u003e#1818\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e📝 Documentation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpdated contributing guide and monorepo structure documentation.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🏗️ Internal\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eExamples\u003c/strong\u003e: Removed \u003ccode\u003e.vscode\u003c/code\u003e directories from all examples, added missing \u003ccode\u003eengines.node\u003c/code\u003e to Preact examples, cleaned up redundant \u003ccode\u003e.config/*.ts\u003c/code\u003e from \u003ccode\u003etsconfig.node.json\u003c/code\u003e, and updated \u003ccode\u003e.gitignore\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eWebsite\u003c/strong\u003e: Cleaned up configs and docs.\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eDeps\u003c/strong\u003e: Patch bumped \u003ccode\u003eeslint\u003c/code\u003e, \u003ccode\u003etinyglobby\u003c/code\u003e, and \u003ccode\u003etsdown\u003c/code\u003e across workspace packages; added \u003ccode\u003e@fontsource/iosevka-aile\u003c/code\u003e to the website; reordered CSS imports in \u003ccode\u003elayout.tsx\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003eUpdated \u003ccode\u003e.sentrux\u003c/code\u003e baseline timestamp.\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/Rel1cx/eslint-react/compare/v5.8.8...v5.8.9\"\u003ehttps://github.com/Rel1cx/eslint-react/compare/v5.8.8...v5.8.9\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003eAttestation\u003c/h2\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/attestations/29343471\"\u003ehttps://github.com/Rel1cx/eslint-react/attestations/29343471\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev5.8.8 (2026-05-31)\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003ch3\u003e📝 Documentation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003e\u003ccode\u003ekit\u003c/code\u003e\u003c/strong\u003e: Added \u003ccode\u003eis.APICall\u003c/code\u003e callout to the Kit documentation (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1813\"\u003e#1813\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003e\u003ccode\u003ejsx\u003c/code\u003e\u003c/strong\u003e: Updated \u003ccode\u003egetChildren\u003c/code\u003e and \u003ccode\u003ehasChildren\u003c/code\u003e API documentation to reflect empty string children behavior.\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eWebsite\u003c/strong\u003e: Reworked status emoji indicators across docs and examples (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1816\"\u003e#1816\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eWebsite\u003c/strong\u003e: Added ℞ prefix to recipe titles and cleaned up See Also sections.\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eWebsite\u003c/strong\u003e: Removed the \u003ccode\u003ecustom-rules-of-children\u003c/code\u003e recipe and cross-linked the remaining recipes.\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eWebsite\u003c/strong\u003e: Added redirects for moved rule documentation.\u003c/li\u003e\n\u003cli\u003eCleaned up the \u0026quot;Community Maintained Presets that use ESLint React\u0026quot; documentation page.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🏗️ Internal\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003e\u003ccode\u003ereact-x/no-misused-capture-owner-stack\u003c/code\u003e\u003c/strong\u003e: Added edge-case tests for \u003ccode\u003ecaptureOwnerStack\u003c/code\u003e (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1813\"\u003e#1813\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eWebsite\u003c/strong\u003e: Updated fonts and dropped the \u003ccode\u003edata-theme\u003c/code\u003e attribute.\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eWebsite\u003c/strong\u003e: Updated theme configuration (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1815\"\u003e#1815\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eMonorepo\u003c/strong\u003e: Aligned the \u003ccode\u003etsdown\u003c/code\u003e version in \u003ccode\u003e@local/configs\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003epnpm-workspace\u003c/strong\u003e: Enabled \u003ccode\u003etrustPolicy: \u0026quot;no-downgrade\u0026quot;\u003c/code\u003e and added \u003ccode\u003eminimumReleaseAge: 1440\u003c/code\u003e (1 day).\u003c/li\u003e\n\u003cli\u003eBumped \u003ccode\u003eeslint\u003c/code\u003e to \u003ccode\u003e10.4.1\u003c/code\u003e across workspace packages.\u003c/li\u003e\n\u003cli\u003eBumped \u003ccode\u003epnpm\u003c/code\u003e to \u003ccode\u003e11.5.0\u003c/code\u003e and refreshed the lockfile.\u003c/li\u003e\n\u003cli\u003eBumped \u003ccode\u003efumadocs\u003c/code\u003e packages and \u003ccode\u003etinyexec\u003c/code\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/Rel1cx/eslint-react/blob/main/CHANGELOG.md\"\u003e@​eslint-react/eslint-plugin's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev5.8.9 (2026-06-01)\u003c/h2\u003e\n\u003ch3\u003e🐞 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003e\u003ccode\u003ereact-x/no-direct-mutation-state\u003c/code\u003e\u003c/strong\u003e: Detect nested state mutations and member expressions in assignment expressions (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1818\"\u003e#1818\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e📝 Documentation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpdated contributing guide and monorepo structure documentation.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🏗️ Internal\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eExamples\u003c/strong\u003e: Removed \u003ccode\u003e.vscode\u003c/code\u003e directories from all examples, added missing \u003ccode\u003eengines.node\u003c/code\u003e to Preact examples, cleaned up redundant \u003ccode\u003e.config/*.ts\u003c/code\u003e from \u003ccode\u003etsconfig.node.json\u003c/code\u003e, and updated \u003ccode\u003e.gitignore\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eWebsite\u003c/strong\u003e: Cleaned up configs and docs.\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eDeps\u003c/strong\u003e: Patch bumped \u003ccode\u003eeslint\u003c/code\u003e, \u003ccode\u003etinyglobby\u003c/code\u003e, and \u003ccode\u003etsdown\u003c/code\u003e across workspace packages; added \u003ccode\u003e@fontsource/iosevka-aile\u003c/code\u003e to the website; reordered CSS imports in \u003ccode\u003elayout.tsx\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003eUpdated \u003ccode\u003e.sentrux\u003c/code\u003e baseline timestamp.\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/Rel1cx/eslint-react/compare/v5.8.8...v5.8.9\"\u003ehttps://github.com/Rel1cx/eslint-react/compare/v5.8.8...v5.8.9\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev5.8.8 (2026-05-31)\u003c/h2\u003e\n\u003ch3\u003e📝 Documentation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003e\u003ccode\u003ekit\u003c/code\u003e\u003c/strong\u003e: Added \u003ccode\u003eis.APICall\u003c/code\u003e callout to the Kit documentation (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1813\"\u003e#1813\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003e\u003ccode\u003ejsx\u003c/code\u003e\u003c/strong\u003e: Updated \u003ccode\u003egetChildren\u003c/code\u003e and \u003ccode\u003ehasChildren\u003c/code\u003e API documentation to reflect empty string children behavior.\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eWebsite\u003c/strong\u003e: Reworked status emoji indicators across docs and examples (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1816\"\u003e#1816\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eWebsite\u003c/strong\u003e: Added ℞ prefix to recipe titles and cleaned up See Also sections.\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eWebsite\u003c/strong\u003e: Removed the \u003ccode\u003ecustom-rules-of-children\u003c/code\u003e recipe and cross-linked the remaining recipes.\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eWebsite\u003c/strong\u003e: Added redirects for moved rule documentation.\u003c/li\u003e\n\u003cli\u003eCleaned up the \u0026quot;Community Maintained Presets that use ESLint React\u0026quot; documentation page.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🏗️ Internal\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003e\u003ccode\u003ereact-x/no-misused-capture-owner-stack\u003c/code\u003e\u003c/strong\u003e: Added edge-case tests for \u003ccode\u003ecaptureOwnerStack\u003c/code\u003e (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1813\"\u003e#1813\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eWebsite\u003c/strong\u003e: Updated fonts and dropped the \u003ccode\u003edata-theme\u003c/code\u003e attribute.\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eWebsite\u003c/strong\u003e: Updated theme configuration (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1815\"\u003e#1815\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eMonorepo\u003c/strong\u003e: Aligned the \u003ccode\u003etsdown\u003c/code\u003e version in \u003ccode\u003e@local/configs\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003epnpm-workspace\u003c/strong\u003e: Enabled \u003ccode\u003etrustPolicy: \u0026quot;no-downgrade\u0026quot;\u003c/code\u003e and added \u003ccode\u003eminimumReleaseAge: 1440\u003c/code\u003e (1 day).\u003c/li\u003e\n\u003cli\u003eBumped \u003ccode\u003eeslint\u003c/code\u003e to \u003ccode\u003e10.4.1\u003c/code\u003e across workspace packages.\u003c/li\u003e\n\u003cli\u003eBumped \u003ccode\u003epnpm\u003c/code\u003e to \u003ccode\u003e11.5.0\u003c/code\u003e and refreshed the lockfile.\u003c/li\u003e\n\u003cli\u003eBumped \u003ccode\u003efumadocs\u003c/code\u003e packages and \u003ccode\u003etinyexec\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003eBumped \u003ccode\u003eeslint-plugin-package-json\u003c/code\u003e to \u003ccode\u003e1.2.0\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003eUpdated dprint plugins and reformatted font families in example projects.\u003c/li\u003e\n\u003cli\u003eUpdated Sentrux baseline metrics.\u003c/li\u003e\n\u003cli\u003eUpdated \u003ccode\u003e.gitignore\u003c/code\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/Rel1cx/eslint-react/compare/v5.8.7...v5.8.8\"\u003ehttps://github.com/Rel1cx/eslint-react/compare/v5.8.7...v5.8.8\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev5.8.7 (2026-05-29)\u003c/h2\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/ff9258dc21cd08546d20e8596d2de9e5387a6875\"\u003e\u003ccode\u003eff9258d\u003c/code\u003e\u003c/a\u003e release: 5.8.9\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/60e2514c793e3f7c06f6bb1f81ac6a20da014cfa\"\u003e\u003ccode\u003e60e2514\u003c/code\u003e\u003c/a\u003e release: 5.8.8\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/5b62a422ea43365ed2abab803a95f34cab47a335\"\u003e\u003ccode\u003e5b62a42\u003c/code\u003e\u003c/a\u003e Update baseline timestamp and bump eslint to 10.4.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/0e85aa0e12f2f1cfe0c0203908f0a4e32e4c8c06\"\u003e\u003ccode\u003e0e85aa0\u003c/code\u003e\u003c/a\u003e release: 5.8.7\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/d2e2d2db15ca432a571831238bdfca72a5485d9f\"\u003e\u003ccode\u003ed2e2d2d\u003c/code\u003e\u003c/a\u003e release: 5.8.7-beta.5\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/7f9bd4a174d1ff660087c82d28ba6faea375c791\"\u003e\u003ccode\u003e7f9bd4a\u003c/code\u003e\u003c/a\u003e release: 5.8.7-beta.4\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/449f940c05ff05556d8af9b7bcc3098bcef463a9\"\u003e\u003ccode\u003e449f940\u003c/code\u003e\u003c/a\u003e docs: fix inaccurate minimum ESLint version and off preset description in README\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/846014c8c4d4cfe8b22a67424f2c15b339f8bb1f\"\u003e\u003ccode\u003e846014c\u003c/code\u003e\u003c/a\u003e release: 5.8.7-beta.3\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/9ad3404c5ae8a48c14a6e23b121250ec78364f85\"\u003e\u003ccode\u003e9ad3404\u003c/code\u003e\u003c/a\u003e release: 5.8.7-beta.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/a29c464e7111dd9df50d549c9b749f4254a68014\"\u003e\u003ccode\u003ea29c464\u003c/code\u003e\u003c/a\u003e release: 5.8.7-beta.1\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/Rel1cx/eslint-react/commits/v5.8.9/plugins/eslint-plugin\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@eslint/js` from 9.39.2 to 10.0.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/eslint/eslint/releases\"\u003e@​eslint/js's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev10.0.1\u003c/h2\u003e\n\u003ch2\u003eBug Fixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/c87d5bded54c5cf491eb04c24c9d09bbbd42c23e\"\u003e\u003ccode\u003ec87d5bd\u003c/code\u003e\u003c/a\u003e fix: update eslint (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20531\"\u003e#20531\u003c/a\u003e) (renovate[bot])\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/d84100115c14691691058f00779c94e74fca946a\"\u003e\u003ccode\u003ed841001\u003c/code\u003e\u003c/a\u003e fix: update \u003ccode\u003eminimatch\u003c/code\u003e to \u003ccode\u003e10.2.1\u003c/code\u003e to address security vulnerabilities (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20519\"\u003e#20519\u003c/a\u003e) (루밀LuMir)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/04c21475b3004904948f02049f2888b401d82c78\"\u003e\u003ccode\u003e04c2147\u003c/code\u003e\u003c/a\u003e fix: update error message for unused suppressions (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20496\"\u003e#20496\u003c/a\u003e) (fnx)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/38b089c1726feac0e31a31d47941bd99e29ce003\"\u003e\u003ccode\u003e38b089c\u003c/code\u003e\u003c/a\u003e fix: update dependency \u003ccode\u003e@​eslint/config-array\u003c/code\u003e to ^0.23.1 (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20484\"\u003e#20484\u003c/a\u003e) (renovate[bot])\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eDocumentation\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/5b3dbce50a1404a9f118afe810cefeee79388a2a\"\u003e\u003ccode\u003e5b3dbce\u003c/code\u003e\u003c/a\u003e docs: add AI acknowledgement section to templates (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20431\"\u003e#20431\u003c/a\u003e) (루밀LuMir)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/6f23076037d5879f20fb3be2ef094293b1e8d38c\"\u003e\u003ccode\u003e6f23076\u003c/code\u003e\u003c/a\u003e docs: toggle nav in no-JS mode (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20476\"\u003e#20476\u003c/a\u003e) (Tanuj Kanti)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/b69cfb32a16c5d5e9986390d484fae1d21e406f9\"\u003e\u003ccode\u003eb69cfb3\u003c/code\u003e\u003c/a\u003e docs: Update README (GitHub Actions Bot)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eChores\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/e5c281ffd038a3a7a3e5364db0b9378e0ad83020\"\u003e\u003ccode\u003ee5c281f\u003c/code\u003e\u003c/a\u003e chore: updates for v9.39.3 release (Jenkins)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/8c3832adb77cd993b4a24891900d5eeaaf093cdc\"\u003e\u003ccode\u003e8c3832a\u003c/code\u003e\u003c/a\u003e chore: update \u003ccode\u003e@​typescript-eslint/parser\u003c/code\u003e to ^8.56.0 (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20514\"\u003e#20514\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/8330d238ae6adb68bb6a1c9381e38cfedd990d94\"\u003e\u003ccode\u003e8330d23\u003c/code\u003e\u003c/a\u003e test: add tests for config-api (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20493\"\u003e#20493\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/37d6e91e88fa6a2ca6d8726679096acff21ba6cc\"\u003e\u003ccode\u003e37d6e91\u003c/code\u003e\u003c/a\u003e chore: remove eslint v10 prereleases from eslint-config-eslint deps (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20494\"\u003e#20494\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/da7cd0e79197ad16e17052eef99df141de6dbfb1\"\u003e\u003ccode\u003eda7cd0e\u003c/code\u003e\u003c/a\u003e refactor: cleanup error message templates (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20479\"\u003e#20479\u003c/a\u003e) (Francesco Trotta)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/84fb885d49ac810e79a9491276b4828b53d913e5\"\u003e\u003ccode\u003e84fb885\u003c/code\u003e\u003c/a\u003e chore: package.json update for \u003ccode\u003e@​eslint/js\u003c/code\u003e release (Jenkins)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/1f667344b57c4c09b548d94bcfac1f91b6e5c63d\"\u003e\u003ccode\u003e1f66734\u003c/code\u003e\u003c/a\u003e chore: add \u003ccode\u003eeslint\u003c/code\u003e to \u003ccode\u003epeerDependencies\u003c/code\u003e of \u003ccode\u003e@eslint/js\u003c/code\u003e (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20467\"\u003e#20467\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev10.0.0\u003c/h2\u003e\n\u003ch2\u003eBreaking Changes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/f9e54f43a5e497cdfa179338b431093245cb787b\"\u003e\u003ccode\u003ef9e54f4\u003c/code\u003e\u003c/a\u003e feat!: estimate rule-tester failure location (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20420\"\u003e#20420\u003c/a\u003e) (ST-DDT)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/a176319d8ade1a7d9b2d7fb8f038f55a2662325f\"\u003e\u003ccode\u003ea176319\u003c/code\u003e\u003c/a\u003e feat!: replace \u003ccode\u003echalk\u003c/code\u003e with \u003ccode\u003estyleText\u003c/code\u003e and add \u003ccode\u003ecolor\u003c/code\u003e to \u003ccode\u003eResultsMeta\u003c/code\u003e (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20227\"\u003e#20227\u003c/a\u003e) (루밀LuMir)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/c7046e6c1e03c4ca0eee4888a1f2eba4c6454f84\"\u003e\u003ccode\u003ec7046e6\u003c/code\u003e\u003c/a\u003e feat!: enable JSX reference tracking (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20152\"\u003e#20152\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/fa31a608901684fbcd9906d1907e66561d16e5aa\"\u003e\u003ccode\u003efa31a60\u003c/code\u003e\u003c/a\u003e feat!: add \u003ccode\u003ename\u003c/code\u003e to configs (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20015\"\u003e#20015\u003c/a\u003e) (Kirk Waiblinger)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/3383e7ec9028166cafc8ea7986c2f7498d0049f0\"\u003e\u003ccode\u003e3383e7e\u003c/code\u003e\u003c/a\u003e fix!: remove deprecated \u003ccode\u003eSourceCode\u003c/code\u003e methods (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20137\"\u003e#20137\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/501abd0e916a35554c58b7c0365537f1fa3880ce\"\u003e\u003ccode\u003e501abd0\u003c/code\u003e\u003c/a\u003e feat!: update dependency minimatch to v10 (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20246\"\u003e#20246\u003c/a\u003e) (renovate[bot])\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/ca4d3b40085de47561f89656a2207d09946ed45e\"\u003e\u003ccode\u003eca4d3b4\u003c/code\u003e\u003c/a\u003e fix!: stricter rule tester assertions for valid test cases (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20125\"\u003e#20125\u003c/a\u003e) (唯然)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/96512a66c86402fb0538cdcb6cd30b9073f6bf3b\"\u003e\u003ccode\u003e96512a6\u003c/code\u003e\u003c/a\u003e fix!: Remove deprecated rule context methods (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20086\"\u003e#20086\u003c/a\u003e) (Nicholas C. Zakas)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/c69fdacdb2e886b9d965568a397aa8220db3fe90\"\u003e\u003ccode\u003ec69fdac\u003c/code\u003e\u003c/a\u003e feat!: remove eslintrc support (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20037\"\u003e#20037\u003c/a\u003e) (Francesco Trotta)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/208b5cc34a8374ff81412b5bec2e0800eebfbd04\"\u003e\u003ccode\u003e208b5cc\u003c/code\u003e\u003c/a\u003e feat!: Use \u003ccode\u003eScopeManager#addGlobals()\u003c/code\u003e (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20132\"\u003e#20132\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/a2ee188ea7a38a0c6155f3d39e2b00e1d0f36e14\"\u003e\u003ccode\u003ea2ee188\u003c/code\u003e\u003c/a\u003e fix!: add \u003ccode\u003euniqueItems: true\u003c/code\u003e in \u003ccode\u003eno-invalid-regexp\u003c/code\u003e option (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20155\"\u003e#20155\u003c/a\u003e) (Tanuj Kanti)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/a89059dbf2832d417dd493ee81483227ec44e4ab\"\u003e\u003ccode\u003ea89059d\u003c/code\u003e\u003c/a\u003e feat!: Program range span entire source text (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20133\"\u003e#20133\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/39a6424373d915fa9de0d7b0caba9a4dc3da9b53\"\u003e\u003ccode\u003e39a6424\u003c/code\u003e\u003c/a\u003e fix!: assert 'text' is a string across all RuleFixer methods (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20082\"\u003e#20082\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/f28fbf846244e043c92b355b224d121b06140b44\"\u003e\u003ccode\u003ef28fbf8\u003c/code\u003e\u003c/a\u003e fix!: Deprecate \u003ccode\u003e\u0026quot;always\u0026quot;\u003c/code\u003e and \u003ccode\u003e\u0026quot;as-needed\u0026quot;\u003c/code\u003e options of the \u003ccode\u003eradix\u003c/code\u003e rule (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20223\"\u003e#20223\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/aa3fb2b233e929b37220be940575f42c280e0b98\"\u003e\u003ccode\u003eaa3fb2b\u003c/code\u003e\u003c/a\u003e fix!: tighten \u003ccode\u003efunc-names\u003c/code\u003e schema (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20119\"\u003e#20119\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/f6c0ed0311dcfee853367d5068c765d066e6b756\"\u003e\u003ccode\u003ef6c0ed0\u003c/code\u003e\u003c/a\u003e feat!: report \u003ccode\u003eeslint-env\u003c/code\u003e comments as errors (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20128\"\u003e#20128\u003c/a\u003e) (Francesco Trotta)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/4bf739fb533e59f7f0a66b65f7bc80be0f37d8db\"\u003e\u003ccode\u003e4bf739f\u003c/code\u003e\u003c/a\u003e fix!: remove deprecated \u003ccode\u003eLintMessage#nodeType\u003c/code\u003e and \u003ccode\u003eTestCaseError#type\u003c/code\u003e (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20096\"\u003e#20096\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/523c076866400670fb2192a3f55dbf7ad3469247\"\u003e\u003ccode\u003e523c076\u003c/code\u003e\u003c/a\u003e feat!: drop support for jiti \u0026lt; 2.2.0 (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20016\"\u003e#20016\u003c/a\u003e) (michael faith)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/454a292c95f34dad232411ddac06408e6383bb64\"\u003e\u003ccode\u003e454a292\u003c/code\u003e\u003c/a\u003e feat!: update \u003ccode\u003eeslint:recommended\u003c/code\u003e configuration (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20210\"\u003e#20210\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/4f880ee02992e1bf0e96ebaba679985e2d1295f1\"\u003e\u003ccode\u003e4f880ee\u003c/code\u003e\u003c/a\u003e feat!: remove \u003ccode\u003ev10_*\u003c/code\u003e and inactive \u003ccode\u003eunstable_*\u003c/code\u003e flags (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20225\"\u003e#20225\u003c/a\u003e) (sethamus)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/f18115c363a4ac7671a4c7f30ee13d57ebba330f\"\u003e\u003ccode\u003ef18115c\u003c/code\u003e\u003c/a\u003e feat!: \u003ccode\u003eno-shadow-restricted-names\u003c/code\u003e report \u003ccode\u003eglobalThis\u003c/code\u003e by default (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20027\"\u003e#20027\u003c/a\u003e) (sethamus)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/c6358c31fbd3937b92d89be2618ffdf5a774604e\"\u003e\u003ccode\u003ec6358c3\u003c/code\u003e\u003c/a\u003e feat!: Require Node.js \u003ccode\u003e^20.19.0 || ^22.13.0 || \u0026gt;=24\u003c/code\u003e (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20160\"\u003e#20160\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eFeatures\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/bff9091927811497dbf066b0e3b85ecb37d43822\"\u003e\u003ccode\u003ebff9091\u003c/code\u003e\u003c/a\u003e feat: handle \u003ccode\u003eArray.fromAsync\u003c/code\u003e in \u003ccode\u003earray-callback-return\u003c/code\u003e (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20457\"\u003e#20457\u003c/a\u003e) (Francesco Trotta)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/290c594bb50c439fb71bc75521ee5360daa8c222\"\u003e\u003ccode\u003e290c594\u003c/code\u003e\u003c/a\u003e feat: add \u003ccode\u003eself\u003c/code\u003e to \u003ccode\u003eno-implied-eval\u003c/code\u003e rule (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20468\"\u003e#20468\u003c/a\u003e) (sethamus)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/43677de07ebd6e14bfac40a46ad749ba783c45f2\"\u003e\u003ccode\u003e43677de\u003c/code\u003e\u003c/a\u003e feat: fix handling of function and class expression names in \u003ccode\u003eno-shadow\u003c/code\u003e (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20432\"\u003e#20432\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/84fb885d49ac810e79a9491276b4828b53d913e5\"\u003e\u003ccode\u003e84fb885\u003c/code\u003e\u003c/a\u003e chore: package.json update for \u003ccode\u003e@​eslint/js\u003c/code\u003e release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/1f667344b57c4c09b548d94bcfac1f91b6e5c63d\"\u003e\u003ccode\u003e1f66734\u003c/code\u003e\u003c/a\u003e chore: add \u003ccode\u003eeslint\u003c/code\u003e to \u003ccode\u003epeerDependencies\u003c/code\u003e of \u003ccode\u003e@eslint/js\u003c/code\u003e (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20467\"\u003e#20467\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/f3fbc2f60cbe2c718364feb8c3fc0452c0df3c56\"\u003e\u003ccode\u003ef3fbc2f\u003c/code\u003e\u003c/a\u003e chore: set \u003ccode\u003e@eslint/js\u003c/code\u003e version to 10.0.0 to skip releasing it (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20466\"\u003e#20466\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/b4b3127f8542c599ce2dea804b6582ebc40c993d\"\u003e\u003ccode\u003eb4b3127\u003c/code\u003e\u003c/a\u003e chore: package.json update for \u003ccode\u003e@​eslint/js\u003c/code\u003e release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/0b14059491d830a49b3577931f4f68fbcfce6be5\"\u003e\u003ccode\u003e0b14059\u003c/code\u003e\u003c/a\u003e chore: package.json update for \u003ccode\u003e@​eslint/js\u003c/code\u003e release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/fa31a608901684fbcd9906d1907e66561d16e5aa\"\u003e\u003ccode\u003efa31a60\u003c/code\u003e\u003c/a\u003e feat!: add \u003ccode\u003ename\u003c/code\u003e to configs (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20015\"\u003e#20015\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/1e2cad5f6fa47ed6ed89d2a29798dda926d50990\"\u003e\u003ccode\u003e1e2cad5\u003c/code\u003e\u003c/a\u003e chore: package.json update for \u003ccode\u003e@​eslint/js\u003c/code\u003e release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/454a292c95f34dad232411ddac06408e6383bb64\"\u003e\u003ccode\u003e454a292\u003c/code\u003e\u003c/a\u003e feat!: update \u003ccode\u003eeslint:recommended\u003c/code\u003e configuration (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20210\"\u003e#20210\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/c6358c31fbd3937b92d89be2618ffdf5a774604e\"\u003e\u003ccode\u003ec6358c3\u003c/code\u003e\u003c/a\u003e feat!: Require Node.js \u003ccode\u003e^20.19.0 || ^22.13.0 || \u0026gt;=24\u003c/code\u003e (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20160\"\u003e#20160\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/eslint/eslint/commits/v10.0.1/packages/js\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@typescript-eslint/eslint-plugin` from 8.56.0 to 8.60.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases\"\u003e@​typescript-eslint/eslint-plugin's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev8.60.0\u003c/h2\u003e\n\u003ch2\u003e8.60.0 (2026-05-25)\u003c/h2\u003e\n\u003ch3\u003e🚀 Features\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003erule-tester:\u003c/strong\u003e added updates of RuleTester from upstream (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12291\"\u003e#12291\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🩹 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eplayground TS version selector is not working (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12326\"\u003e#12326\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/issues/12325\"\u003e#12325\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e❤️ Thank You\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eEvyatar Daud \u003ca href=\"https://github.com/StyleShit\"\u003e\u003ccode\u003e@​StyleShit\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eVinccool96\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.60.0\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003ev8.59.4\u003c/h2\u003e\n\u003ch2\u003e8.59.4 (2026-05-18)\u003c/h2\u003e\n\u003ch3\u003e🩹 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-floating-promises] stack overflow when using recursive types (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12294\"\u003e#12294\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eproject-service:\u003c/strong\u003e throw error cause in \u003ccode\u003egetParsedConfigFileFromTSServer\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12321\"\u003e#12321\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003etypescript-eslint:\u003c/strong\u003e export Compatible* types from typescript-eslint to resolve pnpm TS error (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12340\"\u003e#12340\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e❤️ Thank You\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eEvyatar Daud \u003ca href=\"https://github.com/StyleShit\"\u003e\u003ccode\u003e@​StyleShit\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eKirk Waiblinger \u003ca href=\"https://github.com/kirkwaiblinger\"\u003e\u003ccode\u003e@​kirkwaiblinger\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003elumir\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.4\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003ev8.59.3\u003c/h2\u003e\n\u003ch2\u003e8.59.3 (2026-05-11)\u003c/h2\u003e\n\u003cp\u003eThis was a version bump only, there were no code changes.\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.3\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003ev8.59.2\u003c/h2\u003e\n\u003ch2\u003e8.59.2 (2026-05-04)\u003c/h2\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/CHANGELOG.md\"\u003e@​typescript-eslint/eslint-plugin's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e8.60.0 (2026-05-25)\u003c/h2\u003e\n\u003cp\u003eThis was a version bump only for eslint-plugin to align it with other projects, there were no code changes.\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.60.0\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003e8.59.4 (2026-05-18)\u003c/h2\u003e\n\u003ch3\u003e🩹 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-floating-promises] stack overflow when using recursive types (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12294\"\u003e#12294\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e❤️ Thank You\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eEvyatar Daud \u003ca href=\"https://github.com/StyleShit\"\u003e\u003ccode\u003e@​StyleShit\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.4\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003e8.59.3 (2026-05-11)\u003c/h2\u003e\n\u003cp\u003eThis was a version bump only for eslint-plugin to align it with other projects, there were no code changes.\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.3\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003e8.59.2 (2026-05-04)\u003c/h2\u003e\n\u003ch3\u003e🩹 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-deprecated] object destructuring values should be treated as declarations (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12292\"\u003e#12292\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unsafe-type-assertion] handle crash on recursive template literal types (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12150\"\u003e#12150\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e❤️ Thank You\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eDima Barabash\u003c/li\u003e\n\u003cli\u003eKirk Waiblinger \u003ca href=\"https://github.com/kirkwaiblinger\"\u003e\u003ccode\u003e@​kirkwaiblinger\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.2\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003e8.59.1 (2026-04-27)\u003c/h2\u003e\n\u003ch3\u003e🩹 Fixes\u003c/h3\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/f891c29de5f3e23f3d8c59cc599d3196e54e9b58\"\u003e\u003ccode\u003ef891c29\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.60.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/ca6ca1431b6d18235297a7e29feb5d98f012dff2\"\u003e\u003ccode\u003eca6ca14\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.59.4\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/4302433ae6bf93d4ddc35264ad1b951254758566\"\u003e\u003ccode\u003e4302433\u003c/code\u003e\u003c/a\u003e fix(eslint-plugin): [no-floating-promises] stack overflow when using recursiv...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/10b79f1ba8e98610a3af85152a1b3b406f91e633\"\u003e\u003ccode\u003e10b79f1\u003c/code\u003e\u003c/a\u003e chore(deps): update dependency eslint to v10.4.0 (\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin/issues/12339\"\u003e#12339\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/2a6765d9628dc776f8127c96f088bb807c0bcab2\"\u003e\u003ccode\u003e2a6765d\u003c/code\u003e\u003c/a\u003e chore: clenaup \u003ccode\u003egetAwaitedType\u003c/code\u003e from \u003ccode\u003etypescript.d.ts\u003c/code\u003e (\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin/issues/12302\"\u003e#12302\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/48e13c0261e3cb1bf4f4dfaa462cdb3a56ef7383\"\u003e\u003ccode\u003e48e13c0\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.59.3\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/e26dc8003ababf078aad4df17765ee4cea30644c\"\u003e\u003ccode\u003ee26dc80\u003c/code\u003e\u003c/a\u003e docs: update stale links to latest (\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin/issues/12313\"\u003e#12313\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/44f9625336841a8ee3eb01a9e02e49b1d7b12648\"\u003e\u003ccode\u003e44f9625\u003c/code\u003e\u003c/a\u003e chore(deps): update vitest monorepo to v4.1.5 (\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin/issues/12307\"\u003e#12307\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/2ec35f1760aade4df4c631d76d78c7ed5e136333\"\u003e\u003ccode\u003e2ec35f1\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.59.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/ec3ef25390f7daf5a9ff33a60282bdbbb49ab0f3\"\u003e\u003ccode\u003eec3ef25\u003c/code\u003e\u003c/a\u003e test: make no-useless-empty-export tests fully static (\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin/issues/12260\"\u003e#12260\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commits/v8.60.0/packages/eslint-plugin\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@typescript-eslint/parser` from 8.56.0 to 8.60.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases\"\u003e@​typescript-eslint/parser's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev8.60.0\u003c/h2\u003e\n\u003ch2\u003e8.60.0 (2026-05-25)\u003c/h2\u003e\n\u003ch3\u003e🚀 Features\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003erule-tester:\u003c/strong\u003e added updates of RuleTester from upstream (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12291\"\u003e#12291\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🩹 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eplayground TS version selector is not working (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12326\"\u003e#12326\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/issues/12325\"\u003e#12325\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e❤️ Thank You\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eEvyatar Daud \u003ca href=\"https://github.com/StyleShit\"\u003e\u003ccode\u003e@​StyleShit\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eVinccool96\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.60.0\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003ev8.59.4\u003c/h2\u003e\n\u003ch2\u003e8.59.4 (2026-05-18)\u003c/h2\u003e\n\u003ch3\u003e🩹 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-floating-promises] stack overflow when using recursive types (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12294\"\u003e#12294\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eproject-service:\u003c/strong\u003e throw error cause in \u003ccode\u003egetParsedConfigFileFromTSServer\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12321\"\u003e#12321\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003etypescript-eslint:\u003c/strong\u003e export Compatible* types from typescript-eslint to resolve pnpm TS error (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12340\"\u003e#12340\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e❤️ Thank You\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eEvyatar Daud \u003ca href=\"https://github.com/StyleShit\"\u003e\u003ccode\u003e@​StyleShit\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eKirk Waiblinger \u003ca href=\"https://github.com/kirkwaiblinger\"\u003e\u003ccode\u003e@​kirkwaiblinger\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003elumir\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.4\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003ev8.59.3\u003c/h2\u003e\n\u003ch2\u003e8.59.3 (2026-05-11)\u003c/h2\u003e\n\u003cp\u003eThis was a version bump only, there were no code changes.\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.3\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003ev8.59.2\u003c/h2\u003e\n\u003ch2\u003e8.59.2 (2026-05-04)\u003c/h2\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/parser/CHANGELOG.md\"\u003e@​typescript-eslint/parser's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e8.60.0 (2026-05-25)\u003c/h2\u003e\n\u003cp\u003eThis was a version bump only for parser to align it with other projects, there were no code changes.\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.60.0\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003e8.59.4 (2026-05-18)\u003c/h2\u003e\n\u003cp\u003eThis was a version bump only for parser to align it with other projects, there were no code changes.\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.4\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003e8.59.3 (2026-05-11)\u003c/h2\u003e\n\u003cp\u003eThis was a version bump only for parser to align it with other projects, there were no code changes.\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.3\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003e8.59.2 (2026-05-04)\u003c/h2\u003e\n\u003cp\u003eThis was a version bump only for parser to align it with other projects, there were no code changes.\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.2\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003e8.59.1 (2026-04-27)\u003c/h2\u003e\n\u003cp\u003eThis was a version bump only for parser to align it with other projects, there were no code changes.\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.1\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003e8.59.0 (2026-04-20)\u003c/h2\u003e\n\u003cp\u003eThis was a version bump only for parser to align it with other projects, there were no code changes.\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.0\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003e8.58.2 (2026-04-13)\u003c/h2\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/f891c29de5f3e23f3d8c59cc599d3196e54e9b58\"\u003e\u003ccode\u003ef891c29\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.60.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/ca6ca1431b6d18235297a7e29feb5d98f012dff2\"\u003e\u003ccode\u003eca6ca14\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.59.4\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/48e13c0261e3cb1bf4f4dfaa462cdb3a56ef7383\"\u003e\u003ccode\u003e48e13c0\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.59.3\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/44f9625336841a8ee3eb01a9e02e49b1d7b12648\"\u003e\u003ccode\u003e44f9625\u003c/code\u003e\u003c/a\u003e chore(deps): update vitest monorepo to v4.1.5 (\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/parser/issues/12307\"\u003e#12307\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/2ec35f1760aade4df4c631d76d78c7ed5e136333\"\u003e\u003ccode\u003e2ec35f1\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.59.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/52457932e5507b5ca01e720a541f3f8d01e09b9d\"\u003e\u003ccode\u003e5245793\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.59.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/ea9ae4f8817873480e3501145059f63e39e8d8a1\"\u003e\u003ccode\u003eea9ae4f\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.59.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/90c2803a4c250e0343598d41e973f95e743bf4ce\"\u003e\u003ccode\u003e90c2803\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.58.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/be6b49a02d68db9bdc8985e7e9e1598700fda2fa\"\u003e\u003ccode\u003ebe6b49a\u003c/code\u003e\u003c/a\u003e fix: remove tsbuildinfo cache file from published packages (\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/parser/issues/12187\"\u003e#12187\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/5311ed312eadf4e238324f2726ae0b1f3f2206e6\"\u003e\u003ccode\u003e5311ed3\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.58.1\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commits/v8.60.0/packages/parser\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `eslint` from 9.39.2 to 10.4.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/eslint/eslint/releases\"\u003eeslint's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev10.4.1\u003c/h2\u003e\n\u003ch2\u003eBug Fixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/e557467db7496220eebcbe2ac5ea6d38c12bb1ec\"\u003e\u003ccode\u003ee557467\u003c/code\u003e\u003c/a\u003e fix: update \u003ccode\u003e@eslint/plugin-kit\u003c/code\u003e version to 0.7.2 (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20930\"\u003e#20930\u003c/a\u003e) (Francesco Trotta)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/d4ce898796ca22c3b96aa70d3014cb85f4bac1cd\"\u003e\u003ccode\u003ed4ce898\u003c/code\u003e\u003c/a\u003e fix: propagate failures from delegated commands (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20917\"\u003e#20917\u003c/a\u003e) (Minh Vu)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/f4f3507460bc016b5be979c05d2969793f570cbf\"\u003e\u003ccode\u003ef4f3507\u003c/code\u003e\u003c/a\u003e fix: prefer-arrow-callback invalid autofix with newline after \u003ccode\u003easync\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20916\"\u003e#20916\u003c/a\u003e) (kuldeep kumar)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/c5bc78b37e08b9054a11f0cc2d81808bb24acb85\"\u003e\u003ccode\u003ec5bc78b\u003c/code\u003e\u003c/a\u003e fix: false positive for reference in \u003ccode\u003efinally\u003c/code\u003e block (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20655\"\u003e#20655\u003c/a\u003e) (Tanuj Kanti)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/27538c01f5df4e9306f6f4ba867b2dd6307fae59\"\u003e\u003ccode\u003e27538c0\u003c/code\u003e\u003c/a\u003e fix: add missing CodePath and CodePathSegment types (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20853\"\u003e#20853\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eDocumentation\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/61b0add61ffc52665562be7bb96f526690a78b30\"\u003e\u003ccode\u003e61b0add\u003c/code\u003e\u003c/a\u003e docs: remove deprecated rule from related rules of \u003ccode\u003emax-params\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20921\"\u003e#20921\u003c/a\u003e) (Tanuj Kanti)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/305d5b91aeac24d36fde42f75625a8f183d4ce43\"\u003e\u003ccode\u003e305d5b9\u003c/code\u003e\u003c/a\u003e docs: remove deprecated rules from related rules section (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20911\"\u003e#20911\u003c/a\u003e) (Tanuj Kanti)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/49b0202d01918b8061720d586dffd7c68047090c\"\u003e\u003ccode\u003e49b0202\u003c/code\u003e\u003c/a\u003e docs: fix \u003ccode\u003edisplay: none\u003c/code\u003e of ad (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20901\"\u003e#20901\u003c/a\u003e) (Tanuj Kanti)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/9067f9492ec998afc5b4f057a477ecf6ebd45e44\"\u003e\u003ccode\u003e9067f94\u003c/code\u003e\u003c/a\u003e docs: switch build to Node.js 24 (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20893\"\u003e#20893\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/c91b0417e3420c76807ce1fa2aea76e2de87ab86\"\u003e\u003ccode\u003ec91b041\u003c/code\u003e\u003c/a\u003e docs: Update README (GitHub Actions Bot)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/e349265cb37f3ebc837e178e48a725bb782bd870\"\u003e\u003ccode\u003ee349265\u003c/code\u003e\u003c/a\u003e docs: clarify semver strings in rule deprecation objects (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20885\"\u003e#20885\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eChores\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/b0e466b6ab47bfc7de43d8de0c315d8ee83aa584\"\u003e\u003ccode\u003eb0e466b\u003c/code\u003e\u003c/a\u003e test: add \u003ccode\u003edata\u003c/code\u003e property to invalid tests cases for rules (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20924\"\u003e#20924\u003c/a\u003e) (Tanuj Kanti)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/f78838bc4c86d487e1bcc7cede260c4467721c46\"\u003e\u003ccode\u003ef78838b\u003c/code\u003e\u003c/a\u003e test: add CodePath type coverage (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20904\"\u003e#20904\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/1daa4bd734b79a62e317d0394394a6b38cff49f9\"\u003e\u003ccode\u003e1daa4bd\u003c/code\u003e\u003c/a\u003e chore: update \u003ccode\u003eeslint-plugin-eslint-comments\u003c/code\u003e test data to latest commit (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20922\"\u003e#20922\u003c/a\u003e) (Francesco Trotta)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/002942ce988ea28b78e0a2f3b074081e638b552c\"\u003e\u003ccode\u003e002942c\u003c/code\u003e\u003c/a\u003e ci: declare contents:read on update-readme workflow (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20919\"\u003e#20919\u003c/a\u003e) (Arpit Jain)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/64bca24e7bed35bc3c864fc625cb2d89eca87d5b\"\u003e\u003ccode\u003e64bca24\u003c/code\u003e\u003c/a\u003e chore: update ecosystem plugins (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20912\"\u003e#20912\u003c/a\u003e) (ESLint Bot)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/6d7c832950d5e92499d88e504080661f888f8f56\"\u003e\u003ccode\u003e6d7c832\u003c/code\u003e\u003c/a\u003e chore: ignore fflate updates in renovate (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20908\"\u003e#20908\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/b2c86382164d87c6203b78d52068cd6a2a6ffe30\"\u003e\u003ccode\u003eb2c8638\u003c/code\u003e\u003c/a\u003e ci: bump pnpm/action-setup from 6.0.7 to 6.0.8 (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20889\"\u003e#20889\u003c/a\u003e) (dependabot[bot])\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/a9b8d7f74c50211701cfc49710fa541fd91b2aa5\"\u003e\u003ccode\u003ea9b8d7f\u003c/code\u003e\u003c/a\u003e chore: increase maxBuffer for ecosystem tests (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20881\"\u003e#20881\u003c/a\u003e) (sethamus)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/b702ead5e1ed7cb9f28238a454797662efb37396\"\u003e\u003ccode\u003eb702ead\u003c/code\u003e\u003c/a\u003e chore: update ecosystem update PR settings (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20884\"\u003e#20884\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/507f60e9a78c9a902bc8759f066ae17a1ea6cd81\"\u003e\u003ccode\u003e507f60e\u003c/code\u003e\u003c/a\u003e chore: update ecosystem plugins (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20882\"\u003e#20882\u003c/a\u003e) (ESLint Bot)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/92f5c5bb6bf3a5d167c8ee53a430833410295c6d\"\u003e\u003ccode\u003e92f5c5b\u003c/code\u003e\u003c/a\u003e test: add unit test for message-count (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20878\"\u003e#20878\u003c/a\u003e) (kuldeep kumar)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/df321080af5758b1fa25e4b9a40e26135642dd6e\"\u003e\u003ccode\u003edf32108\u003c/code\u003e\u003c/a\u003e chore: add \u003ccode\u003e@​eslint/markdown\u003c/code\u003e and typescript-eslint ecosystem tests (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20837\"\u003e#20837\u003c/a\u003e) (sethamus)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/327f91d36aa49f2a50ded931d841a16374fd875f\"\u003e\u003ccode\u003e327f91d\u003c/code\u003e\u003c/a\u003e chore: use includeIgnoreFile internally (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20876\"\u003e#20876\u003c/a\u003e) (Kirk Waiblinger)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/f0dc4bd893fb3a9f44e4ddc3ad7063ffb0beacd3\"\u003e\u003ccode\u003ef0dc4bd\u003c/code\u003e\u003c/a\u003e chore: pin fflate@0.8.2 (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20877\"\u003e#20877\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/0f4bd257a67a082b756de746d9e0c4842ab764ca\"\u003e\u003ccode\u003e0f4bd25\u003c/code\u003e\u003c/a\u003e ci: run Discord alert for ecosystem test failures (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20873\"\u003e#20873\u003c/a\u003e) (Copilot)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev10.4.0\u003c/h2\u003e\n\u003ch2\u003eFeatures\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/1a45ec596af1dd5f880e6874cb8f24dafb6a7ecf\"\u003e\u003ccode\u003e1a45ec5\u003c/code\u003e\u003c/a\u003e feat: check sequence expressions in \u003ccode\u003efor-direction\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20701\"\u003e#20701\u003c/a\u003e) (kuldeep kumar)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/450040bd89b989b3531824c6be45feb5fe3d936b\"\u003e\u003ccode\u003e450040b\u003c/code\u003e\u003c/a\u003e feat: add \u003ccode\u003eincludeIgnoreFile()\u003c/code\u003e to \u003ccode\u003eeslint/config\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20735\"\u003e#20735\u003c/a\u003e) (Kirk Waiblinger)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eBug Fixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/544c0c3da589166ad8e5d634f35d3d06701c57be\"\u003e\u003ccode\u003e544c0c3\u003c/code\u003e\u003c/a\u003e fix: escape code path DOT labels in debug output (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20866\"\u003e#20866\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/6799431203f2579632d0870f98ba132067f4040c\"\u003e\u003ccode\u003e6799431\u003c/code\u003e\u003c/a\u003e fix: update dependency \u003ccode\u003e@​eslint/config-helpers\u003c/code\u003e to ^0.6.0 (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20850\"\u003e#20850\u003c/a\u003e) (renovate[bot])\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/f078fef5005dceb14fc162aab7c7200e027688dd\"\u003e\u003ccode\u003ef078fef\u003c/code\u003e\u003c/a\u003e fix: handle non-array deprecated rule replacements (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20825\"\u003e#20825\u003c/a\u003e) (xbinaryx)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eDocumentation\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/7e52a7151fb92eec0e0f67fe4e5ddbd1ccce796f\"\u003e\u003ccode\u003e7e52a71\u003c/code\u003e\u003c/a\u003e docs: add mention of \u003ccode\u003e@eslint-react/eslint-plugin\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20869\"\u003e#20869\u003c/a\u003e) (Pavel)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/db3468ba746407d7f286f18f7ea9db6df0e3bc08\"\u003e\u003ccode\u003edb3468b\u003c/code\u003e\u003c/a\u003e docs: tweak wording around ambiguous CJS-vs-ESM config (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20865\"\u003e#20865\u003c/a\u003e) (Kirk Waiblinger)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/90846643ec6e97d447ae0d831fabe6d17b0a998a\"\u003e\u003ccode\u003e9084664\u003c/code\u003e\u003c/a\u003e docs: Update README (GitHub Actions Bot)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/9cc73875046e3c4b8313644cbb1e99e26b36bd3f\"\u003e\u003ccode\u003e9cc7387\u003c/code\u003e\u003c/a\u003e docs: Update README (GitHub Actions Bot)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/3d7b5484407403817aa9071a394d336d8ea96eb5\"\u003e\u003ccode\u003e3d7b548\u003c/code\u003e\u003c/a\u003e docs: Update README (GitHub Actions Bot)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/191ec3c0a3f94ce0f110df761f0b2b8949011ccb\"\u003e\u003ccode\u003e191ec3c\u003c/code\u003e\u003c/a\u003e docs: Update README (GitHub Actions Bot)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/4a3d15a99c452c4db2fd56b577fa7597e98ab0c2\"\u003e\u003ccode\u003e4a3d15a\u003c/code\u003e\u003c/a\u003e 10.4.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/43e7e2bdc5c6cacc535446b7d23c10f780384ba8\"\u003e\u003ccode\u003e43e7e2b\u003c/code\u003e\u003c/a\u003e Build: changelog update for 10.4.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/e557467db7496220eebcbe2ac5ea6d38c12bb1ec\"\u003e\u003ccode\u003ee557467\u003c/code\u003e\u003c/a\u003e fix: update \u003ccode\u003e@eslint/plugin-kit\u003c/code\u003e version to 0.7.2 (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20930\"\u003e#20930\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/b0e466b6ab47bfc7de43d8de0c315d8ee83aa584\"\u003e\u003ccode\u003eb0e466b\u003c/code\u003e\u003c/a\u003e test: add \u003ccode\u003edata\u003c/code\u003e property to invalid tests cases for rules (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20924\"\u003e#20924\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/d4ce898796ca22c3b96aa70d3014cb85f4bac1cd\"\u003e\u003ccode\u003ed4ce898\u003c/code\u003e\u003c/a\u003e fix: propagate failures from delegated commands (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20917\"\u003e#20917\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/f4f3507460bc016b5be979c05d2969793f570cbf\"\u003e\u003ccode\u003ef4f3507\u003c/code\u003e\u003c/a\u003e fix: prefer-arrow-callback invalid autofix with newline after \u003ccode\u003easync\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20916\"\u003e#20916\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/f78838bc4c86d487e1bcc7cede260c4467721c46\"\u003e\u003ccode\u003ef78838b\u003c/code\u003e\u003c/a\u003e test: add CodePath type coverage (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20904\"\u003e#20904\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/61b0add61ffc52665562be7bb96f526690a78b30\"\u003e\u003ccode\u003e61b0add\u003c/code\u003e\u003c/a\u003e docs: remove deprecated rule from related rules of \u003ccode\u003emax-params\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20921\"\u003e#20921\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/1daa4bd734b79a62e317d0394394a6b38cff49f9\"\u003e\u003ccode\u003e1daa4bd\u003c/code\u003e\u003c/a\u003e chore: update \u003ccode\u003eeslint-plugin-eslint-comments\u003c/code\u003e test data to latest commit (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20\"\u003e#20\u003c/a\u003e...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/002942ce988ea28b78e0a2f3b074081e638b552c\"\u003e\u003ccode\u003e002942c\u003c/code\u003e\u003c/a\u003e ci: declare contents:read on update-readme workflow (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20919\"\u003e#20919\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/eslint/eslint/compare/v9.39.2...v10.4.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `eslint-import-resolver-typescript` from 4.4.4 to 4.4.5\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/import-js/eslint-import-resolver-typescript/releases\"\u003eeslint-import-resolver-typescript's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev4.4.5\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/import-js/eslint-import-resolver-typescript/pull/473\"\u003e#473\u003c/a\u003e \u003ca href=\"https://github.com/import-js/eslint-import-resolver-typescript/commit/32c61abccf26bd2a2267f2e0e67d82e6f88d149a\"\u003e\u003ccode\u003e32c61ab\u003c/code\u003e\u003c/a\u003e Thanks \u003ca href=\"https://github.com/leey0818\"\u003e\u003ccode\u003e@​leey0818\u003c/code\u003e\u003c/a\u003e! - fix: check tsconfig matching before using resolver\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/import-js/eslint-import-resolver-typescript/blob/master/CHANGELOG.md\"\u003eeslint-import-resolver-typescript's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e4.4.5\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/import-js/eslint-import-resolver-typescript/pull/473\"\u003e#473\u003c/a\u003e \u003ca href=\"https://github.com/import-js/eslint-import-resolver-typescript/commit/32c61abccf26bd2a2267f2e0e67d82e6f88d149a\"\u003e\u003ccode\u003e32c61ab\u003c/code\u003e\u003c/a\u003e Thanks \u003ca href=\"https://github.com/leey0818\"\u003e\u003ccode\u003e@​leey0818\u003c/code\u003e\u003c/a\u003e! - fix: check tsconfig matching before using resolver\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/import-js/eslint-import-resolver-typescript/commit/724c47d8c08fa8ffa702c7a94ba53b367a4727fb\"\u003e\u003ccode\u003e724c47d\u003c/code\u003e\u003c/a\u003e chore: release eslint-import-resolver-typescript (\u003ca href=\"https://redirect.github.com/import-js/eslint-import-resolver-typescript/issues/480\"\u003e#480\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/import-js/eslint-import-resolver-typescript/commit/32c61abccf26bd2a2267f2e0e67d82e6f88d149a\"\u003e\u003ccode\u003e32c61ab\u003c/code\u003e\u003c/a\u003e fix: check tsconfig matching before using resolver (\u003ca href=\"https://redirect.github.com/import-js/eslint-import-resolver-typescript/issues/473\"\u003e#473\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/import-js/eslint-import-resolver-typescript/compare/v4.4.4...v4.4.5\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eMaintainer changes\u003c/summary\u003e\n\u003cp\u003eThis version was pushed to npm by \u003ca href=\"https://www.npmjs.com/~GitHub%20Actions\"\u003eGitHub Actions\u003c/a\u003e, a new releaser for eslint-import-resolver-typescript since your current version.\u003c/p\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `eslint-plugin-react-hooks` from 7.0.1 to 7.1.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/facebook/react/releases\"\u003eeslint-plugin-react-hooks's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eeslint-plugin-react-hooks@7.1.1 (April 17, 2026)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eNote:\u003c/strong\u003e 7.1.0 accidentally removed the \u003ccode\u003ecomponent-hook-factories\u003c/code\u003e rule, causing errors for users who referenced it in their ESLint config. This is now fixed.\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdd deprecated no-op \u003ccode\u003ecomponent-hook-factories\u003c/code\u003e rule for backwards compatibility. (\u003ca href=\"https://github.com/mofeiZ\"\u003e\u003ccode\u003e@​mofeiZ\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/36307\"\u003e#36307\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eeslint-plugin-react-hooks@7.1.0 (April 16, 2026)\u003c/h2\u003e\n\u003cp\u003eThis release adds ESLint v10 support, improves performance by skipping compilation for non-React files, and includes compiler lint improvements including better \u003ccode\u003eset-state-in-effect\u003c/code\u003e detection, improved ref validation, and more helpful error reporting.\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdd ESLint v10 support. (\u003ca href=\"https://github.com/azat-io\"\u003e\u003ccode\u003e@​azat-io\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/35720\"\u003e#35720\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSkip compilation for non-React files to improve performance. (\u003ca href=\"https://github.com/josephsavona\"\u003e\u003ccode\u003e@​josephsavona\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/35589\"\u003e#35589\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix exhaustive deps bug with Flow type casting. (\u003ca href=\"https://github.com/jorge-cab\"\u003e\u003ccode\u003e@​jorge-cab\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/35691\"\u003e#35691\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix \u003ccode\u003euseEffectEvent\u003c/code\u003e checks in component syntax. (\u003ca href=\"https://github.com/jbrown215\"\u003e\u003ccode\u003e@​jbrown215\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/35041\"\u003e#35041\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eImproved \u003ccode\u003eset-state-in-effect\u003c/code\u003e validation with fewer false negatives. (\u003ca href=\"https://github.com/jorge-cab\"\u003e\u003ccode\u003e@​jorge-cab\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/fa...\n\n_Description has been truncated_","html_url":"https://github.com/nkTmmT/learning-saas/pull/1","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/nkTmmT%2Flearning-saas/issues/1","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/1/packages"}},{"old_version":"5.1.3","new_version":"5.3.0","update_type":"minor","path":null,"pr_created_at":"2026-06-01T08:55:16.000Z","version_change":"5.1.3 → 5.3.0","issue":{"uuid":"4561712763","node_id":"PR_kwDOR0KTyc7hSmXY","number":9,"state":"closed","title":"deps(deps): bump the all-dependencies group across 1 directory with 69 updates","user":"dependabot[bot]","labels":[],"assignees":[],"locked":false,"comments_count":2,"pull_request":true,"closed_at":"2026-06-08T04:17:33.000Z","author_association":null,"state_reason":null,"created_at":"2026-06-01T08:55:16.000Z","updated_at":"2026-06-08T04:17:34.000Z","time_to_close":588137,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"deps(deps): bump","group_name":"all-dependencies","update_count":69,"packages":[{"name":"@eslint-react/eslint-plugin","old_version":"2.13.0","new_version":"5.8.9","repository_url":"https://github.com/Rel1cx/eslint-react"},{"name":"@eslint/js","old_version":"9.39.2","new_version":"10.0.1","repository_url":"https://github.com/eslint/eslint"},{"name":"@typescript-eslint/eslint-plugin","old_version":"8.56.0","new_version":"8.60.0","repository_url":"https://github.com/typescript-eslint/typescript-eslint"},{"name":"@typescript-eslint/parser","old_version":"8.56.0","new_version":"8.60.0","repository_url":"https://github.com/typescript-eslint/typescript-eslint"},{"name":"eslint","old_version":"9.39.2","new_version":"10.4.1","repository_url":"https://github.com/eslint/eslint"},{"name":"eslint-import-resolver-typescript","old_version":"4.4.4","new_version":"4.4.5","repository_url":"https://github.com/import-js/eslint-import-resolver-typescript"},{"name":"eslint-plugin-react-hooks","old_version":"7.0.1","new_version":"7.1.1","repository_url":"https://github.com/facebook/react"},{"name":"globals","old_version":"17.3.0","new_version":"17.6.0","repository_url":"https://github.com/sindresorhus/globals"},{"name":"graphql","old_version":"16.12.0","new_version":"16.14.0","repository_url":"https://github.com/graphql/graphql-js"},{"name":"happy-dom","old_version":"20.6.2","new_version":"20.9.0","repository_url":"https://github.com/capricorn86/happy-dom"},{"name":"jiti","old_version":"2.6.1","new_version":"2.7.0","repository_url":"https://github.com/unjs/jiti"},{"name":"lint-staged","old_version":"16.2.7","new_version":"17.0.7","repository_url":"https://github.com/lint-staged/lint-staged"},{"name":"mermaid","old_version":"11.12.3","new_version":"11.15.0","repository_url":"https://github.com/mermaid-js/mermaid"},{"name":"prettier","old_version":"3.8.1","new_version":"3.8.3","repository_url":"https://github.com/prettier/prettier"},{"name":"react","old_version":"19.2.4","new_version":"19.2.6","repository_url":"https://github.com/facebook/react"},{"name":"@types/react","old_version":"19.2.14","new_version":"19.2.15","repository_url":"https://github.com/DefinitelyTyped/DefinitelyTyped"},{"name":"typescript","old_version":"5.9.3","new_version":"6.0.3","repository_url":"https://github.com/microsoft/TypeScript"},{"name":"typescript-eslint","old_version":"8.56.0","new_version":"8.60.0","repository_url":"https://github.com/typescript-eslint/typescript-eslint"},{"name":"typescript-language-server","old_version":"5.1.3","new_version":"5.3.0","repository_url":"https://github.com/typescript-language-server/typescript-language-server"},{"name":"vite","old_version":"7.3.1","new_version":"8.0.15","repository_url":"https://github.com/vitejs/vite"},{"name":"vitepress","old_version":"2.0.0-alpha.16","new_version":"2.0.0-alpha.17","repository_url":"https://github.com/vuejs/vitepress"},{"name":"vitepress-plugin-llms","old_version":"1.11.0","new_version":"1.13.1","repository_url":"https://github.com/okineadev/vitepress-plugin-llms"},{"name":"vitest","old_version":"4.0.18","new_version":"4.1.8","repository_url":"https://github.com/vitest-dev/vitest"},{"name":"wrangler","old_version":"4.66.0","new_version":"4.95.0","repository_url":"https://github.com/cloudflare/workers-sdk"},{"name":"@ai-sdk/openai","old_version":"3.0.29","new_version":"3.0.67","repository_url":"https://github.com/vercel/ai"},{"name":"@better-auth/passkey","old_version":"1.4.18","new_version":"1.6.13","repository_url":"https://github.com/better-auth/better-auth"},{"name":"@better-auth/stripe","old_version":"1.4.18","new_version":"1.6.13","repository_url":"https://github.com/better-auth/better-auth"},{"name":"@trpc/server","old_version":"11.10.0","new_version":"11.17.0","repository_url":"https://github.com/trpc/trpc"},{"name":"ai","old_version":"6.0.91","new_version":"6.0.193","repository_url":"https://github.com/vercel/ai"},{"name":"better-auth","old_version":"1.4.18","new_version":"1.6.13","repository_url":"https://github.com/better-auth/better-auth"},{"name":"drizzle-orm","old_version":"0.45.1","new_version":"0.45.2","repository_url":"https://github.com/drizzle-team/drizzle-orm"},{"name":"postgres","old_version":"3.4.8","new_version":"3.4.9","repository_url":"https://github.com/porsager/postgres"},{"name":"resend","old_version":"6.9.2","new_version":"6.12.4","repository_url":"https://github.com/resend/resend-node"},{"name":"stripe","old_version":"20.3.1","new_version":"22.2.0","repository_url":"https://github.com/stripe/stripe-node"},{"name":"@cloudflare/workers-types","old_version":"4.20260218.0","new_version":"4.20260601.1","repository_url":"https://github.com/cloudflare/workerd"},{"name":"@types/bun","old_version":"1.3.9","new_version":"1.3.14","repository_url":"https://github.com/DefinitelyTyped/DefinitelyTyped"},{"name":"hono","old_version":"4.11.10","new_version":"4.12.23","repository_url":"https://github.com/honojs/hono"},{"name":"zod","old_version":"4.3.6","new_version":"4.4.3","repository_url":"https://github.com/colinhacks/zod"},{"name":"@tanstack/react-query","old_version":"5.90.21","new_version":"5.100.14","repository_url":"https://github.com/TanStack/query"},{"name":"@tanstack/react-router","old_version":"1.161.1","new_version":"1.170.10","repository_url":"https://github.com/TanStack/router"},{"name":"@trpc/client","old_version":"11.10.0","new_version":"11.17.0","repository_url":"https://github.com/trpc/trpc"},{"name":"@trpc/tanstack-react-query","old_version":"11.10.0","new_version":"11.17.0","repository_url":"https://github.com/trpc/trpc"},{"name":"jotai","old_version":"2.17.1","new_version":"2.20.0","repository_url":"https://github.com/pmndrs/jotai"},{"name":"jotai-effect","old_version":"2.2.3","new_version":"2.3.1","repository_url":"https://github.com/jotaijs/jotai-effect"},{"name":"lucide-react","old_version":"0.574.0","new_version":"1.17.0","repository_url":"https://github.com/lucide-icons/lucide"},{"name":"react-dom","old_version":"19.2.4","new_version":"19.2.6","repository_url":"https://github.com/facebook/react"},{"name":"react-error-boundary","old_version":"6.1.1","new_version":"6.1.2","repository_url":"https://github.com/bvaughn/react-error-boundary"},{"name":"tailwind-merge","old_version":"3.4.1","new_version":"3.6.0","repository_url":"https://github.com/dcastil/tailwind-merge"},{"name":"@tailwindcss/postcss","old_version":"4.2.0","new_version":"4.3.0","repository_url":"https://github.com/tailwindlabs/tailwindcss"},{"name":"@tanstack/react-query-devtools","old_version":"5.91.3","new_version":"5.100.14","repository_url":"https://github.com/TanStack/query"},{"name":"@tanstack/react-router-devtools","old_version":"1.161.1","new_version":"1.167.0","repository_url":"https://github.com/TanStack/router"},{"name":"@tanstack/router-plugin","old_version":"1.161.1","new_version":"1.168.13","repository_url":"https://github.com/TanStack/router"},{"name":"@types/node","old_version":"25.2.3","new_version":"25.9.1","repository_url":"https://github.com/DefinitelyTyped/DefinitelyTyped"},{"name":"@vitejs/plugin-react","old_version":"5.1.4","new_version":"6.0.2","repository_url":"https://github.com/vitejs/vite-plugin-react"},{"name":"@vitejs/plugin-react-swc","old_version":"4.2.3","new_version":"4.3.1","repository_url":"https://github.com/vitejs/vite-plugin-react"},{"name":"autoprefixer","old_version":"10.4.24","new_version":"10.5.0","repository_url":"https://github.com/postcss/autoprefixer"},{"name":"globby","old_version":"16.1.1","new_version":"16.2.0","repository_url":"https://github.com/sindresorhus/globby"},{"name":"@react-email/components","old_version":"1.0.8","new_version":"1.0.12","repository_url":"https://github.com/resend/react-email"},{"name":"@react-email/render","old_version":"2.0.4","new_version":"2.0.8","repository_url":"https://github.com/resend/react-email"},{"name":"@react-email/preview-server","old_version":"5.2.8","new_version":"5.2.10","repository_url":"https://github.com/resend/react-email"},{"name":"react-email","old_version":"5.2.8","new_version":"6.5.0","repository_url":"https://github.com/resend/react-email"},{"name":"@astrojs/react","old_version":"4.4.2","new_version":"5.0.6","repository_url":"https://github.com/withastro/astro"},{"name":"astro","old_version":"5.17.2","new_version":"6.4.2","repository_url":"https://github.com/withastro/astro"},{"name":"dotenv","old_version":"17.3.1","new_version":"17.4.2","repository_url":"https://github.com/motdotla/dotenv"},{"name":"drizzle-kit","old_version":"0.31.9","new_version":"0.31.10","repository_url":"https://github.com/drizzle-team/drizzle-orm"},{"name":"@modelcontextprotocol/sdk","old_version":"1.26.0","new_version":"1.29.0","repository_url":"https://github.com/modelcontextprotocol/typescript-sdk"},{"name":"got","old_version":"14.6.6","new_version":"15.0.5","repository_url":"https://github.com/sindresorhus/got"}],"path":null,"ecosystem":"npm"},"body":"Bumps the all-dependencies group with 67 updates in the / directory:\n\n| Package | From | To |\n| --- | --- | --- |\n| [@eslint-react/eslint-plugin](https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin) | `2.13.0` | `5.8.9` |\n| [@eslint/js](https://github.com/eslint/eslint/tree/HEAD/packages/js) | `9.39.2` | `10.0.1` |\n| [@typescript-eslint/eslint-plugin](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin) | `8.56.0` | `8.60.0` |\n| [@typescript-eslint/parser](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/parser) | `8.56.0` | `8.60.0` |\n| [eslint](https://github.com/eslint/eslint) | `9.39.2` | `10.4.1` |\n| [eslint-import-resolver-typescript](https://github.com/import-js/eslint-import-resolver-typescript) | `4.4.4` | `4.4.5` |\n| [eslint-plugin-react-hooks](https://github.com/facebook/react/tree/HEAD/packages/eslint-plugin-react-hooks) | `7.0.1` | `7.1.1` |\n| [globals](https://github.com/sindresorhus/globals) | `17.3.0` | `17.6.0` |\n| [graphql](https://github.com/graphql/graphql-js) | `16.12.0` | `16.14.0` |\n| [happy-dom](https://github.com/capricorn86/happy-dom) | `20.6.2` | `20.9.0` |\n| [jiti](https://github.com/unjs/jiti) | `2.6.1` | `2.7.0` |\n| [lint-staged](https://github.com/lint-staged/lint-staged) | `16.2.7` | `17.0.7` |\n| [mermaid](https://github.com/mermaid-js/mermaid) | `11.12.3` | `11.15.0` |\n| [prettier](https://github.com/prettier/prettier) | `3.8.1` | `3.8.3` |\n| [react](https://github.com/facebook/react/tree/HEAD/packages/react) | `19.2.4` | `19.2.6` |\n| [@types/react](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/react) | `19.2.14` | `19.2.15` |\n| [typescript](https://github.com/microsoft/TypeScript) | `5.9.3` | `6.0.3` |\n| [typescript-eslint](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/typescript-eslint) | `8.56.0` | `8.60.0` |\n| [typescript-language-server](https://github.com/typescript-language-server/typescript-language-server) | `5.1.3` | `5.3.0` |\n| [vite](https://github.com/vitejs/vite/tree/HEAD/packages/vite) | `7.3.1` | `8.0.15` |\n| [vitepress](https://github.com/vuejs/vitepress) | `2.0.0-alpha.16` | `2.0.0-alpha.17` |\n| [vitepress-plugin-llms](https://github.com/okineadev/vitepress-plugin-llms) | `1.11.0` | `1.13.1` |\n| [vitest](https://github.com/vitest-dev/vitest/tree/HEAD/packages/vitest) | `4.0.18` | `4.1.8` |\n| [wrangler](https://github.com/cloudflare/workers-sdk/tree/HEAD/packages/wrangler) | `4.66.0` | `4.95.0` |\n| [@ai-sdk/openai](https://github.com/vercel/ai/tree/HEAD/packages/openai) | `3.0.29` | `3.0.67` |\n| [@better-auth/passkey](https://github.com/better-auth/better-auth/tree/HEAD/packages/passkey) | `1.4.18` | `1.6.13` |\n| [@better-auth/stripe](https://github.com/better-auth/better-auth/tree/HEAD/packages/stripe) | `1.4.18` | `1.6.13` |\n| [@trpc/server](https://github.com/trpc/trpc/tree/HEAD/packages/server) | `11.10.0` | `11.17.0` |\n| [ai](https://github.com/vercel/ai/tree/HEAD/packages/ai) | `6.0.91` | `6.0.193` |\n| [better-auth](https://github.com/better-auth/better-auth/tree/HEAD/packages/better-auth) | `1.4.18` | `1.6.13` |\n| [drizzle-orm](https://github.com/drizzle-team/drizzle-orm) | `0.45.1` | `0.45.2` |\n| [postgres](https://github.com/porsager/postgres) | `3.4.8` | `3.4.9` |\n| [resend](https://github.com/resend/resend-node) | `6.9.2` | `6.12.4` |\n| [stripe](https://github.com/stripe/stripe-node) | `20.3.1` | `22.2.0` |\n| [@cloudflare/workers-types](https://github.com/cloudflare/workerd) | `4.20260218.0` | `4.20260601.1` |\n| [@types/bun](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/bun) | `1.3.9` | `1.3.14` |\n| [hono](https://github.com/honojs/hono) | `4.11.10` | `4.12.23` |\n| [zod](https://github.com/colinhacks/zod) | `4.3.6` | `4.4.3` |\n| [@tanstack/react-query](https://github.com/TanStack/query/tree/HEAD/packages/react-query) | `5.90.21` | `5.100.14` |\n| [@tanstack/react-router](https://github.com/TanStack/router/tree/HEAD/packages/react-router) | `1.161.1` | `1.170.10` |\n| [@trpc/client](https://github.com/trpc/trpc/tree/HEAD/packages/client) | `11.10.0` | `11.17.0` |\n| [@trpc/tanstack-react-query](https://github.com/trpc/trpc/tree/HEAD/packages/tanstack-react-query) | `11.10.0` | `11.17.0` |\n| [jotai](https://github.com/pmndrs/jotai) | `2.17.1` | `2.20.0` |\n| [jotai-effect](https://github.com/jotaijs/jotai-effect) | `2.2.3` | `2.3.1` |\n| [lucide-react](https://github.com/lucide-icons/lucide/tree/HEAD/packages/lucide-react) | `0.574.0` | `1.17.0` |\n| [react-dom](https://github.com/facebook/react/tree/HEAD/packages/react-dom) | `19.2.4` | `19.2.6` |\n| [react-error-boundary](https://github.com/bvaughn/react-error-boundary) | `6.1.1` | `6.1.2` |\n| [tailwind-merge](https://github.com/dcastil/tailwind-merge) | `3.4.1` | `3.6.0` |\n| [@tailwindcss/postcss](https://github.com/tailwindlabs/tailwindcss/tree/HEAD/packages/@tailwindcss-postcss) | `4.2.0` | `4.3.0` |\n| [@tanstack/react-query-devtools](https://github.com/TanStack/query/tree/HEAD/packages/react-query-devtools) | `5.91.3` | `5.100.14` |\n| [@tanstack/react-router-devtools](https://github.com/TanStack/router/tree/HEAD/packages/react-router-devtools) | `1.161.1` | `1.167.0` |\n| [@tanstack/router-plugin](https://github.com/TanStack/router/tree/HEAD/packages/router-plugin) | `1.161.1` | `1.168.13` |\n| [@types/node](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/node) | `25.2.3` | `25.9.1` |\n| [@vitejs/plugin-react](https://github.com/vitejs/vite-plugin-react/tree/HEAD/packages/plugin-react) | `5.1.4` | `6.0.2` |\n| [@vitejs/plugin-react-swc](https://github.com/vitejs/vite-plugin-react/tree/HEAD/packages/plugin-react-swc) | `4.2.3` | `4.3.1` |\n| [autoprefixer](https://github.com/postcss/autoprefixer) | `10.4.24` | `10.5.0` |\n| [globby](https://github.com/sindresorhus/globby) | `16.1.1` | `16.2.0` |\n| [@react-email/components](https://github.com/resend/react-email/tree/HEAD/packages/components) | `1.0.8` | `1.0.12` |\n| [@react-email/render](https://github.com/resend/react-email/tree/HEAD/packages/render) | `2.0.4` | `2.0.8` |\n| [@react-email/preview-server](https://github.com/resend/react-email/tree/HEAD/packages/preview-server) | `5.2.8` | `5.2.10` |\n| [react-email](https://github.com/resend/react-email/tree/HEAD/packages/react-email) | `5.2.8` | `6.5.0` |\n| [@astrojs/react](https://github.com/withastro/astro/tree/HEAD/packages/integrations/react) | `4.4.2` | `5.0.6` |\n| [astro](https://github.com/withastro/astro/tree/HEAD/packages/astro) | `5.17.2` | `6.4.2` |\n| [dotenv](https://github.com/motdotla/dotenv) | `17.3.1` | `17.4.2` |\n| [drizzle-kit](https://github.com/drizzle-team/drizzle-orm) | `0.31.9` | `0.31.10` |\n| [@modelcontextprotocol/sdk](https://github.com/modelcontextprotocol/typescript-sdk) | `1.26.0` | `1.29.0` |\n| [got](https://github.com/sindresorhus/got) | `14.6.6` | `15.0.5` |\n\n\nUpdates `@eslint-react/eslint-plugin` from 2.13.0 to 5.8.9\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/Rel1cx/eslint-react/releases\"\u003e@​eslint-react/eslint-plugin's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev5.8.9 (2026-06-01)\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003ch3\u003e🐞 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003e\u003ccode\u003ereact-x/no-direct-mutation-state\u003c/code\u003e\u003c/strong\u003e: Detect nested state mutations and member expressions in assignment expressions (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1818\"\u003e#1818\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e📝 Documentation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpdated contributing guide and monorepo structure documentation.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🏗️ Internal\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eExamples\u003c/strong\u003e: Removed \u003ccode\u003e.vscode\u003c/code\u003e directories from all examples, added missing \u003ccode\u003eengines.node\u003c/code\u003e to Preact examples, cleaned up redundant \u003ccode\u003e.config/*.ts\u003c/code\u003e from \u003ccode\u003etsconfig.node.json\u003c/code\u003e, and updated \u003ccode\u003e.gitignore\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eWebsite\u003c/strong\u003e: Cleaned up configs and docs.\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eDeps\u003c/strong\u003e: Patch bumped \u003ccode\u003eeslint\u003c/code\u003e, \u003ccode\u003etinyglobby\u003c/code\u003e, and \u003ccode\u003etsdown\u003c/code\u003e across workspace packages; added \u003ccode\u003e@fontsource/iosevka-aile\u003c/code\u003e to the website; reordered CSS imports in \u003ccode\u003elayout.tsx\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003eUpdated \u003ccode\u003e.sentrux\u003c/code\u003e baseline timestamp.\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/Rel1cx/eslint-react/compare/v5.8.8...v5.8.9\"\u003ehttps://github.com/Rel1cx/eslint-react/compare/v5.8.8...v5.8.9\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003eAttestation\u003c/h2\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/attestations/29343471\"\u003ehttps://github.com/Rel1cx/eslint-react/attestations/29343471\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev5.8.8 (2026-05-31)\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003ch3\u003e📝 Documentation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003e\u003ccode\u003ekit\u003c/code\u003e\u003c/strong\u003e: Added \u003ccode\u003eis.APICall\u003c/code\u003e callout to the Kit documentation (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1813\"\u003e#1813\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003e\u003ccode\u003ejsx\u003c/code\u003e\u003c/strong\u003e: Updated \u003ccode\u003egetChildren\u003c/code\u003e and \u003ccode\u003ehasChildren\u003c/code\u003e API documentation to reflect empty string children behavior.\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eWebsite\u003c/strong\u003e: Reworked status emoji indicators across docs and examples (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1816\"\u003e#1816\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eWebsite\u003c/strong\u003e: Added ℞ prefix to recipe titles and cleaned up See Also sections.\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eWebsite\u003c/strong\u003e: Removed the \u003ccode\u003ecustom-rules-of-children\u003c/code\u003e recipe and cross-linked the remaining recipes.\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eWebsite\u003c/strong\u003e: Added redirects for moved rule documentation.\u003c/li\u003e\n\u003cli\u003eCleaned up the \u0026quot;Community Maintained Presets that use ESLint React\u0026quot; documentation page.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🏗️ Internal\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003e\u003ccode\u003ereact-x/no-misused-capture-owner-stack\u003c/code\u003e\u003c/strong\u003e: Added edge-case tests for \u003ccode\u003ecaptureOwnerStack\u003c/code\u003e (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1813\"\u003e#1813\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eWebsite\u003c/strong\u003e: Updated fonts and dropped the \u003ccode\u003edata-theme\u003c/code\u003e attribute.\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eWebsite\u003c/strong\u003e: Updated theme configuration (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1815\"\u003e#1815\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eMonorepo\u003c/strong\u003e: Aligned the \u003ccode\u003etsdown\u003c/code\u003e version in \u003ccode\u003e@local/configs\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003epnpm-workspace\u003c/strong\u003e: Enabled \u003ccode\u003etrustPolicy: \u0026quot;no-downgrade\u0026quot;\u003c/code\u003e and added \u003ccode\u003eminimumReleaseAge: 1440\u003c/code\u003e (1 day).\u003c/li\u003e\n\u003cli\u003eBumped \u003ccode\u003eeslint\u003c/code\u003e to \u003ccode\u003e10.4.1\u003c/code\u003e across workspace packages.\u003c/li\u003e\n\u003cli\u003eBumped \u003ccode\u003epnpm\u003c/code\u003e to \u003ccode\u003e11.5.0\u003c/code\u003e and refreshed the lockfile.\u003c/li\u003e\n\u003cli\u003eBumped \u003ccode\u003efumadocs\u003c/code\u003e packages and \u003ccode\u003etinyexec\u003c/code\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/Rel1cx/eslint-react/blob/main/CHANGELOG.md\"\u003e@​eslint-react/eslint-plugin's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev5.8.9 (2026-06-01)\u003c/h2\u003e\n\u003ch3\u003e🐞 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003e\u003ccode\u003ereact-x/no-direct-mutation-state\u003c/code\u003e\u003c/strong\u003e: Detect nested state mutations and member expressions in assignment expressions (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1818\"\u003e#1818\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e📝 Documentation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpdated contributing guide and monorepo structure documentation.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🏗️ Internal\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eExamples\u003c/strong\u003e: Removed \u003ccode\u003e.vscode\u003c/code\u003e directories from all examples, added missing \u003ccode\u003eengines.node\u003c/code\u003e to Preact examples, cleaned up redundant \u003ccode\u003e.config/*.ts\u003c/code\u003e from \u003ccode\u003etsconfig.node.json\u003c/code\u003e, and updated \u003ccode\u003e.gitignore\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eWebsite\u003c/strong\u003e: Cleaned up configs and docs.\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eDeps\u003c/strong\u003e: Patch bumped \u003ccode\u003eeslint\u003c/code\u003e, \u003ccode\u003etinyglobby\u003c/code\u003e, and \u003ccode\u003etsdown\u003c/code\u003e across workspace packages; added \u003ccode\u003e@fontsource/iosevka-aile\u003c/code\u003e to the website; reordered CSS imports in \u003ccode\u003elayout.tsx\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003eUpdated \u003ccode\u003e.sentrux\u003c/code\u003e baseline timestamp.\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/Rel1cx/eslint-react/compare/v5.8.8...v5.8.9\"\u003ehttps://github.com/Rel1cx/eslint-react/compare/v5.8.8...v5.8.9\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev5.8.8 (2026-05-31)\u003c/h2\u003e\n\u003ch3\u003e📝 Documentation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003e\u003ccode\u003ekit\u003c/code\u003e\u003c/strong\u003e: Added \u003ccode\u003eis.APICall\u003c/code\u003e callout to the Kit documentation (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1813\"\u003e#1813\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003e\u003ccode\u003ejsx\u003c/code\u003e\u003c/strong\u003e: Updated \u003ccode\u003egetChildren\u003c/code\u003e and \u003ccode\u003ehasChildren\u003c/code\u003e API documentation to reflect empty string children behavior.\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eWebsite\u003c/strong\u003e: Reworked status emoji indicators across docs and examples (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1816\"\u003e#1816\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eWebsite\u003c/strong\u003e: Added ℞ prefix to recipe titles and cleaned up See Also sections.\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eWebsite\u003c/strong\u003e: Removed the \u003ccode\u003ecustom-rules-of-children\u003c/code\u003e recipe and cross-linked the remaining recipes.\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eWebsite\u003c/strong\u003e: Added redirects for moved rule documentation.\u003c/li\u003e\n\u003cli\u003eCleaned up the \u0026quot;Community Maintained Presets that use ESLint React\u0026quot; documentation page.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🏗️ Internal\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003e\u003ccode\u003ereact-x/no-misused-capture-owner-stack\u003c/code\u003e\u003c/strong\u003e: Added edge-case tests for \u003ccode\u003ecaptureOwnerStack\u003c/code\u003e (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1813\"\u003e#1813\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eWebsite\u003c/strong\u003e: Updated fonts and dropped the \u003ccode\u003edata-theme\u003c/code\u003e attribute.\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eWebsite\u003c/strong\u003e: Updated theme configuration (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1815\"\u003e#1815\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eMonorepo\u003c/strong\u003e: Aligned the \u003ccode\u003etsdown\u003c/code\u003e version in \u003ccode\u003e@local/configs\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003epnpm-workspace\u003c/strong\u003e: Enabled \u003ccode\u003etrustPolicy: \u0026quot;no-downgrade\u0026quot;\u003c/code\u003e and added \u003ccode\u003eminimumReleaseAge: 1440\u003c/code\u003e (1 day).\u003c/li\u003e\n\u003cli\u003eBumped \u003ccode\u003eeslint\u003c/code\u003e to \u003ccode\u003e10.4.1\u003c/code\u003e across workspace packages.\u003c/li\u003e\n\u003cli\u003eBumped \u003ccode\u003epnpm\u003c/code\u003e to \u003ccode\u003e11.5.0\u003c/code\u003e and refreshed the lockfile.\u003c/li\u003e\n\u003cli\u003eBumped \u003ccode\u003efumadocs\u003c/code\u003e packages and \u003ccode\u003etinyexec\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003eBumped \u003ccode\u003eeslint-plugin-package-json\u003c/code\u003e to \u003ccode\u003e1.2.0\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003eUpdated dprint plugins and reformatted font families in example projects.\u003c/li\u003e\n\u003cli\u003eUpdated Sentrux baseline metrics.\u003c/li\u003e\n\u003cli\u003eUpdated \u003ccode\u003e.gitignore\u003c/code\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/Rel1cx/eslint-react/compare/v5.8.7...v5.8.8\"\u003ehttps://github.com/Rel1cx/eslint-react/compare/v5.8.7...v5.8.8\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev5.8.7 (2026-05-29)\u003c/h2\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/ff9258dc21cd08546d20e8596d2de9e5387a6875\"\u003e\u003ccode\u003eff9258d\u003c/code\u003e\u003c/a\u003e release: 5.8.9\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/60e2514c793e3f7c06f6bb1f81ac6a20da014cfa\"\u003e\u003ccode\u003e60e2514\u003c/code\u003e\u003c/a\u003e release: 5.8.8\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/5b62a422ea43365ed2abab803a95f34cab47a335\"\u003e\u003ccode\u003e5b62a42\u003c/code\u003e\u003c/a\u003e Update baseline timestamp and bump eslint to 10.4.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/0e85aa0e12f2f1cfe0c0203908f0a4e32e4c8c06\"\u003e\u003ccode\u003e0e85aa0\u003c/code\u003e\u003c/a\u003e release: 5.8.7\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/d2e2d2db15ca432a571831238bdfca72a5485d9f\"\u003e\u003ccode\u003ed2e2d2d\u003c/code\u003e\u003c/a\u003e release: 5.8.7-beta.5\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/7f9bd4a174d1ff660087c82d28ba6faea375c791\"\u003e\u003ccode\u003e7f9bd4a\u003c/code\u003e\u003c/a\u003e release: 5.8.7-beta.4\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/449f940c05ff05556d8af9b7bcc3098bcef463a9\"\u003e\u003ccode\u003e449f940\u003c/code\u003e\u003c/a\u003e docs: fix inaccurate minimum ESLint version and off preset description in README\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/846014c8c4d4cfe8b22a67424f2c15b339f8bb1f\"\u003e\u003ccode\u003e846014c\u003c/code\u003e\u003c/a\u003e release: 5.8.7-beta.3\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/9ad3404c5ae8a48c14a6e23b121250ec78364f85\"\u003e\u003ccode\u003e9ad3404\u003c/code\u003e\u003c/a\u003e release: 5.8.7-beta.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/a29c464e7111dd9df50d549c9b749f4254a68014\"\u003e\u003ccode\u003ea29c464\u003c/code\u003e\u003c/a\u003e release: 5.8.7-beta.1\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/Rel1cx/eslint-react/commits/v5.8.9/plugins/eslint-plugin\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@eslint/js` from 9.39.2 to 10.0.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/eslint/eslint/releases\"\u003e@​eslint/js's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev10.0.1\u003c/h2\u003e\n\u003ch2\u003eBug Fixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/c87d5bded54c5cf491eb04c24c9d09bbbd42c23e\"\u003e\u003ccode\u003ec87d5bd\u003c/code\u003e\u003c/a\u003e fix: update eslint (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20531\"\u003e#20531\u003c/a\u003e) (renovate[bot])\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/d84100115c14691691058f00779c94e74fca946a\"\u003e\u003ccode\u003ed841001\u003c/code\u003e\u003c/a\u003e fix: update \u003ccode\u003eminimatch\u003c/code\u003e to \u003ccode\u003e10.2.1\u003c/code\u003e to address security vulnerabilities (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20519\"\u003e#20519\u003c/a\u003e) (루밀LuMir)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/04c21475b3004904948f02049f2888b401d82c78\"\u003e\u003ccode\u003e04c2147\u003c/code\u003e\u003c/a\u003e fix: update error message for unused suppressions (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20496\"\u003e#20496\u003c/a\u003e) (fnx)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/38b089c1726feac0e31a31d47941bd99e29ce003\"\u003e\u003ccode\u003e38b089c\u003c/code\u003e\u003c/a\u003e fix: update dependency \u003ccode\u003e@​eslint/config-array\u003c/code\u003e to ^0.23.1 (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20484\"\u003e#20484\u003c/a\u003e) (renovate[bot])\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eDocumentation\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/5b3dbce50a1404a9f118afe810cefeee79388a2a\"\u003e\u003ccode\u003e5b3dbce\u003c/code\u003e\u003c/a\u003e docs: add AI acknowledgement section to templates (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20431\"\u003e#20431\u003c/a\u003e) (루밀LuMir)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/6f23076037d5879f20fb3be2ef094293b1e8d38c\"\u003e\u003ccode\u003e6f23076\u003c/code\u003e\u003c/a\u003e docs: toggle nav in no-JS mode (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20476\"\u003e#20476\u003c/a\u003e) (Tanuj Kanti)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/b69cfb32a16c5d5e9986390d484fae1d21e406f9\"\u003e\u003ccode\u003eb69cfb3\u003c/code\u003e\u003c/a\u003e docs: Update README (GitHub Actions Bot)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eChores\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/e5c281ffd038a3a7a3e5364db0b9378e0ad83020\"\u003e\u003ccode\u003ee5c281f\u003c/code\u003e\u003c/a\u003e chore: updates for v9.39.3 release (Jenkins)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/8c3832adb77cd993b4a24891900d5eeaaf093cdc\"\u003e\u003ccode\u003e8c3832a\u003c/code\u003e\u003c/a\u003e chore: update \u003ccode\u003e@​typescript-eslint/parser\u003c/code\u003e to ^8.56.0 (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20514\"\u003e#20514\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/8330d238ae6adb68bb6a1c9381e38cfedd990d94\"\u003e\u003ccode\u003e8330d23\u003c/code\u003e\u003c/a\u003e test: add tests for config-api (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20493\"\u003e#20493\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/37d6e91e88fa6a2ca6d8726679096acff21ba6cc\"\u003e\u003ccode\u003e37d6e91\u003c/code\u003e\u003c/a\u003e chore: remove eslint v10 prereleases from eslint-config-eslint deps (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20494\"\u003e#20494\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/da7cd0e79197ad16e17052eef99df141de6dbfb1\"\u003e\u003ccode\u003eda7cd0e\u003c/code\u003e\u003c/a\u003e refactor: cleanup error message templates (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20479\"\u003e#20479\u003c/a\u003e) (Francesco Trotta)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/84fb885d49ac810e79a9491276b4828b53d913e5\"\u003e\u003ccode\u003e84fb885\u003c/code\u003e\u003c/a\u003e chore: package.json update for \u003ccode\u003e@​eslint/js\u003c/code\u003e release (Jenkins)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/1f667344b57c4c09b548d94bcfac1f91b6e5c63d\"\u003e\u003ccode\u003e1f66734\u003c/code\u003e\u003c/a\u003e chore: add \u003ccode\u003eeslint\u003c/code\u003e to \u003ccode\u003epeerDependencies\u003c/code\u003e of \u003ccode\u003e@eslint/js\u003c/code\u003e (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20467\"\u003e#20467\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev10.0.0\u003c/h2\u003e\n\u003ch2\u003eBreaking Changes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/f9e54f43a5e497cdfa179338b431093245cb787b\"\u003e\u003ccode\u003ef9e54f4\u003c/code\u003e\u003c/a\u003e feat!: estimate rule-tester failure location (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20420\"\u003e#20420\u003c/a\u003e) (ST-DDT)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/a176319d8ade1a7d9b2d7fb8f038f55a2662325f\"\u003e\u003ccode\u003ea176319\u003c/code\u003e\u003c/a\u003e feat!: replace \u003ccode\u003echalk\u003c/code\u003e with \u003ccode\u003estyleText\u003c/code\u003e and add \u003ccode\u003ecolor\u003c/code\u003e to \u003ccode\u003eResultsMeta\u003c/code\u003e (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20227\"\u003e#20227\u003c/a\u003e) (루밀LuMir)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/c7046e6c1e03c4ca0eee4888a1f2eba4c6454f84\"\u003e\u003ccode\u003ec7046e6\u003c/code\u003e\u003c/a\u003e feat!: enable JSX reference tracking (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20152\"\u003e#20152\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/fa31a608901684fbcd9906d1907e66561d16e5aa\"\u003e\u003ccode\u003efa31a60\u003c/code\u003e\u003c/a\u003e feat!: add \u003ccode\u003ename\u003c/code\u003e to configs (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20015\"\u003e#20015\u003c/a\u003e) (Kirk Waiblinger)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/3383e7ec9028166cafc8ea7986c2f7498d0049f0\"\u003e\u003ccode\u003e3383e7e\u003c/code\u003e\u003c/a\u003e fix!: remove deprecated \u003ccode\u003eSourceCode\u003c/code\u003e methods (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20137\"\u003e#20137\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/501abd0e916a35554c58b7c0365537f1fa3880ce\"\u003e\u003ccode\u003e501abd0\u003c/code\u003e\u003c/a\u003e feat!: update dependency minimatch to v10 (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20246\"\u003e#20246\u003c/a\u003e) (renovate[bot])\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/ca4d3b40085de47561f89656a2207d09946ed45e\"\u003e\u003ccode\u003eca4d3b4\u003c/code\u003e\u003c/a\u003e fix!: stricter rule tester assertions for valid test cases (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20125\"\u003e#20125\u003c/a\u003e) (唯然)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/96512a66c86402fb0538cdcb6cd30b9073f6bf3b\"\u003e\u003ccode\u003e96512a6\u003c/code\u003e\u003c/a\u003e fix!: Remove deprecated rule context methods (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20086\"\u003e#20086\u003c/a\u003e) (Nicholas C. Zakas)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/c69fdacdb2e886b9d965568a397aa8220db3fe90\"\u003e\u003ccode\u003ec69fdac\u003c/code\u003e\u003c/a\u003e feat!: remove eslintrc support (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20037\"\u003e#20037\u003c/a\u003e) (Francesco Trotta)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/208b5cc34a8374ff81412b5bec2e0800eebfbd04\"\u003e\u003ccode\u003e208b5cc\u003c/code\u003e\u003c/a\u003e feat!: Use \u003ccode\u003eScopeManager#addGlobals()\u003c/code\u003e (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20132\"\u003e#20132\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/a2ee188ea7a38a0c6155f3d39e2b00e1d0f36e14\"\u003e\u003ccode\u003ea2ee188\u003c/code\u003e\u003c/a\u003e fix!: add \u003ccode\u003euniqueItems: true\u003c/code\u003e in \u003ccode\u003eno-invalid-regexp\u003c/code\u003e option (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20155\"\u003e#20155\u003c/a\u003e) (Tanuj Kanti)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/a89059dbf2832d417dd493ee81483227ec44e4ab\"\u003e\u003ccode\u003ea89059d\u003c/code\u003e\u003c/a\u003e feat!: Program range span entire source text (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20133\"\u003e#20133\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/39a6424373d915fa9de0d7b0caba9a4dc3da9b53\"\u003e\u003ccode\u003e39a6424\u003c/code\u003e\u003c/a\u003e fix!: assert 'text' is a string across all RuleFixer methods (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20082\"\u003e#20082\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/f28fbf846244e043c92b355b224d121b06140b44\"\u003e\u003ccode\u003ef28fbf8\u003c/code\u003e\u003c/a\u003e fix!: Deprecate \u003ccode\u003e\u0026quot;always\u0026quot;\u003c/code\u003e and \u003ccode\u003e\u0026quot;as-needed\u0026quot;\u003c/code\u003e options of the \u003ccode\u003eradix\u003c/code\u003e rule (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20223\"\u003e#20223\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/aa3fb2b233e929b37220be940575f42c280e0b98\"\u003e\u003ccode\u003eaa3fb2b\u003c/code\u003e\u003c/a\u003e fix!: tighten \u003ccode\u003efunc-names\u003c/code\u003e schema (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20119\"\u003e#20119\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/f6c0ed0311dcfee853367d5068c765d066e6b756\"\u003e\u003ccode\u003ef6c0ed0\u003c/code\u003e\u003c/a\u003e feat!: report \u003ccode\u003eeslint-env\u003c/code\u003e comments as errors (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20128\"\u003e#20128\u003c/a\u003e) (Francesco Trotta)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/4bf739fb533e59f7f0a66b65f7bc80be0f37d8db\"\u003e\u003ccode\u003e4bf739f\u003c/code\u003e\u003c/a\u003e fix!: remove deprecated \u003ccode\u003eLintMessage#nodeType\u003c/code\u003e and \u003ccode\u003eTestCaseError#type\u003c/code\u003e (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20096\"\u003e#20096\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/523c076866400670fb2192a3f55dbf7ad3469247\"\u003e\u003ccode\u003e523c076\u003c/code\u003e\u003c/a\u003e feat!: drop support for jiti \u0026lt; 2.2.0 (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20016\"\u003e#20016\u003c/a\u003e) (michael faith)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/454a292c95f34dad232411ddac06408e6383bb64\"\u003e\u003ccode\u003e454a292\u003c/code\u003e\u003c/a\u003e feat!: update \u003ccode\u003eeslint:recommended\u003c/code\u003e configuration (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20210\"\u003e#20210\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/4f880ee02992e1bf0e96ebaba679985e2d1295f1\"\u003e\u003ccode\u003e4f880ee\u003c/code\u003e\u003c/a\u003e feat!: remove \u003ccode\u003ev10_*\u003c/code\u003e and inactive \u003ccode\u003eunstable_*\u003c/code\u003e flags (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20225\"\u003e#20225\u003c/a\u003e) (sethamus)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/f18115c363a4ac7671a4c7f30ee13d57ebba330f\"\u003e\u003ccode\u003ef18115c\u003c/code\u003e\u003c/a\u003e feat!: \u003ccode\u003eno-shadow-restricted-names\u003c/code\u003e report \u003ccode\u003eglobalThis\u003c/code\u003e by default (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20027\"\u003e#20027\u003c/a\u003e) (sethamus)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/c6358c31fbd3937b92d89be2618ffdf5a774604e\"\u003e\u003ccode\u003ec6358c3\u003c/code\u003e\u003c/a\u003e feat!: Require Node.js \u003ccode\u003e^20.19.0 || ^22.13.0 || \u0026gt;=24\u003c/code\u003e (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20160\"\u003e#20160\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eFeatures\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/bff9091927811497dbf066b0e3b85ecb37d43822\"\u003e\u003ccode\u003ebff9091\u003c/code\u003e\u003c/a\u003e feat: handle \u003ccode\u003eArray.fromAsync\u003c/code\u003e in \u003ccode\u003earray-callback-return\u003c/code\u003e (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20457\"\u003e#20457\u003c/a\u003e) (Francesco Trotta)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/290c594bb50c439fb71bc75521ee5360daa8c222\"\u003e\u003ccode\u003e290c594\u003c/code\u003e\u003c/a\u003e feat: add \u003ccode\u003eself\u003c/code\u003e to \u003ccode\u003eno-implied-eval\u003c/code\u003e rule (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20468\"\u003e#20468\u003c/a\u003e) (sethamus)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/43677de07ebd6e14bfac40a46ad749ba783c45f2\"\u003e\u003ccode\u003e43677de\u003c/code\u003e\u003c/a\u003e feat: fix handling of function and class expression names in \u003ccode\u003eno-shadow\u003c/code\u003e (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20432\"\u003e#20432\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/84fb885d49ac810e79a9491276b4828b53d913e5\"\u003e\u003ccode\u003e84fb885\u003c/code\u003e\u003c/a\u003e chore: package.json update for \u003ccode\u003e@​eslint/js\u003c/code\u003e release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/1f667344b57c4c09b548d94bcfac1f91b6e5c63d\"\u003e\u003ccode\u003e1f66734\u003c/code\u003e\u003c/a\u003e chore: add \u003ccode\u003eeslint\u003c/code\u003e to \u003ccode\u003epeerDependencies\u003c/code\u003e of \u003ccode\u003e@eslint/js\u003c/code\u003e (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20467\"\u003e#20467\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/f3fbc2f60cbe2c718364feb8c3fc0452c0df3c56\"\u003e\u003ccode\u003ef3fbc2f\u003c/code\u003e\u003c/a\u003e chore: set \u003ccode\u003e@eslint/js\u003c/code\u003e version to 10.0.0 to skip releasing it (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20466\"\u003e#20466\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/b4b3127f8542c599ce2dea804b6582ebc40c993d\"\u003e\u003ccode\u003eb4b3127\u003c/code\u003e\u003c/a\u003e chore: package.json update for \u003ccode\u003e@​eslint/js\u003c/code\u003e release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/0b14059491d830a49b3577931f4f68fbcfce6be5\"\u003e\u003ccode\u003e0b14059\u003c/code\u003e\u003c/a\u003e chore: package.json update for \u003ccode\u003e@​eslint/js\u003c/code\u003e release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/fa31a608901684fbcd9906d1907e66561d16e5aa\"\u003e\u003ccode\u003efa31a60\u003c/code\u003e\u003c/a\u003e feat!: add \u003ccode\u003ename\u003c/code\u003e to configs (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20015\"\u003e#20015\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/1e2cad5f6fa47ed6ed89d2a29798dda926d50990\"\u003e\u003ccode\u003e1e2cad5\u003c/code\u003e\u003c/a\u003e chore: package.json update for \u003ccode\u003e@​eslint/js\u003c/code\u003e release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/454a292c95f34dad232411ddac06408e6383bb64\"\u003e\u003ccode\u003e454a292\u003c/code\u003e\u003c/a\u003e feat!: update \u003ccode\u003eeslint:recommended\u003c/code\u003e configuration (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20210\"\u003e#20210\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/c6358c31fbd3937b92d89be2618ffdf5a774604e\"\u003e\u003ccode\u003ec6358c3\u003c/code\u003e\u003c/a\u003e feat!: Require Node.js \u003ccode\u003e^20.19.0 || ^22.13.0 || \u0026gt;=24\u003c/code\u003e (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20160\"\u003e#20160\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/eslint/eslint/commits/v10.0.1/packages/js\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@typescript-eslint/eslint-plugin` from 8.56.0 to 8.60.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases\"\u003e@​typescript-eslint/eslint-plugin's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev8.60.0\u003c/h2\u003e\n\u003ch2\u003e8.60.0 (2026-05-25)\u003c/h2\u003e\n\u003ch3\u003e🚀 Features\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003erule-tester:\u003c/strong\u003e added updates of RuleTester from upstream (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12291\"\u003e#12291\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🩹 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eplayground TS version selector is not working (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12326\"\u003e#12326\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/issues/12325\"\u003e#12325\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e❤️ Thank You\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eEvyatar Daud \u003ca href=\"https://github.com/StyleShit\"\u003e\u003ccode\u003e@​StyleShit\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eVinccool96\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.60.0\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003ev8.59.4\u003c/h2\u003e\n\u003ch2\u003e8.59.4 (2026-05-18)\u003c/h2\u003e\n\u003ch3\u003e🩹 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-floating-promises] stack overflow when using recursive types (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12294\"\u003e#12294\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eproject-service:\u003c/strong\u003e throw error cause in \u003ccode\u003egetParsedConfigFileFromTSServer\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12321\"\u003e#12321\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003etypescript-eslint:\u003c/strong\u003e export Compatible* types from typescript-eslint to resolve pnpm TS error (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12340\"\u003e#12340\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e❤️ Thank You\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eEvyatar Daud \u003ca href=\"https://github.com/StyleShit\"\u003e\u003ccode\u003e@​StyleShit\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eKirk Waiblinger \u003ca href=\"https://github.com/kirkwaiblinger\"\u003e\u003ccode\u003e@​kirkwaiblinger\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003elumir\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.4\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003ev8.59.3\u003c/h2\u003e\n\u003ch2\u003e8.59.3 (2026-05-11)\u003c/h2\u003e\n\u003cp\u003eThis was a version bump only, there were no code changes.\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.3\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003ev8.59.2\u003c/h2\u003e\n\u003ch2\u003e8.59.2 (2026-05-04)\u003c/h2\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/CHANGELOG.md\"\u003e@​typescript-eslint/eslint-plugin's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e8.60.0 (2026-05-25)\u003c/h2\u003e\n\u003cp\u003eThis was a version bump only for eslint-plugin to align it with other projects, there were no code changes.\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.60.0\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003e8.59.4 (2026-05-18)\u003c/h2\u003e\n\u003ch3\u003e🩹 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-floating-promises] stack overflow when using recursive types (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12294\"\u003e#12294\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e❤️ Thank You\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eEvyatar Daud \u003ca href=\"https://github.com/StyleShit\"\u003e\u003ccode\u003e@​StyleShit\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.4\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003e8.59.3 (2026-05-11)\u003c/h2\u003e\n\u003cp\u003eThis was a version bump only for eslint-plugin to align it with other projects, there were no code changes.\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.3\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003e8.59.2 (2026-05-04)\u003c/h2\u003e\n\u003ch3\u003e🩹 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-deprecated] object destructuring values should be treated as declarations (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12292\"\u003e#12292\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unsafe-type-assertion] handle crash on recursive template literal types (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12150\"\u003e#12150\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e❤️ Thank You\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eDima Barabash\u003c/li\u003e\n\u003cli\u003eKirk Waiblinger \u003ca href=\"https://github.com/kirkwaiblinger\"\u003e\u003ccode\u003e@​kirkwaiblinger\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.2\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003e8.59.1 (2026-04-27)\u003c/h2\u003e\n\u003ch3\u003e🩹 Fixes\u003c/h3\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/f891c29de5f3e23f3d8c59cc599d3196e54e9b58\"\u003e\u003ccode\u003ef891c29\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.60.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/ca6ca1431b6d18235297a7e29feb5d98f012dff2\"\u003e\u003ccode\u003eca6ca14\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.59.4\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/4302433ae6bf93d4ddc35264ad1b951254758566\"\u003e\u003ccode\u003e4302433\u003c/code\u003e\u003c/a\u003e fix(eslint-plugin): [no-floating-promises] stack overflow when using recursiv...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/10b79f1ba8e98610a3af85152a1b3b406f91e633\"\u003e\u003ccode\u003e10b79f1\u003c/code\u003e\u003c/a\u003e chore(deps): update dependency eslint to v10.4.0 (\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin/issues/12339\"\u003e#12339\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/2a6765d9628dc776f8127c96f088bb807c0bcab2\"\u003e\u003ccode\u003e2a6765d\u003c/code\u003e\u003c/a\u003e chore: clenaup \u003ccode\u003egetAwaitedType\u003c/code\u003e from \u003ccode\u003etypescript.d.ts\u003c/code\u003e (\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin/issues/12302\"\u003e#12302\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/48e13c0261e3cb1bf4f4dfaa462cdb3a56ef7383\"\u003e\u003ccode\u003e48e13c0\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.59.3\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/e26dc8003ababf078aad4df17765ee4cea30644c\"\u003e\u003ccode\u003ee26dc80\u003c/code\u003e\u003c/a\u003e docs: update stale links to latest (\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin/issues/12313\"\u003e#12313\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/44f9625336841a8ee3eb01a9e02e49b1d7b12648\"\u003e\u003ccode\u003e44f9625\u003c/code\u003e\u003c/a\u003e chore(deps): update vitest monorepo to v4.1.5 (\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin/issues/12307\"\u003e#12307\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/2ec35f1760aade4df4c631d76d78c7ed5e136333\"\u003e\u003ccode\u003e2ec35f1\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.59.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/ec3ef25390f7daf5a9ff33a60282bdbbb49ab0f3\"\u003e\u003ccode\u003eec3ef25\u003c/code\u003e\u003c/a\u003e test: make no-useless-empty-export tests fully static (\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin/issues/12260\"\u003e#12260\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commits/v8.60.0/packages/eslint-plugin\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@typescript-eslint/parser` from 8.56.0 to 8.60.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases\"\u003e@​typescript-eslint/parser's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev8.60.0\u003c/h2\u003e\n\u003ch2\u003e8.60.0 (2026-05-25)\u003c/h2\u003e\n\u003ch3\u003e🚀 Features\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003erule-tester:\u003c/strong\u003e added updates of RuleTester from upstream (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12291\"\u003e#12291\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🩹 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eplayground TS version selector is not working (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12326\"\u003e#12326\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/issues/12325\"\u003e#12325\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e❤️ Thank You\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eEvyatar Daud \u003ca href=\"https://github.com/StyleShit\"\u003e\u003ccode\u003e@​StyleShit\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eVinccool96\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.60.0\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003ev8.59.4\u003c/h2\u003e\n\u003ch2\u003e8.59.4 (2026-05-18)\u003c/h2\u003e\n\u003ch3\u003e🩹 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-floating-promises] stack overflow when using recursive types (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12294\"\u003e#12294\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eproject-service:\u003c/strong\u003e throw error cause in \u003ccode\u003egetParsedConfigFileFromTSServer\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12321\"\u003e#12321\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003etypescript-eslint:\u003c/strong\u003e export Compatible* types from typescript-eslint to resolve pnpm TS error (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12340\"\u003e#12340\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e❤️ Thank You\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eEvyatar Daud \u003ca href=\"https://github.com/StyleShit\"\u003e\u003ccode\u003e@​StyleShit\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eKirk Waiblinger \u003ca href=\"https://github.com/kirkwaiblinger\"\u003e\u003ccode\u003e@​kirkwaiblinger\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003elumir\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.4\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003ev8.59.3\u003c/h2\u003e\n\u003ch2\u003e8.59.3 (2026-05-11)\u003c/h2\u003e\n\u003cp\u003eThis was a version bump only, there were no code changes.\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.3\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003ev8.59.2\u003c/h2\u003e\n\u003ch2\u003e8.59.2 (2026-05-04)\u003c/h2\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/parser/CHANGELOG.md\"\u003e@​typescript-eslint/parser's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e8.60.0 (2026-05-25)\u003c/h2\u003e\n\u003cp\u003eThis was a version bump only for parser to align it with other projects, there were no code changes.\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.60.0\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003e8.59.4 (2026-05-18)\u003c/h2\u003e\n\u003cp\u003eThis was a version bump only for parser to align it with other projects, there were no code changes.\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.4\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003e8.59.3 (2026-05-11)\u003c/h2\u003e\n\u003cp\u003eThis was a version bump only for parser to align it with other projects, there were no code changes.\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.3\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003e8.59.2 (2026-05-04)\u003c/h2\u003e\n\u003cp\u003eThis was a version bump only for parser to align it with other projects, there were no code changes.\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.2\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003e8.59.1 (2026-04-27)\u003c/h2\u003e\n\u003cp\u003eThis was a version bump only for parser to align it with other projects, there were no code changes.\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.1\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003e8.59.0 (2026-04-20)\u003c/h2\u003e\n\u003cp\u003eThis was a version bump only for parser to align it with other projects, there were no code changes.\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.0\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003e8.58.2 (2026-04-13)\u003c/h2\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/f891c29de5f3e23f3d8c59cc599d3196e54e9b58\"\u003e\u003ccode\u003ef891c29\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.60.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/ca6ca1431b6d18235297a7e29feb5d98f012dff2\"\u003e\u003ccode\u003eca6ca14\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.59.4\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/48e13c0261e3cb1bf4f4dfaa462cdb3a56ef7383\"\u003e\u003ccode\u003e48e13c0\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.59.3\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/44f9625336841a8ee3eb01a9e02e49b1d7b12648\"\u003e\u003ccode\u003e44f9625\u003c/code\u003e\u003c/a\u003e chore(deps): update vitest monorepo to v4.1.5 (\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/parser/issues/12307\"\u003e#12307\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/2ec35f1760aade4df4c631d76d78c7ed5e136333\"\u003e\u003ccode\u003e2ec35f1\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.59.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/52457932e5507b5ca01e720a541f3f8d01e09b9d\"\u003e\u003ccode\u003e5245793\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.59.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/ea9ae4f8817873480e3501145059f63e39e8d8a1\"\u003e\u003ccode\u003eea9ae4f\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.59.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/90c2803a4c250e0343598d41e973f95e743bf4ce\"\u003e\u003ccode\u003e90c2803\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.58.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/be6b49a02d68db9bdc8985e7e9e1598700fda2fa\"\u003e\u003ccode\u003ebe6b49a\u003c/code\u003e\u003c/a\u003e fix: remove tsbuildinfo cache file from published packages (\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/parser/issues/12187\"\u003e#12187\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/5311ed312eadf4e238324f2726ae0b1f3f2206e6\"\u003e\u003ccode\u003e5311ed3\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.58.1\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commits/v8.60.0/packages/parser\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `eslint` from 9.39.2 to 10.4.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/eslint/eslint/releases\"\u003eeslint's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev10.4.1\u003c/h2\u003e\n\u003ch2\u003eBug Fixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/e557467db7496220eebcbe2ac5ea6d38c12bb1ec\"\u003e\u003ccode\u003ee557467\u003c/code\u003e\u003c/a\u003e fix: update \u003ccode\u003e@eslint/plugin-kit\u003c/code\u003e version to 0.7.2 (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20930\"\u003e#20930\u003c/a\u003e) (Francesco Trotta)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/d4ce898796ca22c3b96aa70d3014cb85f4bac1cd\"\u003e\u003ccode\u003ed4ce898\u003c/code\u003e\u003c/a\u003e fix: propagate failures from delegated commands (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20917\"\u003e#20917\u003c/a\u003e) (Minh Vu)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/f4f3507460bc016b5be979c05d2969793f570cbf\"\u003e\u003ccode\u003ef4f3507\u003c/code\u003e\u003c/a\u003e fix: prefer-arrow-callback invalid autofix with newline after \u003ccode\u003easync\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20916\"\u003e#20916\u003c/a\u003e) (kuldeep kumar)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/c5bc78b37e08b9054a11f0cc2d81808bb24acb85\"\u003e\u003ccode\u003ec5bc78b\u003c/code\u003e\u003c/a\u003e fix: false positive for reference in \u003ccode\u003efinally\u003c/code\u003e block (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20655\"\u003e#20655\u003c/a\u003e) (Tanuj Kanti)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/27538c01f5df4e9306f6f4ba867b2dd6307fae59\"\u003e\u003ccode\u003e27538c0\u003c/code\u003e\u003c/a\u003e fix: add missing CodePath and CodePathSegment types (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20853\"\u003e#20853\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eDocumentation\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/61b0add61ffc52665562be7bb96f526690a78b30\"\u003e\u003ccode\u003e61b0add\u003c/code\u003e\u003c/a\u003e docs: remove deprecated rule from related rules of \u003ccode\u003emax-params\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20921\"\u003e#20921\u003c/a\u003e) (Tanuj Kanti)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/305d5b91aeac24d36fde42f75625a8f183d4ce43\"\u003e\u003ccode\u003e305d5b9\u003c/code\u003e\u003c/a\u003e docs: remove deprecated rules from related rules section (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20911\"\u003e#20911\u003c/a\u003e) (Tanuj Kanti)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/49b0202d01918b8061720d586dffd7c68047090c\"\u003e\u003ccode\u003e49b0202\u003c/code\u003e\u003c/a\u003e docs: fix \u003ccode\u003edisplay: none\u003c/code\u003e of ad (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20901\"\u003e#20901\u003c/a\u003e) (Tanuj Kanti)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/9067f9492ec998afc5b4f057a477ecf6ebd45e44\"\u003e\u003ccode\u003e9067f94\u003c/code\u003e\u003c/a\u003e docs: switch build to Node.js 24 (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20893\"\u003e#20893\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/c91b0417e3420c76807ce1fa2aea76e2de87ab86\"\u003e\u003ccode\u003ec91b041\u003c/code\u003e\u003c/a\u003e docs: Update README (GitHub Actions Bot)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/e349265cb37f3ebc837e178e48a725bb782bd870\"\u003e\u003ccode\u003ee349265\u003c/code\u003e\u003c/a\u003e docs: clarify semver strings in rule deprecation objects (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20885\"\u003e#20885\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eChores\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/b0e466b6ab47bfc7de43d8de0c315d8ee83aa584\"\u003e\u003ccode\u003eb0e466b\u003c/code\u003e\u003c/a\u003e test: add \u003ccode\u003edata\u003c/code\u003e property to invalid tests cases for rules (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20924\"\u003e#20924\u003c/a\u003e) (Tanuj Kanti)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/f78838bc4c86d487e1bcc7cede260c4467721c46\"\u003e\u003ccode\u003ef78838b\u003c/code\u003e\u003c/a\u003e test: add CodePath type coverage (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20904\"\u003e#20904\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/1daa4bd734b79a62e317d0394394a6b38cff49f9\"\u003e\u003ccode\u003e1daa4bd\u003c/code\u003e\u003c/a\u003e chore: update \u003ccode\u003eeslint-plugin-eslint-comments\u003c/code\u003e test data to latest commit (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20922\"\u003e#20922\u003c/a\u003e) (Francesco Trotta)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/002942ce988ea28b78e0a2f3b074081e638b552c\"\u003e\u003ccode\u003e002942c\u003c/code\u003e\u003c/a\u003e ci: declare contents:read on update-readme workflow (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20919\"\u003e#20919\u003c/a\u003e) (Arpit Jain)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/64bca24e7bed35bc3c864fc625cb2d89eca87d5b\"\u003e\u003ccode\u003e64bca24\u003c/code\u003e\u003c/a\u003e chore: update ecosystem plugins (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20912\"\u003e#20912\u003c/a\u003e) (ESLint Bot)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/6d7c832950d5e92499d88e504080661f888f8f56\"\u003e\u003ccode\u003e6d7c832\u003c/code\u003e\u003c/a\u003e chore: ignore fflate updates in renovate (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20908\"\u003e#20908\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/b2c86382164d87c6203b78d52068cd6a2a6ffe30\"\u003e\u003ccode\u003eb2c8638\u003c/code\u003e\u003c/a\u003e ci: bump pnpm/action-setup from 6.0.7 to 6.0.8 (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20889\"\u003e#20889\u003c/a\u003e) (dependabot[bot])\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/a9b8d7f74c50211701cfc49710fa541fd91b2aa5\"\u003e\u003ccode\u003ea9b8d7f\u003c/code\u003e\u003c/a\u003e chore: increase maxBuffer for ecosystem tests (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20881\"\u003e#20881\u003c/a\u003e) (sethamus)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/b702ead5e1ed7cb9f28238a454797662efb37396\"\u003e\u003ccode\u003eb702ead\u003c/code\u003e\u003c/a\u003e chore: update ecosystem update PR settings (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20884\"\u003e#20884\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/507f60e9a78c9a902bc8759f066ae17a1ea6cd81\"\u003e\u003ccode\u003e507f60e\u003c/code\u003e\u003c/a\u003e chore: update ecosystem plugins (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20882\"\u003e#20882\u003c/a\u003e) (ESLint Bot)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/92f5c5bb6bf3a5d167c8ee53a430833410295c6d\"\u003e\u003ccode\u003e92f5c5b\u003c/code\u003e\u003c/a\u003e test: add unit test for message-count (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20878\"\u003e#20878\u003c/a\u003e) (kuldeep kumar)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/df321080af5758b1fa25e4b9a40e26135642dd6e\"\u003e\u003ccode\u003edf32108\u003c/code\u003e\u003c/a\u003e chore: add \u003ccode\u003e@​eslint/markdown\u003c/code\u003e and typescript-eslint ecosystem tests (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20837\"\u003e#20837\u003c/a\u003e) (sethamus)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/327f91d36aa49f2a50ded931d841a16374fd875f\"\u003e\u003ccode\u003e327f91d\u003c/code\u003e\u003c/a\u003e chore: use includeIgnoreFile internally (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20876\"\u003e#20876\u003c/a\u003e) (Kirk Waiblinger)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/f0dc4bd893fb3a9f44e4ddc3ad7063ffb0beacd3\"\u003e\u003ccode\u003ef0dc4bd\u003c/code\u003e\u003c/a\u003e chore: pin fflate@0.8.2 (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20877\"\u003e#20877\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/0f4bd257a67a082b756de746d9e0c4842ab764ca\"\u003e\u003ccode\u003e0f4bd25\u003c/code\u003e\u003c/a\u003e ci: run Discord alert for ecosystem test failures (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20873\"\u003e#20873\u003c/a\u003e) (Copilot)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev10.4.0\u003c/h2\u003e\n\u003ch2\u003eFeatures\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/1a45ec596af1dd5f880e6874cb8f24dafb6a7ecf\"\u003e\u003ccode\u003e1a45ec5\u003c/code\u003e\u003c/a\u003e feat: check sequence expressions in \u003ccode\u003efor-direction\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20701\"\u003e#20701\u003c/a\u003e) (kuldeep kumar)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/450040bd89b989b3531824c6be45feb5fe3d936b\"\u003e\u003ccode\u003e450040b\u003c/code\u003e\u003c/a\u003e feat: add \u003ccode\u003eincludeIgnoreFile()\u003c/code\u003e to \u003ccode\u003eeslint/config\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20735\"\u003e#20735\u003c/a\u003e) (Kirk Waiblinger)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eBug Fixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/544c0c3da589166ad8e5d634f35d3d06701c57be\"\u003e\u003ccode\u003e544c0c3\u003c/code\u003e\u003c/a\u003e fix: escape code path DOT labels in debug output (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20866\"\u003e#20866\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/6799431203f2579632d0870f98ba132067f4040c\"\u003e\u003ccode\u003e6799431\u003c/code\u003e\u003c/a\u003e fix: update dependency \u003ccode\u003e@​eslint/config-helpers\u003c/code\u003e to ^0.6.0 (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20850\"\u003e#20850\u003c/a\u003e) (renovate[bot])\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/f078fef5005dceb14fc162aab7c7200e027688dd\"\u003e\u003ccode\u003ef078fef\u003c/code\u003e\u003c/a\u003e fix: handle non-array deprecated rule replacements (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20825\"\u003e#20825\u003c/a\u003e) (xbinaryx)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eDocumentation\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/7e52a7151fb92eec0e0f67fe4e5ddbd1ccce796f\"\u003e\u003ccode\u003e7e52a71\u003c/code\u003e\u003c/a\u003e docs: add mention of \u003ccode\u003e@eslint-react/eslint-plugin\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20869\"\u003e#20869\u003c/a\u003e) (Pavel)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/db3468ba746407d7f286f18f7ea9db6df0e3bc08\"\u003e\u003ccode\u003edb3468b\u003c/code\u003e\u003c/a\u003e docs: tweak wording around ambiguous CJS-vs-ESM config (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20865\"\u003e#20865\u003c/a\u003e) (Kirk Waiblinger)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/90846643ec6e97d447ae0d831fabe6d17b0a998a\"\u003e\u003ccode\u003e9084664\u003c/code\u003e\u003c/a\u003e docs: Update README (GitHub Actions Bot)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/9cc73875046e3c4b8313644cbb1e99e26b36bd3f\"\u003e\u003ccode\u003e9cc7387\u003c/code\u003e\u003c/a\u003e docs: Update README (GitHub Actions Bot)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/3d7b5484407403817aa9071a394d336d8ea96eb5\"\u003e\u003ccode\u003e3d7b548\u003c/code\u003e\u003c/a\u003e docs: Update README (GitHub Actions Bot)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/191ec3c0a3f94ce0f110df761f0b2b8949011ccb\"\u003e\u003ccode\u003e191ec3c\u003c/code\u003e\u003c/a\u003e docs: Update README (GitHub Actions Bot)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/4a3d15a99c452c4db2fd56b577fa7597e98ab0c2\"\u003e\u003ccode\u003e4a3d15a\u003c/code\u003e\u003c/a\u003e 10.4.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/43e7e2bdc5c6cacc535446b7d23c10f780384ba8\"\u003e\u003ccode\u003e43e7e2b\u003c/code\u003e\u003c/a\u003e Build: changelog update for 10.4.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/e557467db7496220eebcbe2ac5ea6d38c12bb1ec\"\u003e\u003ccode\u003ee557467\u003c/code\u003e\u003c/a\u003e fix: update \u003ccode\u003e@eslint/plugin-kit\u003c/code\u003e version to 0.7.2 (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20930\"\u003e#20930\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/b0e466b6ab47bfc7de43d8de0c315d8ee83aa584\"\u003e\u003ccode\u003eb0e466b\u003c/code\u003e\u003c/a\u003e test: add \u003ccode\u003edata\u003c/code\u003e property to invalid tests cases for rules (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20924\"\u003e#20924\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/d4ce898796ca22c3b96aa70d3014cb85f4bac1cd\"\u003e\u003ccode\u003ed4ce898\u003c/code\u003e\u003c/a\u003e fix: propagate failures from delegated commands (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20917\"\u003e#20917\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/f4f3507460bc016b5be979c05d2969793f570cbf\"\u003e\u003ccode\u003ef4f3507\u003c/code\u003e\u003c/a\u003e fix: prefer-arrow-callback invalid autofix with newline after \u003ccode\u003easync\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20916\"\u003e#20916\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/f78838bc4c86d487e1bcc7cede260c4467721c46\"\u003e\u003ccode\u003ef78838b\u003c/code\u003e\u003c/a\u003e test: add CodePath type coverage (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20904\"\u003e#20904\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/61b0add61ffc52665562be7bb96f526690a78b30\"\u003e\u003ccode\u003e61b0add\u003c/code\u003e\u003c/a\u003e docs: remove deprecated rule from related rules of \u003ccode\u003emax-params\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20921\"\u003e#20921\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/1daa4bd734b79a62e317d0394394a6b38cff49f9\"\u003e\u003ccode\u003e1daa4bd\u003c/code\u003e\u003c/a\u003e chore: update \u003ccode\u003eeslint-plugin-eslint-comments\u003c/code\u003e test data to latest commit (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20\"\u003e#20\u003c/a\u003e...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/002942ce988ea28b78e0a2f3b074081e638b552c\"\u003e\u003ccode\u003e002942c\u003c/code\u003e\u003c/a\u003e ci: declare contents:read on update-readme workflow (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20919\"\u003e#20919\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/eslint/eslint/compare/v9.39.2...v10.4.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `eslint-import-resolver-typescript` from 4.4.4 to 4.4.5\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/import-js/eslint-import-resolver-typescript/releases\"\u003eeslint-import-resolver-typescript's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev4.4.5\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/import-js/eslint-import-resolver-typescript/pull/473\"\u003e#473\u003c/a\u003e \u003ca href=\"https://github.com/import-js/eslint-import-resolver-typescript/commit/32c61abccf26bd2a2267f2e0e67d82e6f88d149a\"\u003e\u003ccode\u003e32c61ab\u003c/code\u003e\u003c/a\u003e Thanks \u003ca href=\"https://github.com/leey0818\"\u003e\u003ccode\u003e@​leey0818\u003c/code\u003e\u003c/a\u003e! - fix: check tsconfig matching before using resolver\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/import-js/eslint-import-resolver-typescript/blob/master/CHANGELOG.md\"\u003eeslint-import-resolver-typescript's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e4.4.5\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/import-js/eslint-import-resolver-typescript/pull/473\"\u003e#473\u003c/a\u003e \u003ca href=\"https://github.com/import-js/eslint-import-resolver-typescript/commit/32c61abccf26bd2a2267f2e0e67d82e6f88d149a\"\u003e\u003ccode\u003e32c61ab\u003c/code\u003e\u003c/a\u003e Thanks \u003ca href=\"https://github.com/leey0818\"\u003e\u003ccode\u003e@​leey0818\u003c/code\u003e\u003c/a\u003e! - fix: check tsconfig matching before using resolver\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/import-js/eslint-import-resolver-typescript/commit/724c47d8c08fa8ffa702c7a94ba53b367a4727fb\"\u003e\u003ccode\u003e724c47d\u003c/code\u003e\u003c/a\u003e chore: release eslint-import-resolver-typescript (\u003ca href=\"https://redirect.github.com/import-js/eslint-import-resolver-typescript/issues/480\"\u003e#480\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/import-js/eslint-import-resolver-typescript/commit/32c61abccf26bd2a2267f2e0e67d82e6f88d149a\"\u003e\u003ccode\u003e32c61ab\u003c/code\u003e\u003c/a\u003e fix: check tsconfig matching before using resolver (\u003ca href=\"https://redirect.github.com/import-js/eslint-import-resolver-typescript/issues/473\"\u003e#473\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/import-js/eslint-import-resolver-typescript/compare/v4.4.4...v4.4.5\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eMaintainer changes\u003c/summary\u003e\n\u003cp\u003eThis version was pushed to npm by \u003ca href=\"https://www.npmjs.com/~GitHub%20Actions\"\u003eGitHub Actions\u003c/a\u003e, a new releaser for eslint-import-resolver-typescript since your current version.\u003c/p\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `eslint-plugin-react-hooks` from 7.0.1 to 7.1.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/facebook/react/releases\"\u003eeslint-plugin-react-hooks's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eeslint-plugin-react-hooks@7.1.1 (April 17, 2026)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eNote:\u003c/strong\u003e 7.1.0 accidentally removed the \u003ccode\u003ecomponent-hook-factories\u003c/code\u003e rule, causing errors for users who referenced it in their ESLint config. This is now fixed.\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdd deprecated no-op \u003ccode\u003ecomponent-hook-factories\u003c/code\u003e rule for backwards compatibility. (\u003ca href=\"https://github.com/mofeiZ\"\u003e\u003ccode\u003e@​mofeiZ\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/36307\"\u003e#36307\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eeslint-plugin-react-hooks@7.1.0 (April 16, 2026)\u003c/h2\u003e\n\u003cp\u003eThis release adds ESLint v10 support, improves performance by skipping compilation for non-React files, and includes compiler lint improvements including better \u003ccode\u003eset-state-in-effect\u003c/code\u003e detection, improved ref validation, and more helpful error reporting.\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdd ESLint v10 support. (\u003ca href=\"https://github.com/azat-io\"\u003e\u003ccode\u003e@​azat-io\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/35720\"\u003e#35720\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSkip compilation for non-React files to improve performance. (\u003ca href=\"https://github.com/josephsavona\"\u003e\u003ccode\u003e@​josephsavona\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/35589\"\u003e#35589\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix exhaustive deps bug with Flow type casting. (\u003ca href=\"https://github.com/jorge-cab\"\u003e\u003ccode\u003e@​jorge-cab\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/35691\"\u003e#35691\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix \u003ccode\u003euseEffectEvent\u003c/code\u003e checks in component syntax. (\u003ca href=\"https://github.com/jbrown215\"\u003e\u003ccode\u003e@​jbrown215\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/35041\"\u003e#35041\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eImproved \u003ccode\u003eset-state-in-effect\u003c/code\u003e validation with fewer false negatives. (\u003ca href=\"https://github.com/jorge-cab\"\u003e\u003ccode\u003e@​jorge-cab\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/35134\"\u003e#35134\u003c/a\u003e, \u003ca href=\"https://github.com/josephsavona\"\u003e\u003ccode\u003e@​josephsavona\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react...\n\n_Description has been truncated_","html_url":"https://github.com/mr-ElAmine/string/pull/9","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/mr-ElAmine%2Fstring/issues/9","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/9/packages"}},{"old_version":"5.2.0","new_version":"5.3.0","update_type":"minor","path":null,"pr_created_at":"2026-05-28T14:37:22.000Z","version_change":"5.2.0 → 5.3.0","issue":{"uuid":"4541269654","node_id":"PR_kwDORTPxEM7gRmh1","number":358,"state":"closed","title":"chore(deps): bump the dependencies group across 1 directory with 16 updates","user":"dependabot[bot]","labels":["dependencies","javascript"],"assignees":[],"locked":false,"comments_count":1,"pull_request":true,"closed_at":"2026-05-31T23:24:30.000Z","author_association":null,"state_reason":null,"created_at":"2026-05-28T14:37:22.000Z","updated_at":"2026-05-31T23:24:32.000Z","time_to_close":290828,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"chore(deps): bump","group_name":"dependencies","update_count":16,"packages":[{"name":"typescript-eslint","old_version":"8.59.3","new_version":"8.60.0","repository_url":"https://github.com/typescript-eslint/typescript-eslint"},{"name":"pyright","old_version":"1.1.409","new_version":"1.1.410","repository_url":"https://github.com/Microsoft/pyright"},{"name":"typescript-language-server","old_version":"5.2.0","new_version":"5.3.0","repository_url":"https://github.com/typescript-language-server/typescript-language-server"},{"name":"ws","old_version":"8.20.1","new_version":"8.21.0","repository_url":"https://github.com/websockets/ws"},{"name":"@vitest/coverage-v8","old_version":"4.1.6","new_version":"4.1.7","repository_url":"https://github.com/vitest-dev/vitest"},{"name":"tsx","old_version":"4.22.0","new_version":"4.22.3","repository_url":"https://github.com/privatenumber/tsx"},{"name":"vitest","old_version":"4.1.6","new_version":"4.1.7","repository_url":"https://github.com/vitest-dev/vitest"},{"name":"@assistant-ui/react","old_version":"0.14.5","new_version":"0.14.11","repository_url":"https://github.com/assistant-ui/assistant-ui"},{"name":"@assistant-ui/react-markdown","old_version":"0.14.0","new_version":"0.14.1","repository_url":"https://github.com/assistant-ui/assistant-ui"},{"name":"lucide-react","old_version":"1.16.0","new_version":"1.17.0","repository_url":"https://github.com/lucide-icons/lucide"},{"name":"react-resizable-panels","old_version":"4.11.1","new_version":"4.11.2","repository_url":"https://github.com/bvaughn/react-resizable-panels"},{"name":"shiki","old_version":"4.0.2","new_version":"4.1.0","repository_url":"https://github.com/shikijs/shiki"},{"name":"zustand","old_version":"5.0.13","new_version":"5.0.14","repository_url":"https://github.com/pmndrs/zustand"},{"name":"@types/react","old_version":"19.2.14","new_version":"19.2.15","repository_url":"https://github.com/DefinitelyTyped/DefinitelyTyped"},{"name":"electron","old_version":"41.6.1","new_version":"42.3.0","repository_url":"https://github.com/electron/electron"},{"name":"vite","old_version":"8.0.13","new_version":"8.0.14","repository_url":"https://github.com/vitejs/vite"}],"path":null,"ecosystem":"npm"},"body":"Bumps the dependencies group with 16 updates in the / directory:\n\n| Package | From | To |\n| --- | --- | --- |\n| [typescript-eslint](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/typescript-eslint) | `8.59.3` | `8.60.0` |\n| [pyright](https://github.com/Microsoft/pyright/tree/HEAD/packages/pyright) | `1.1.409` | `1.1.410` |\n| [typescript-language-server](https://github.com/typescript-language-server/typescript-language-server) | `5.2.0` | `5.3.0` |\n| [ws](https://github.com/websockets/ws) | `8.20.1` | `8.21.0` |\n| [@vitest/coverage-v8](https://github.com/vitest-dev/vitest/tree/HEAD/packages/coverage-v8) | `4.1.6` | `4.1.7` |\n| [tsx](https://github.com/privatenumber/tsx) | `4.22.0` | `4.22.3` |\n| [vitest](https://github.com/vitest-dev/vitest/tree/HEAD/packages/vitest) | `4.1.6` | `4.1.7` |\n| [@assistant-ui/react](https://github.com/assistant-ui/assistant-ui/tree/HEAD/packages/react) | `0.14.5` | `0.14.11` |\n| [@assistant-ui/react-markdown](https://github.com/assistant-ui/assistant-ui/tree/HEAD/packages/react-markdown) | `0.14.0` | `0.14.1` |\n| [lucide-react](https://github.com/lucide-icons/lucide/tree/HEAD/packages/lucide-react) | `1.16.0` | `1.17.0` |\n| [react-resizable-panels](https://github.com/bvaughn/react-resizable-panels) | `4.11.1` | `4.11.2` |\n| [shiki](https://github.com/shikijs/shiki/tree/HEAD/packages/shiki) | `4.0.2` | `4.1.0` |\n| [zustand](https://github.com/pmndrs/zustand) | `5.0.13` | `5.0.14` |\n| [@types/react](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/react) | `19.2.14` | `19.2.15` |\n| [electron](https://github.com/electron/electron) | `41.6.1` | `42.3.0` |\n| [vite](https://github.com/vitejs/vite/tree/HEAD/packages/vite) | `8.0.13` | `8.0.14` |\n\n\nUpdates `typescript-eslint` from 8.59.3 to 8.60.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases\"\u003etypescript-eslint's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev8.60.0\u003c/h2\u003e\n\u003ch2\u003e8.60.0 (2026-05-25)\u003c/h2\u003e\n\u003ch3\u003e🚀 Features\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003erule-tester:\u003c/strong\u003e added updates of RuleTester from upstream (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12291\"\u003e#12291\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🩹 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eplayground TS version selector is not working (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12326\"\u003e#12326\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/issues/12325\"\u003e#12325\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e❤️ Thank You\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eEvyatar Daud \u003ca href=\"https://github.com/StyleShit\"\u003e\u003ccode\u003e@​StyleShit\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eVinccool96\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.60.0\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003ev8.59.4\u003c/h2\u003e\n\u003ch2\u003e8.59.4 (2026-05-18)\u003c/h2\u003e\n\u003ch3\u003e🩹 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-floating-promises] stack overflow when using recursive types (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12294\"\u003e#12294\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eproject-service:\u003c/strong\u003e throw error cause in \u003ccode\u003egetParsedConfigFileFromTSServer\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12321\"\u003e#12321\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003etypescript-eslint:\u003c/strong\u003e export Compatible* types from typescript-eslint to resolve pnpm TS error (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12340\"\u003e#12340\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e❤️ Thank You\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eEvyatar Daud \u003ca href=\"https://github.com/StyleShit\"\u003e\u003ccode\u003e@​StyleShit\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eKirk Waiblinger \u003ca href=\"https://github.com/kirkwaiblinger\"\u003e\u003ccode\u003e@​kirkwaiblinger\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003elumir\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.4\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/typescript-eslint/CHANGELOG.md\"\u003etypescript-eslint's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e8.60.0 (2026-05-25)\u003c/h2\u003e\n\u003cp\u003eThis was a version bump only for typescript-eslint to align it with other projects, there were no code changes.\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.60.0\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003e8.59.4 (2026-05-18)\u003c/h2\u003e\n\u003ch3\u003e🩹 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003etypescript-eslint:\u003c/strong\u003e export Compatible* types from typescript-eslint to resolve pnpm TS error (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12340\"\u003e#12340\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e❤️ Thank You\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eKirk Waiblinger \u003ca href=\"https://github.com/kirkwaiblinger\"\u003e\u003ccode\u003e@​kirkwaiblinger\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.4\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/f891c29de5f3e23f3d8c59cc599d3196e54e9b58\"\u003e\u003ccode\u003ef891c29\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.60.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/ca6ca1431b6d18235297a7e29feb5d98f012dff2\"\u003e\u003ccode\u003eca6ca14\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.59.4\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/4b927c607755b2648d5854b9e928c1dbb2b8e088\"\u003e\u003ccode\u003e4b927c6\u003c/code\u003e\u003c/a\u003e fix(typescript-eslint): export Compatible* types from typescript-eslint to re...\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commits/v8.60.0/packages/typescript-eslint\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `pyright` from 1.1.409 to 1.1.410\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/Microsoft/pyright/releases\"\u003epyright's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ePublished 1.1.410\u003c/h2\u003e\n\u003ch2\u003eChanges:\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e2dfeabc9f2ced43ebc672a6a7b85a99917694581 Published 1.1.410\u003c/li\u003e\n\u003cli\u003e79cc195a205ca526c3b5a796d8c1f6dec431fd3b Update NODE_VERSION to '22.x' in workflow files for consistency with vscode (\u003ca href=\"https://github.com/Microsoft/pyright/tree/HEAD/packages/pyright/issues/11460\"\u003e#11460\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e505a9bcb8780582ebe76a7b354be8f23d5e23dab Update typeshed to 483fd73dcea6f5fbc04ea602e802e798024fa2e2 (\u003ca href=\"https://github.com/Microsoft/pyright/tree/HEAD/packages/pyright/issues/11416\"\u003e#11416\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ef06cf49e40560ecdf91f68337302ceb720407ad8 Fix hang in constraint solver for cyclic TypeVar lower bounds (\u003ca href=\"https://github.com/Microsoft/pyright/tree/HEAD/packages/pyright/issues/11413\"\u003e#11413\u003c/a\u003e) (\u003ca href=\"https://github.com/Microsoft/pyright/tree/HEAD/packages/pyright/issues/11415\"\u003e#11415\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e3619ecdf4f41ede49fe297196c976d4761cf4733 Faster tokenizer (\u003ca href=\"https://github.com/Microsoft/pyright/tree/HEAD/packages/pyright/issues/11392\"\u003e#11392\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e34c556b79362cc527431de819ce77925b49c5e1d Push pylance changes to pyright (\u003ca href=\"https://github.com/Microsoft/pyright/tree/HEAD/packages/pyright/issues/11396\"\u003e#11396\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eThis list of changes was \u003ca href=\"https://devdiv.visualstudio.com/DevDiv/_build/results?buildId=14167094\u0026amp;view=logs\"\u003eauto generated\u003c/a\u003e.\u003c!-- raw HTML omitted --\u003e\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/pyright/commit/2dfeabc9f2ced43ebc672a6a7b85a99917694581\"\u003e\u003ccode\u003e2dfeabc\u003c/code\u003e\u003c/a\u003e Published 1.1.410\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/pyright/commit/4cc1392284c66116b8bb13a6e2965faa152c77a6\"\u003e\u003ccode\u003e4cc1392\u003c/code\u003e\u003c/a\u003e Update rspack dependencies to version 2.0.4 (\u003ca href=\"https://github.com/Microsoft/pyright/tree/HEAD/packages/pyright/issues/11458\"\u003e#11458\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/pyright/commit/4243a1b36c91204720c4cf80e5bbcb4a0737a759\"\u003e\u003ccode\u003e4243a1b\u003c/code\u003e\u003c/a\u003e Bump node-forge from 1.3.3 to 1.4.0 in /packages/pyright (\u003ca href=\"https://github.com/Microsoft/pyright/tree/HEAD/packages/pyright/issues/11422\"\u003e#11422\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/pyright/commit/8f9807eefb292b4b66cd787b22ef5c4916358842\"\u003e\u003ccode\u003e8f9807e\u003c/code\u003e\u003c/a\u003e Bump fast-uri from 3.1.0 to 3.1.2 in /packages/pyright (\u003ca href=\"https://github.com/Microsoft/pyright/tree/HEAD/packages/pyright/issues/11428\"\u003e#11428\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/pyright/commit/53969cf1e39498f097437b4ee92cc2fad00cf641\"\u003e\u003ccode\u003e53969cf\u003c/code\u003e\u003c/a\u003e fix: restore axios 1.16.0 and correct minimatch/npm-check-updates regressions...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/pyright/commit/47aace824993d97facd3281a6746732cc25f83f8\"\u003e\u003ccode\u003e47aace8\u003c/code\u003e\u003c/a\u003e chore: consolidate open Dependabot PRs into single dependency update (\u003ca href=\"https://github.com/Microsoft/pyright/tree/HEAD/packages/pyright/issues/11417\"\u003e#11417\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/pyright/commit/34c556b79362cc527431de819ce77925b49c5e1d\"\u003e\u003ccode\u003e34c556b\u003c/code\u003e\u003c/a\u003e Push pylance changes to pyright (\u003ca href=\"https://github.com/Microsoft/pyright/tree/HEAD/packages/pyright/issues/11396\"\u003e#11396\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/Microsoft/pyright/commits/1.1.410/packages/pyright\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eMaintainer changes\u003c/summary\u003e\n\u003cp\u003eThis version was pushed to npm by \u003ca href=\"https://www.npmjs.com/~rchiodo\"\u003erchiodo\u003c/a\u003e, a new releaser for pyright since your current version.\u003c/p\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `typescript-language-server` from 5.2.0 to 5.3.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/typescript-language-server/typescript-language-server/releases\"\u003etypescript-language-server's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev5.3.0\u003c/h2\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/typescript-language-server/typescript-language-server/compare/v5.2.0...v5.3.0\"\u003e5.3.0\u003c/a\u003e (2026-05-21)\u003c/h2\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003ehover info verbosity (\u003ca href=\"https://redirect.github.com/typescript-language-server/typescript-language-server/issues/1092\"\u003e#1092\u003c/a\u003e) (\u003ca href=\"https://github.com/typescript-language-server/typescript-language-server/commit/b73207c610912dd278cf64733a0c5c7ce26b3a58\"\u003eb73207c\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003erefresh inlay hints and code lens on relevant configuration change (\u003ca href=\"https://redirect.github.com/typescript-language-server/typescript-language-server/issues/1095\"\u003e#1095\u003c/a\u003e) (\u003ca href=\"https://github.com/typescript-language-server/typescript-language-server/commit/fd53d0e5948f84c12fa8a90b512cad9b2a604fce\"\u003efd53d0e\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/typescript-language-server/typescript-language-server/blob/master/CHANGELOG.md\"\u003etypescript-language-server's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/typescript-language-server/typescript-language-server/compare/v5.2.0...v5.3.0\"\u003e5.3.0\u003c/a\u003e (2026-05-21)\u003c/h2\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003ehover info verbosity (\u003ca href=\"https://redirect.github.com/typescript-language-server/typescript-language-server/issues/1092\"\u003e#1092\u003c/a\u003e) (\u003ca href=\"https://github.com/typescript-language-server/typescript-language-server/commit/b73207c610912dd278cf64733a0c5c7ce26b3a58\"\u003eb73207c\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003erefresh inlay hints and code lens on relevant configuration change (\u003ca href=\"https://redirect.github.com/typescript-language-server/typescript-language-server/issues/1095\"\u003e#1095\u003c/a\u003e) (\u003ca href=\"https://github.com/typescript-language-server/typescript-language-server/commit/fd53d0e5948f84c12fa8a90b512cad9b2a604fce\"\u003efd53d0e\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-language-server/typescript-language-server/commit/589044479e4bc2bffb796b593242136f5323b582\"\u003e\u003ccode\u003e5890444\u003c/code\u003e\u003c/a\u003e chore(master): release 5.3.0 (\u003ca href=\"https://redirect.github.com/typescript-language-server/typescript-language-server/issues/1094\"\u003e#1094\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-language-server/typescript-language-server/commit/fd53d0e5948f84c12fa8a90b512cad9b2a604fce\"\u003e\u003ccode\u003efd53d0e\u003c/code\u003e\u003c/a\u003e feat: refresh inlay hints and code lens on relevant configuration change (\u003ca href=\"https://redirect.github.com/typescript-language-server/typescript-language-server/issues/1095\"\u003e#1095\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-language-server/typescript-language-server/commit/b73207c610912dd278cf64733a0c5c7ce26b3a58\"\u003e\u003ccode\u003eb73207c\u003c/code\u003e\u003c/a\u003e feat: hover info verbosity (\u003ca href=\"https://redirect.github.com/typescript-language-server/typescript-language-server/issues/1092\"\u003e#1092\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-language-server/typescript-language-server/commit/b4aaa2382a09664c8580abe54eecc465089f5927\"\u003e\u003ccode\u003eb4aaa23\u003c/code\u003e\u003c/a\u003e chore(deps): update dependency \u003ccode\u003e@​types/react\u003c/code\u003e to ^19.2.15 (\u003ca href=\"https://redirect.github.com/typescript-language-server/typescript-language-server/issues/1091\"\u003e#1091\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-language-server/typescript-language-server/commit/6ab24c8c2f6e43cfffac940ed4606ae2acbe635d\"\u003e\u003ccode\u003e6ab24c8\u003c/code\u003e\u003c/a\u003e chore(deps): update all non-major dependencies (\u003ca href=\"https://redirect.github.com/typescript-language-server/typescript-language-server/issues/1089\"\u003e#1089\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/typescript-language-server/typescript-language-server/compare/v5.2.0...v5.3.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `ws` from 8.20.1 to 8.21.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/websockets/ws/releases\"\u003ews's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e8.21.0\u003c/h2\u003e\n\u003ch1\u003eFeatures\u003c/h1\u003e\n\u003cul\u003e\n\u003cli\u003eIntroduced the \u003ccode\u003emaxBufferedChunks\u003c/code\u003e and \u003ccode\u003emaxFragments\u003c/code\u003e options (2b2abd45).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch1\u003eBug fixes\u003c/h1\u003e\n\u003cul\u003e\n\u003cli\u003eFixed a remote memory exhaustion DoS vulnerability (2b2abd45).\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eA high volume of tiny fragments and data chunks could be sent by a peer, using\nmodest network traffic, to crash a \u003ccode\u003ews\u003c/code\u003e server or client due to OOM.\u003c/p\u003e\n\u003cpre lang=\"js\"\u003e\u003ccode\u003eimport { WebSocket, WebSocketServer } from 'ws';\r\n\u003cp\u003econst wss = new WebSocketServer({ port: 0 }, function () {\nconst data = Buffer.alloc(1);\nconst options = { fin: false };\nconst { port } = wss.address();\nconst ws = new WebSocket(\u003ccode\u003ews://localhost:${port}\u003c/code\u003e);\u003c/p\u003e\n\u003cp\u003ews.on('open', function () {\n(function send() {\nws.send(data, options, function (err) {\nif (err) return;\nsend();\n});\n})();\n});\u003c/p\u003e\n\u003cp\u003ews.on('error', console.error);\nws.on('close', function (code, reason) {\nconsole.log(\u003ccode\u003eclient close - code: ${code} reason: ${reason.toString()}\u003c/code\u003e);\n});\n});\u003c/p\u003e\n\u003cp\u003ewss.on('connection', function (ws) {\nws.on('error', console.error);\nws.on('close', function (code, reason) {\nconsole.log(\u003ccode\u003eserver close - code: ${code} reason: ${reason.toString()}\u003c/code\u003e);\n});\n});\n\u003c/code\u003e\u003c/pre\u003e\u003c/p\u003e\n\u003cp\u003eThe vulnerability was responsibly disclosed and fixed by \u003ca href=\"https://github.com/Nadav0077\"\u003eNadav Magier\u003c/a\u003e.\u003c/p\u003e\n\u003cp\u003eIn vulnerable versions, the issue can be mitigated by lowering the value of the\n\u003ccode\u003emaxPayload\u003c/code\u003e option if possible.\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/websockets/ws/commit/bca91adf15677e47dbe4f959653452727be28b94\"\u003e\u003ccode\u003ebca91ad\u003c/code\u003e\u003c/a\u003e [dist] 8.21.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/websockets/ws/commit/2b2abd458a1b647d0b6033bd62a619c36189839a\"\u003e\u003ccode\u003e2b2abd4\u003c/code\u003e\u003c/a\u003e [security] Limit retained message parts\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/websockets/ws/commit/78eabe2a6677b231bf9c82601bde86ff91639490\"\u003e\u003ccode\u003e78eabe2\u003c/code\u003e\u003c/a\u003e [security] Add latest vulnerability to SECURITY.md\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/websockets/ws/compare/8.20.1...8.21.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@vitest/coverage-v8` from 4.1.6 to 4.1.7\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/vitest-dev/vitest/releases\"\u003e@​vitest/coverage-v8's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev4.1.7\u003c/h2\u003e\n\u003ch3\u003e   🐞 Bug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003erunner\u003c/strong\u003e: Limit concurrency per task branch in addition to per leaf callbacks (backport)  -  by \u003ca href=\"https://github.com/hi-ogawa\"\u003e\u003ccode\u003e@​hi-ogawa\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/vitest-dev/vitest/issues/10384\"\u003evitest-dev/vitest#10384\u003c/a\u003e \u003ca href=\"https://github.com/vitest-dev/vitest/commit/4f0f2a1ee\"\u003e\u003c!-- raw HTML omitted --\u003e(4f0f2)\u003c!-- raw HTML omitted --\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch5\u003e    \u003ca href=\"https://github.com/vitest-dev/vitest/compare/v4.1.6...v4.1.7\"\u003eView changes on GitHub\u003c/a\u003e\u003c/h5\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vitest-dev/vitest/commit/a09d47236e19fd3151351080c667036ca6164dc4\"\u003e\u003ccode\u003ea09d472\u003c/code\u003e\u003c/a\u003e chore: release v4.1.7\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/vitest-dev/vitest/commits/v4.1.7/packages/coverage-v8\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `tsx` from 4.22.0 to 4.22.3\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/privatenumber/tsx/releases\"\u003etsx's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev4.22.3\u003c/h2\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/privatenumber/tsx/compare/v4.22.2...v4.22.3\"\u003e4.22.3\u003c/a\u003e (2026-05-19)\u003c/h2\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003edecode typed loader source (\u003ca href=\"https://github.com/privatenumber/tsx/commit/dce02fc3b8b64a58d24560714902b16f89332f1f\"\u003edce02fc\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003epreserve entrypoint with TypeScript preload hooks (\u003ca href=\"https://github.com/privatenumber/tsx/commit/68f72f3304d8c3ff7048bde8571af9c163fcefa2\"\u003e68f72f3\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003chr /\u003e\n\u003cp\u003eThis release is also available on:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://www.npmjs.com/package/tsx/v/4.22.3\"\u003e\u003ccode\u003enpm package (@​latest dist-tag)\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev4.22.2\u003c/h2\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/privatenumber/tsx/compare/v4.22.1...v4.22.2\"\u003e4.22.2\u003c/a\u003e (2026-05-18)\u003c/h2\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003epreserve CJS JSON require in ESM hooks (\u003ca href=\"https://github.com/privatenumber/tsx/commit/35b700bd8620696df03827068af29dcd0d091a60\"\u003e35b700b\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003epreserve named exports from CommonJS TypeScript (\u003ca href=\"https://github.com/privatenumber/tsx/commit/11de737dae1fb9dae28db3716df5b1a7e1a6a089\"\u003e11de737\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003esupport module.exports require(esm) interop (\u003ca href=\"https://github.com/privatenumber/tsx/commit/cf8f19918e4e0a0dc5ee5c52d8cc15e5e22d7c49\"\u003ecf8f199\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003chr /\u003e\n\u003cp\u003eThis release is also available on:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://www.npmjs.com/package/tsx/v/4.22.2\"\u003e\u003ccode\u003enpm package (@​latest dist-tag)\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev4.22.1\u003c/h2\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/privatenumber/tsx/compare/v4.22.0...v4.22.1\"\u003e4.22.1\u003c/a\u003e (2026-05-17)\u003c/h2\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eresolve tsconfig path aliases containing a colon (\u003ca href=\"https://redirect.github.com/privatenumber/tsx/issues/780\"\u003e#780\u003c/a\u003e) (\u003ca href=\"https://github.com/privatenumber/tsx/commit/6979f28810829dc79ec9baf406e162a18b65ab4b\"\u003e6979f28\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003chr /\u003e\n\u003cp\u003eThis release is also available on:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://www.npmjs.com/package/tsx/v/4.22.1\"\u003e\u003ccode\u003enpm package (@​latest dist-tag)\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/privatenumber/tsx/commit/dce02fc3b8b64a58d24560714902b16f89332f1f\"\u003e\u003ccode\u003edce02fc\u003c/code\u003e\u003c/a\u003e fix: decode typed loader source\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/privatenumber/tsx/commit/68f72f3304d8c3ff7048bde8571af9c163fcefa2\"\u003e\u003ccode\u003e68f72f3\u003c/code\u003e\u003c/a\u003e fix: preserve entrypoint with TypeScript preload hooks\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/privatenumber/tsx/commit/69455cfefbfe71100a3c58d3ce7cea42445d9113\"\u003e\u003ccode\u003e69455cf\u003c/code\u003e\u003c/a\u003e test: cover package exports for ambiguous ESM reexports\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/privatenumber/tsx/commit/35b700bd8620696df03827068af29dcd0d091a60\"\u003e\u003ccode\u003e35b700b\u003c/code\u003e\u003c/a\u003e fix: preserve CJS JSON require in ESM hooks\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/privatenumber/tsx/commit/ef807dba6832260fb4cafd78d81f5469a733966b\"\u003e\u003ccode\u003eef807db\u003c/code\u003e\u003c/a\u003e chore: update testing dependencies\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/privatenumber/tsx/commit/3917090d4f61863ea6ea16e4a9a3722a112cc3f7\"\u003e\u003ccode\u003e3917090\u003c/code\u003e\u003c/a\u003e test: document compatibility test taxonomy\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/privatenumber/tsx/commit/de8113ffa8edbcd4e05fa218324c3e8c2a4afdbe\"\u003e\u003ccode\u003ede8113f\u003c/code\u003e\u003c/a\u003e refactor: centralize Node capability facts\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/privatenumber/tsx/commit/c1f62db45ada60b24ceb3dfdf7f64173d9a15396\"\u003e\u003ccode\u003ec1f62db\u003c/code\u003e\u003c/a\u003e test: consolidate tsconfig path edge coverage\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/privatenumber/tsx/commit/4e08174ec10276ac71c9a69eb28426ad702d0c76\"\u003e\u003ccode\u003e4e08174\u003c/code\u003e\u003c/a\u003e test: consolidate loader hook coverage\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/privatenumber/tsx/commit/674bb30bc87ce00b36e9c820d47394defba9ae36\"\u003e\u003ccode\u003e674bb30\u003c/code\u003e\u003c/a\u003e test: consolidate tsImport commonjs mts coverage\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/privatenumber/tsx/compare/v4.22.0...v4.22.3\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `vitest` from 4.1.6 to 4.1.7\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/vitest-dev/vitest/releases\"\u003evitest's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev4.1.7\u003c/h2\u003e\n\u003ch3\u003e   🐞 Bug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003erunner\u003c/strong\u003e: Limit concurrency per task branch in addition to per leaf callbacks (backport)  -  by \u003ca href=\"https://github.com/hi-ogawa\"\u003e\u003ccode\u003e@​hi-ogawa\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/vitest-dev/vitest/issues/10384\"\u003evitest-dev/vitest#10384\u003c/a\u003e \u003ca href=\"https://github.com/vitest-dev/vitest/commit/4f0f2a1ee\"\u003e\u003c!-- raw HTML omitted --\u003e(4f0f2)\u003c!-- raw HTML omitted --\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch5\u003e    \u003ca href=\"https://github.com/vitest-dev/vitest/compare/v4.1.6...v4.1.7\"\u003eView changes on GitHub\u003c/a\u003e\u003c/h5\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vitest-dev/vitest/commit/a09d47236e19fd3151351080c667036ca6164dc4\"\u003e\u003ccode\u003ea09d472\u003c/code\u003e\u003c/a\u003e chore: release v4.1.7\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/vitest-dev/vitest/commits/v4.1.7/packages/vitest\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@assistant-ui/react` from 0.14.5 to 0.14.11\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/assistant-ui/assistant-ui/releases\"\u003e@​assistant-ui/react's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e\u003ccode\u003e@​assistant-ui/react\u003c/code\u003e\u003ca href=\"https://github.com/0\"\u003e\u003ccode\u003e@​0\u003c/code\u003e\u003c/a\u003e.14.11\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/assistant-ui/assistant-ui/pull/4125\"\u003e#4125\u003c/a\u003e \u003ca href=\"https://github.com/assistant-ui/assistant-ui/commit/e639a11838642aa111644077ba51acf6277051f2\"\u003e\u003ccode\u003ee639a11\u003c/code\u003e\u003c/a\u003e - chore: drop tracker-behaviour explainer comments left behind in satellite runtimes (\u003ca href=\"https://github.com/Yonom\"\u003e\u003ccode\u003e@​Yonom\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e\u003ccode\u003e@​assistant-ui/react\u003c/code\u003e\u003ca href=\"https://github.com/0\"\u003e\u003ccode\u003e@​0\u003c/code\u003e\u003c/a\u003e.14.9\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/assistant-ui/assistant-ui/pull/4120\"\u003e#4120\u003c/a\u003e \u003ca href=\"https://github.com/assistant-ui/assistant-ui/commit/372d4f0c538a766fd9a849fef74e413dde86d74a\"\u003e\u003ccode\u003e372d4f0\u003c/code\u003e\u003c/a\u003e - feat: simplify \u003ccode\u003eMessagePrimitive.GroupedParts\u003c/code\u003e API and add \u003ccode\u003egroupPartByType\u003c/code\u003e helper. (\u003ca href=\"https://github.com/Yonom\"\u003e\u003ccode\u003e@​Yonom\u003c/code\u003e\u003c/a\u003e)\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eNew \u003ccode\u003egroupPartByType({ ... })\u003c/code\u003e helper builds a \u003ccode\u003egroupBy\u003c/code\u003e from a \u003ccode\u003epart.type → group-key path\u003c/code\u003e lookup. The map keys are typed against \u003ccode\u003ePartState[\u0026quot;type\u0026quot;]\u003c/code\u003e (autocomplete + typo rejection), missing keys leave the part ungrouped, and the returned function carries an internal memo fingerprint so the tree survives unrelated re-renders even when reconstructed inline.\u003c/li\u003e\n\u003cli\u003eSpecial map key \u003ccode\u003e\u0026quot;mcp-app\u0026quot;\u003c/code\u003e matches tool-call parts that point at an assistant-ui MCP app resource (\u003ccode\u003eui://...\u003c/code\u003e). It takes precedence over the \u003ccode\u003e\u0026quot;tool-call\u0026quot;\u003c/code\u003e entry for those parts, so MCP apps can be routed separately (e.g. rendered outside a chain-of-thought wrapper).\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003egroupBy\u003c/code\u003e signature simplified from \u003ccode\u003e(part, index, parts) =\u0026gt; string | string[] | null | undefined\u003c/code\u003e to \u003ccode\u003e(part) =\u0026gt; readonly \\\u003c/code\u003egroup-${string}`[] | null\u003ccode\u003e. The 2nd/3rd args were unused in practice. Arrays are required (no bare-string shorthand); \u003c/code\u003enull\u003ccode\u003eis accepted as an alias for\u003c/code\u003e[]` to soften the migration.\u003c/li\u003e\n\u003cli\u003eInternal memoization now uses the helper's memo fingerprint when present, otherwise rebuilds the tree per render (O(n), cheap). The previous \u0026quot;pass a stable reference\u0026quot; advice is dropped — inline \u003ccode\u003egroupBy\u003c/code\u003e is fine.\u003c/li\u003e\n\u003cli\u003eDocs and examples updated to lead with \u003ccode\u003egroupPartByType\u003c/code\u003e. The \u003ccode\u003egetMcpAppFromToolPart\u003c/code\u003e branch in \u003ccode\u003epackages/ui\u003c/code\u003e switches to \u003ccode\u003e\u0026quot;mcp-app\u0026quot;: []\u003c/code\u003e via the helper.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/assistant-ui/assistant-ui/pull/4107\"\u003e#4107\u003c/a\u003e \u003ca href=\"https://github.com/assistant-ui/assistant-ui/commit/32ae846a91b61eccd01330693868a48f2f3bb0c4\"\u003e\u003ccode\u003e32ae846\u003c/code\u003e\u003c/a\u003e - feat: surface AI SDK v6 tool approvals as a first-class \u003ccode\u003erespondToApproval\u003c/code\u003e prop on tool components. tool-call parts in the \u003ccode\u003eapproval-requested\u003c/code\u003e state now carry \u003ccode\u003epart.approval = { id, isAutomatic? }\u003c/code\u003e; tool components call \u003ccode\u003erespondToApproval({ approved, reason? })\u003c/code\u003e to ack the gate without threading \u003ccode\u003echatHelpers\u003c/code\u003e through application context. also fixes a transient \u003ccode\u003erequires-action\u003c/code\u003e flicker for the \u003ccode\u003eapproval-responded\u003c/code\u003e state and tightens the external-message converter so interrupt vs pending tool calls are distinguished by an actual \u003ccode\u003einterrupt\u003c/code\u003e/\u003ccode\u003eapproval\u003c/code\u003e field rather than by \u003ccode\u003eresult === undefined\u003c/code\u003e. (\u003ca href=\"https://github.com/okisdev\"\u003e\u003ccode\u003e@​okisdev\u003c/code\u003e\u003c/a\u003e)\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eUpdated dependencies [\u003ca href=\"https://github.com/assistant-ui/assistant-ui/commit/372d4f0c538a766fd9a849fef74e413dde86d74a\"\u003e\u003ccode\u003e372d4f0\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/assistant-ui/assistant-ui/commit/d4f1db428b1a1fe5c122150e1e366a377e9adb5f\"\u003e\u003ccode\u003ed4f1db4\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/assistant-ui/assistant-ui/commit/32ae846a91b61eccd01330693868a48f2f3bb0c4\"\u003e\u003ccode\u003e32ae846\u003c/code\u003e\u003c/a\u003e]:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e@​assistant-ui/core\u003c/code\u003e\u003ca href=\"https://github.com/0\"\u003e\u003ccode\u003e@​0\u003c/code\u003e\u003c/a\u003e.2.6\u003c/li\u003e\n\u003cli\u003eassistant-stream@0.3.17\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e\u003ccode\u003e@​assistant-ui/react\u003c/code\u003e\u003ca href=\"https://github.com/0\"\u003e\u003ccode\u003e@​0\u003c/code\u003e\u003c/a\u003e.14.8\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/assistant-ui/assistant-ui/pull/4093\"\u003e#4093\u003c/a\u003e \u003ca href=\"https://github.com/assistant-ui/assistant-ui/commit/b02b7012cff158b4e73b82503b9ea90638b7398d\"\u003e\u003ccode\u003eb02b701\u003c/code\u003e\u003c/a\u003e - feat(react): \u003ccode\u003eunstable_insertNewlineOnTouchEnter\u003c/code\u003e on \u003ccode\u003eComposerPrimitive.Input\u003c/code\u003e (\u003ca href=\"https://github.com/okisdev\"\u003e\u003ccode\u003e@​okisdev\u003c/code\u003e\u003c/a\u003e)\u003c/p\u003e\n\u003cp\u003eWhen set, plain Enter on a touch-primary device — detected via the \u003ccode\u003e(pointer: coarse) and (not (any-pointer: fine))\u003c/code\u003e media query — inserts a newline instead of submitting. Messages then dispatch only via the explicit Send button, matching the chat-input convention used by WhatsApp, Slack, Discord, iMessage, ChatGPT, and Claude.ai, and avoiding the consumer-side caret-aware re-insertion dance the previous workaround required.\u003c/p\u003e\n\u003cp\u003eOrthogonal to \u003ccode\u003esubmitMode\u003c/code\u003e: only takes effect when \u003ccode\u003esubmitMode\u003c/code\u003e resolves to \u003ccode\u003e\u0026quot;enter\u0026quot;\u003c/code\u003e (the default). A tablet paired with a hardware keyboard can still submit via \u003ccode\u003esubmitMode=\u0026quot;ctrlEnter\u0026quot;\u003c/code\u003e (Cmd/Ctrl+Enter), and \u003ccode\u003esubmitMode=\u0026quot;none\u0026quot;\u003c/code\u003e is unchanged.\u003c/p\u003e\n\u003cpre lang=\"tsx\"\u003e\u003ccode\u003e\u0026lt;ComposerPrimitive.Input\n  placeholder=\u0026quot;Ask anything...\u0026quot;\n  unstable_insertNewlineOnTouchEnter\n/\u0026gt;\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eStays \u003ccode\u003eunstable_\u003c/code\u003e until we have enough field signal to flip the behavior on by default.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/assistant-ui/assistant-ui/pull/3967\"\u003e#3967\u003c/a\u003e \u003ca href=\"https://github.com/assistant-ui/assistant-ui/commit/0a0c306286598ea885b046a1dfb85016f720051c\"\u003e\u003ccode\u003e0a0c306\u003c/code\u003e\u003c/a\u003e - feat(core, react): add \u003ccode\u003eMessagePrimitive.GenerativeUI\u003c/code\u003e primitive (\u003ca href=\"https://github.com/samdickson22\"\u003e\u003ccode\u003e@​samdickson22\u003c/code\u003e\u003c/a\u003e)\u003c/p\u003e\n\u003cp\u003eA new first-class primitive for rendering agent-described React UI from a JSON\nspec, with a consumer-provided component allowlist as the security boundary.\u003c/p\u003e\n\u003cp\u003eThe agent emits a new \u003ccode\u003egenerative-ui\u003c/code\u003e message part containing a tree of\ncomponents by name; \u003ccode\u003eMessagePrimitive.GenerativeUI\u003c/code\u003e walks the spec and resolves\neach name against the registry you pass in. Unknown names throw a typed\n\u003ccode\u003eGenerativeUIRenderError\u003c/code\u003e (or invoke the optional \u003ccode\u003eFallback\u003c/code\u003e). Composes with\n\u003ccode\u003eMessagePrimitive.Parts\u003c/code\u003e via the new \u003ccode\u003ecomponents.generativeUI\u003c/code\u003e option, and\nsupports streaming partial specs.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/assistant-ui/assistant-ui/blob/main/packages/react/CHANGELOG.md\"\u003e@​assistant-ui/react's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e0.14.11\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/assistant-ui/assistant-ui/pull/4125\"\u003e#4125\u003c/a\u003e \u003ca href=\"https://github.com/assistant-ui/assistant-ui/commit/e639a11838642aa111644077ba51acf6277051f2\"\u003e\u003ccode\u003ee639a11\u003c/code\u003e\u003c/a\u003e - chore: drop tracker-behaviour explainer comments left behind in satellite runtimes (\u003ca href=\"https://github.com/Yonom\"\u003e\u003ccode\u003e@​Yonom\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e0.14.10\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/assistant-ui/assistant-ui/pull/4118\"\u003e#4118\u003c/a\u003e \u003ca href=\"https://github.com/assistant-ui/assistant-ui/commit/a6e0653bad29fb93627646a77c3383000c57ee33\"\u003e\u003ccode\u003ea6e0653\u003c/code\u003e\u003c/a\u003e - feat(core): build a client-side tool-invocations pipeline directly into \u003ccode\u003euseExternalStoreRuntime\u003c/code\u003e. Tool-call parts in messages now fire \u003ccode\u003estreamCall\u003c/code\u003e / \u003ccode\u003eexecute\u003c/code\u003e automatically for any external-store runtime that opts in. Opt in per-adapter via \u003ccode\u003eunstable_enableToolInvocations: true\u003c/code\u003e (off by default — most external-store runtimes either run tools server-side or already wire their own client-side dispatch path; double-firing is the risk). The \u003ccode\u003e_store.isLoading\u003c/code\u003e flag signals when initial history is loaded: snapshots observed while \u003ccode\u003eisLoading === true\u003c/code\u003e are treated as historical (no fire), matching the contract that callers like \u003ccode\u003eimportExternalState\u003c/code\u003e already rely on. Six in-tree runtimes (\u003ccode\u003euseAssistantTransportRuntime\u003c/code\u003e, \u003ccode\u003euseAISDKRuntime\u003c/code\u003e, \u003ccode\u003euseLangGraphRuntime\u003c/code\u003e, \u003ccode\u003euseStreamRuntime\u003c/code\u003e, \u003ccode\u003euseAgUiRuntime\u003c/code\u003e, \u003ccode\u003euseAdkRuntime\u003c/code\u003e) are migrated to the embedded tracker; the standalone \u003ccode\u003euseToolInvocations\u003c/code\u003e React hook is removed. Adds \u003ccode\u003eExternalStoreAdapter.setToolStatuses\u003c/code\u003e so adapters can mirror the tracker's per-tool-call status into local React state for converter metadata. Auto-aborts in-flight tool calls on new turns (\u003ccode\u003eappend()\u003c/code\u003e with \u003ccode\u003estartRun\u003c/code\u003e, \u003ccode\u003estartRun()\u003c/code\u003e) so a tool that finishes after the user moves on can no longer feed a stale result into the next turn. (\u003ca href=\"https://github.com/Yonom\"\u003e\u003ccode\u003e@​Yonom\u003c/code\u003e\u003c/a\u003e)\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eUpdated dependencies [\u003ca href=\"https://github.com/assistant-ui/assistant-ui/commit/73950929dbebadb275e3bdee23331f65f2635a33\"\u003e\u003ccode\u003e7395092\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/assistant-ui/assistant-ui/commit/a6e0653bad29fb93627646a77c3383000c57ee33\"\u003e\u003ccode\u003ea6e0653\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/assistant-ui/assistant-ui/commit/cabfc715e99f23a55dc1276a6028792d7ecad822\"\u003e\u003ccode\u003ecabfc71\u003c/code\u003e\u003c/a\u003e]:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e@​assistant-ui/core\u003c/code\u003e\u003ca href=\"https://github.com/0\"\u003e\u003ccode\u003e@​0\u003c/code\u003e\u003c/a\u003e.2.7\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@​assistant-ui/tap\u003c/code\u003e\u003ca href=\"https://github.com/0\"\u003e\u003ccode\u003e@​0\u003c/code\u003e\u003c/a\u003e.5.13\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e0.14.9\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/assistant-ui/assistant-ui/pull/4120\"\u003e#4120\u003c/a\u003e \u003ca href=\"https://github.com/assistant-ui/assistant-ui/commit/372d4f0c538a766fd9a849fef74e413dde86d74a\"\u003e\u003ccode\u003e372d4f0\u003c/code\u003e\u003c/a\u003e - feat: simplify \u003ccode\u003eMessagePrimitive.GroupedParts\u003c/code\u003e API and add \u003ccode\u003egroupPartByType\u003c/code\u003e helper. (\u003ca href=\"https://github.com/Yonom\"\u003e\u003ccode\u003e@​Yonom\u003c/code\u003e\u003c/a\u003e)\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eNew \u003ccode\u003egroupPartByType({ ... })\u003c/code\u003e helper builds a \u003ccode\u003egroupBy\u003c/code\u003e from a \u003ccode\u003epart.type → group-key path\u003c/code\u003e lookup. The map keys are typed against \u003ccode\u003ePartState[\u0026quot;type\u0026quot;]\u003c/code\u003e (autocomplete + typo rejection), missing keys leave the part ungrouped, and the returned function carries an internal memo fingerprint so the tree survives unrelated re-renders even when reconstructed inline.\u003c/li\u003e\n\u003cli\u003eSpecial map key \u003ccode\u003e\u0026quot;mcp-app\u0026quot;\u003c/code\u003e matches tool-call parts that point at an assistant-ui MCP app resource (\u003ccode\u003eui://...\u003c/code\u003e). It takes precedence over the \u003ccode\u003e\u0026quot;tool-call\u0026quot;\u003c/code\u003e entry for those parts, so MCP apps can be routed separately (e.g. rendered outside a chain-of-thought wrapper).\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003egroupBy\u003c/code\u003e signature simplified from \u003ccode\u003e(part, index, parts) =\u0026gt; string | string[] | null | undefined\u003c/code\u003e to \u003ccode\u003e(part) =\u0026gt; readonly \\\u003c/code\u003egroup-${string}`[] | null\u003ccode\u003e. The 2nd/3rd args were unused in practice. Arrays are required (no bare-string shorthand); \u003c/code\u003enull\u003ccode\u003eis accepted as an alias for\u003c/code\u003e[]` to soften the migration.\u003c/li\u003e\n\u003cli\u003eInternal memoization now uses the helper's memo fingerprint when present, otherwise rebuilds the tree per render (O(n), cheap). The previous \u0026quot;pass a stable reference\u0026quot; advice is dropped — inline \u003ccode\u003egroupBy\u003c/code\u003e is fine.\u003c/li\u003e\n\u003cli\u003eDocs and examples updated to lead with \u003ccode\u003egroupPartByType\u003c/code\u003e. The \u003ccode\u003egetMcpAppFromToolPart\u003c/code\u003e branch in \u003ccode\u003epackages/ui\u003c/code\u003e switches to \u003ccode\u003e\u0026quot;mcp-app\u0026quot;: []\u003c/code\u003e via the helper.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/assistant-ui/assistant-ui/pull/4107\"\u003e#4107\u003c/a\u003e \u003ca href=\"https://github.com/assistant-ui/assistant-ui/commit/32ae846a91b61eccd01330693868a48f2f3bb0c4\"\u003e\u003ccode\u003e32ae846\u003c/code\u003e\u003c/a\u003e - feat: surface AI SDK v6 tool approvals as a first-class \u003ccode\u003erespondToApproval\u003c/code\u003e prop on tool components. tool-call parts in the \u003ccode\u003eapproval-requested\u003c/code\u003e state now carry \u003ccode\u003epart.approval = { id, isAutomatic? }\u003c/code\u003e; tool components call \u003ccode\u003erespondToApproval({ approved, reason? })\u003c/code\u003e to ack the gate without threading \u003ccode\u003echatHelpers\u003c/code\u003e through application context. also fixes a transient \u003ccode\u003erequires-action\u003c/code\u003e flicker for the \u003ccode\u003eapproval-responded\u003c/code\u003e state and tightens the external-message converter so interrupt vs pending tool calls are distinguished by an actual \u003ccode\u003einterrupt\u003c/code\u003e/\u003ccode\u003eapproval\u003c/code\u003e field rather than by \u003ccode\u003eresult === undefined\u003c/code\u003e. (\u003ca href=\"https://github.com/okisdev\"\u003e\u003ccode\u003e@​okisdev\u003c/code\u003e\u003c/a\u003e)\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eUpdated dependencies [\u003ca href=\"https://github.com/assistant-ui/assistant-ui/commit/372d4f0c538a766fd9a849fef74e413dde86d74a\"\u003e\u003ccode\u003e372d4f0\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/assistant-ui/assistant-ui/commit/d4f1db428b1a1fe5c122150e1e366a377e9adb5f\"\u003e\u003ccode\u003ed4f1db4\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/assistant-ui/assistant-ui/commit/32ae846a91b61eccd01330693868a48f2f3bb0c4\"\u003e\u003ccode\u003e32ae846\u003c/code\u003e\u003c/a\u003e]:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e@​assistant-ui/core\u003c/code\u003e\u003ca href=\"https://github.com/0\"\u003e\u003ccode\u003e@​0\u003c/code\u003e\u003c/a\u003e.2.6\u003c/li\u003e\n\u003cli\u003eassistant-stream@0.3.17\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e0.14.8\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/assistant-ui/assistant-ui/pull/4093\"\u003e#4093\u003c/a\u003e \u003ca href=\"https://github.com/assistant-ui/assistant-ui/commit/b02b7012cff158b4e73b82503b9ea90638b7398d\"\u003e\u003ccode\u003eb02b701\u003c/code\u003e\u003c/a\u003e - feat(react): \u003ccode\u003eunstable_insertNewlineOnTouchEnter\u003c/code\u003e on \u003ccode\u003eComposerPrimitive.Input\u003c/code\u003e (\u003ca href=\"https://github.com/okisdev\"\u003e\u003ccode\u003e@​okisdev\u003c/code\u003e\u003c/a\u003e)\u003c/p\u003e\n\u003cp\u003eWhen set, plain Enter on a touch-primary device — detected via the \u003ccode\u003e(pointer: coarse) and (not (any-pointer: fine))\u003c/code\u003e media query — inserts a newline instead of submitting. Messages then dispatch only via the explicit Send button, matching the chat-input convention used by WhatsApp, Slack, Discord, iMessage, ChatGPT, and Claude.ai, and avoiding the consumer-side caret-aware re-insertion dance the previous workaround required.\u003c/p\u003e\n\u003cp\u003eOrthogonal to \u003ccode\u003esubmitMode\u003c/code\u003e: only takes effect when \u003ccode\u003esubmitMode\u003c/code\u003e resolves to \u003ccode\u003e\u0026quot;enter\u0026quot;\u003c/code\u003e (the default). A tablet paired with a hardware keyboard can still submit via \u003ccode\u003esubmitMode=\u0026quot;ctrlEnter\u0026quot;\u003c/code\u003e (Cmd/Ctrl+Enter), and \u003ccode\u003esubmitMode=\u0026quot;none\u0026quot;\u003c/code\u003e is unchanged.\u003c/p\u003e\n\u003cpre lang=\"tsx\"\u003e\u003ccode\u003e\u0026lt;ComposerPrimitive.Input\n  placeholder=\u0026quot;Ask anything...\u0026quot;\n  unstable_insertNewlineOnTouchEnter\n/\u0026gt;\n\u003c/code\u003e\u003c/pre\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/assistant-ui/assistant-ui/commits/@assistant-ui/react@0.14.11/packages/react\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@assistant-ui/react-markdown` from 0.14.0 to 0.14.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/assistant-ui/assistant-ui/releases\"\u003e@​assistant-ui/react-markdown's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e\u003ccode\u003e@​assistant-ui/react-markdown\u003c/code\u003e\u003ca href=\"https://github.com/0\"\u003e\u003ccode\u003e@​0\u003c/code\u003e\u003c/a\u003e.14.1\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/assistant-ui/assistant-ui/pull/4085\"\u003e#4085\u003c/a\u003e \u003ca href=\"https://github.com/assistant-ui/assistant-ui/commit/01244a56026ee92bd4e49cb985136f9eb6d45154\"\u003e\u003ccode\u003e01244a5\u003c/code\u003e\u003c/a\u003e - chore: update dependencies (\u003ca href=\"https://github.com/Yonom\"\u003e\u003ccode\u003e@​Yonom\u003c/code\u003e\u003c/a\u003e)\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eUpdated dependencies [\u003ca href=\"https://github.com/assistant-ui/assistant-ui/commit/b02b7012cff158b4e73b82503b9ea90638b7398d\"\u003e\u003ccode\u003eb02b701\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/assistant-ui/assistant-ui/commit/0a0c306286598ea885b046a1dfb85016f720051c\"\u003e\u003ccode\u003e0a0c306\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/assistant-ui/assistant-ui/commit/01244a56026ee92bd4e49cb985136f9eb6d45154\"\u003e\u003ccode\u003e01244a5\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/assistant-ui/assistant-ui/commit/f2ec01ce0f01317a8444b779d88f9b6a26d691c5\"\u003e\u003ccode\u003ef2ec01c\u003c/code\u003e\u003c/a\u003e]:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e@​assistant-ui/react\u003c/code\u003e\u003ca href=\"https://github.com/0\"\u003e\u003ccode\u003e@​0\u003c/code\u003e\u003c/a\u003e.14.8\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/assistant-ui/assistant-ui/blob/main/packages/react-markdown/CHANGELOG.md\"\u003e@​assistant-ui/react-markdown's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e0.14.1\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/assistant-ui/assistant-ui/pull/4085\"\u003e#4085\u003c/a\u003e \u003ca href=\"https://github.com/assistant-ui/assistant-ui/commit/01244a56026ee92bd4e49cb985136f9eb6d45154\"\u003e\u003ccode\u003e01244a5\u003c/code\u003e\u003c/a\u003e - chore: update dependencies (\u003ca href=\"https://github.com/Yonom\"\u003e\u003ccode\u003e@​Yonom\u003c/code\u003e\u003c/a\u003e)\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eUpdated dependencies [\u003ca href=\"https://github.com/assistant-ui/assistant-ui/commit/b02b7012cff158b4e73b82503b9ea90638b7398d\"\u003e\u003ccode\u003eb02b701\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/assistant-ui/assistant-ui/commit/0a0c306286598ea885b046a1dfb85016f720051c\"\u003e\u003ccode\u003e0a0c306\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/assistant-ui/assistant-ui/commit/01244a56026ee92bd4e49cb985136f9eb6d45154\"\u003e\u003ccode\u003e01244a5\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/assistant-ui/assistant-ui/commit/f2ec01ce0f01317a8444b779d88f9b6a26d691c5\"\u003e\u003ccode\u003ef2ec01c\u003c/code\u003e\u003c/a\u003e]:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e@​assistant-ui/react\u003c/code\u003e\u003ca href=\"https://github.com/0\"\u003e\u003ccode\u003e@​0\u003c/code\u003e\u003c/a\u003e.14.8\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/assistant-ui/assistant-ui/commit/190d8d67262961cb6abaf83b85719b7980278913\"\u003e\u003ccode\u003e190d8d6\u003c/code\u003e\u003c/a\u003e chore: update versions (\u003ca href=\"https://github.com/assistant-ui/assistant-ui/tree/HEAD/packages/react-markdown/issues/4080\"\u003e#4080\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/assistant-ui/assistant-ui/commit/01244a56026ee92bd4e49cb985136f9eb6d45154\"\u003e\u003ccode\u003e01244a5\u003c/code\u003e\u003c/a\u003e chore: update dependencies and migrate to pnpm 11 (\u003ca href=\"https://github.com/assistant-ui/assistant-ui/tree/HEAD/packages/react-markdown/issues/4085\"\u003e#4085\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/assistant-ui/assistant-ui/commit/a5c3b5433d002c6bd9db46d9416549a7c3728706\"\u003e\u003ccode\u003ea5c3b54\u003c/code\u003e\u003c/a\u003e chore: update versions (\u003ca href=\"https://github.com/assistant-ui/assistant-ui/tree/HEAD/packages/react-markdown/issues/4074\"\u003e#4074\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/assistant-ui/assistant-ui/commit/e926633f806954e07fc289c9fb12e5032ed8ff9d\"\u003e\u003ccode\u003ee926633\u003c/code\u003e\u003c/a\u003e chore: update versions (\u003ca href=\"https://github.com/assistant-ui/assistant-ui/tree/HEAD/packages/react-markdown/issues/4034\"\u003e#4034\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/assistant-ui/assistant-ui/commit/b77beaf2d047e30859ab18cec5a33c5be1018b86\"\u003e\u003ccode\u003eb77beaf\u003c/code\u003e\u003c/a\u003e fix(react|safe-content-frame): handle MCP-UI 2026-01-26 method names + guard ...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/assistant-ui/assistant-ui/commit/0b0e68759c0c8a4b322525e6d82c92c65f4cf687\"\u003e\u003ccode\u003e0b0e687\u003c/code\u003e\u003c/a\u003e chore: update versions (\u003ca href=\"https://github.com/assistant-ui/assistant-ui/tree/HEAD/packages/react-markdown/issues/4032\"\u003e#4032\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/assistant-ui/assistant-ui/commit/3ad90479d0fb3261a927f054f4efc6ee87862888\"\u003e\u003ccode\u003e3ad9047\u003c/code\u003e\u003c/a\u003e chore: update versions (\u003ca href=\"https://github.com/assistant-ui/assistant-ui/tree/HEAD/packages/react-markdown/issues/4021\"\u003e#4021\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/assistant-ui/assistant-ui/commit/d7d452199fa258a6602cae6d39820905e808a1f7\"\u003e\u003ccode\u003ed7d4521\u003c/code\u003e\u003c/a\u003e chore: update versions (\u003ca href=\"https://github.com/assistant-ui/assistant-ui/tree/HEAD/packages/react-markdown/issues/3973\"\u003e#3973\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/assistant-ui/assistant-ui/commit/697f428169af988bb03bd18372db457ea1c01c76\"\u003e\u003ccode\u003e697f428\u003c/code\u003e\u003c/a\u003e docs: standardize package READMEs to a tier convention (\u003ca href=\"https://github.com/assistant-ui/assistant-ui/tree/HEAD/packages/react-markdown/issues/4007\"\u003e#4007\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/assistant-ui/assistant-ui/commits/@assistant-ui/react-markdown@0.14.1/packages/react-markdown\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `lucide-react` from 1.16.0 to 1.17.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/lucide-icons/lucide/releases\"\u003elucide-react's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eVersion 1.17.0\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003echore(lucide-vue-next|lucide-svelte|lucide-angular): Remove deprecated packages by \u003ca href=\"https://github.com/ericfennis\"\u003e\u003ccode\u003e@​ericfennis\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/lucide-icons/lucide/pull/4376\"\u003elucide-icons/lucide#4376\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(repo): Update issue templates and documentation for package ren… by \u003ca href=\"https://github.com/ericfennis\"\u003e\u003ccode\u003e@​ericfennis\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/lucide-icons/lucide/pull/4379\"\u003elucide-icons/lucide#4379\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efeat(site): Adds survey overlay to website by \u003ca href=\"https://github.com/ericfennis\"\u003e\u003ccode\u003e@​ericfennis\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/lucide-icons/lucide/pull/4380\"\u003elucide-icons/lucide#4380\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efeat(site): Certificate dev links by \u003ca href=\"https://github.com/ericfennis\"\u003e\u003ccode\u003e@​ericfennis\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/lucide-icons/lucide/pull/4390\"\u003elucide-icons/lucide#4390\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix(icons): changed \u003ccode\u003emartini\u003c/code\u003e icon by \u003ca href=\"https://github.com/jamiemlaw\"\u003e\u003ccode\u003e@​jamiemlaw\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/lucide-icons/lucide/pull/4335\"\u003elucide-icons/lucide#4335\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(deps): bump brace-expansion from 1.1.11 to 5.0.6 by \u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/lucide-icons/lucide/pull/4386\"\u003elucide-icons/lucide#4386\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(deps): bump \u003ccode\u003e@​tootallnate/once\u003c/code\u003e from 2.0.0 to 2.0.1 by \u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/lucide-icons/lucide/pull/4404\"\u003elucide-icons/lucide#4404\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(deps): bump devalue from 5.8.0 to 5.8.1 by \u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/lucide-icons/lucide/pull/4391\"\u003elucide-icons/lucide#4391\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(deps): bump ws from 8.18.0 to 8.20.1 by \u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/lucide-icons/lucide/pull/4392\"\u003elucide-icons/lucide#4392\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix(gh-icon): limit icon size to a maximum of 256 pixels by \u003ca href=\"https://github.com/jguddas\"\u003e\u003ccode\u003e@​jguddas\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/lucide-icons/lucide/pull/4398\"\u003elucide-icons/lucide#4398\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(dependencies): Update dependencies by \u003ca href=\"https://github.com/ericfennis\"\u003e\u003ccode\u003e@​ericfennis\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/lucide-icons/lucide/pull/4377\"\u003elucide-icons/lucide#4377\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efeat(copilot): Adding copilot instructions by \u003ca href=\"https://github.com/ericfennis\"\u003e\u003ccode\u003e@​ericfennis\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/lucide-icons/lucide/pull/4407\"\u003elucide-icons/lucide#4407\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efeat(icons): add \u003ccode\u003eglobe-check\u003c/code\u003e by \u003ca href=\"https://github.com/Barakudum\"\u003e\u003ccode\u003e@​Barakudum\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/lucide-icons/lucide/pull/4342\"\u003elucide-icons/lucide#4342\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efeat(metadata): Require use-cases in meta json by \u003ca href=\"https://github.com/ericfennis\"\u003e\u003ccode\u003e@​ericfennis\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/lucide-icons/lucide/pull/4321\"\u003elucide-icons/lucide#4321\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efeat(icons): added \u003ccode\u003eparasol\u003c/code\u003e icon by \u003ca href=\"https://github.com/karsa-mistmere\"\u003e\u003ccode\u003e@​karsa-mistmere\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/lucide-icons/lucide/pull/4347\"\u003elucide-icons/lucide#4347\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/lucide-icons/lucide/compare/1.16.0...1.17.0\"\u003ehttps://github.com/lucide-icons/lucide/compare/1.16.0...1.17.0\u003c/a\u003e\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/lucide-icons/lucide/commits/1.17.0/packages/lucide-react\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `react-resizable-panels` from 4.11.1 to 4.11.2\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/bvaughn/react-resizable-panels/blob/main/CHANGELOG.md\"\u003ereact-resizable-panels's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e4.11.2\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/bvaughn/react-resizable-panels/pull/719\"\u003e719)\u003c/a\u003e: Bug fix: Calculate rem-based sizes relative to owner document (not body)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/bvaughn/react-resizable-panels/commits\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `shiki` from 4.0.2 to 4.1.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/shikijs/shiki/releases\"\u003eshiki's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev4.1.0\u003c/h2\u003e\n\u003ch3\u003e   🐞 Bug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003etwoslash\u003c/strong\u003e: Forward \u003ccode\u003etsModule\u003c/code\u003e to \u003ccode\u003ecreateTwoslasher\u003c/code\u003e  -  by \u003ca href=\"https://github.com/arthurfiorette\"\u003e\u003ccode\u003e@​arthurfiorette\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/shikijs/shiki/issues/1271\"\u003eshikijs/shiki#1271\u003c/a\u003e \u003ca href=\"https://github.com/shikijs/shiki/commit/be89afcf\"\u003e\u003c!-- raw HTML omitted --\u003e(be89a)\u003c!-- raw HTML omitted --\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch5\u003e    \u003ca href=\"https://github.com/shikijs/shiki/compare/v4.0.2...v4.1.0\"\u003eView changes on GitHub\u003c/a\u003e\u003c/h5\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/shikijs/shiki/commit/c809af96f1907877c5cebfeee98ac5d55193140b\"\u003e\u003ccode\u003ec809af9\u003c/code\u003e\u003c/a\u003e chore: release v4.1.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/shikijs/shiki/commit/95371cb1b3c00ced5b437a11f603939002f9ecae\"\u003e\u003ccode\u003e95371cb\u003c/code\u003e\u003c/a\u003e chore: lint\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/shikijs/shiki/commits/v4.1.0/packages/shiki\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `zustand` from 5.0.13 to 5.0.14\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pmndrs/zustand/releases\"\u003ezustand's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev5.0.14\u003c/h2\u003e\n\u003cp\u003eThis release fixes a type issue in devtools.\u003c/p\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003efix(devtools): improve type inference for Devtools initializer by \u003ca href=\"https://github.com/dbritto-dev\"\u003e\u003ccode\u003e@​dbritto-dev\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pmndrs/zustand/pull/3511\"\u003epmndrs/zustand#3511\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eNew Contributors\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/TheSeydiCharyyev\"\u003e\u003ccode\u003e@​TheSeydiCharyyev\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/pmndrs/zustand/pull/3487\"\u003epmndrs/zustand#3487\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/brofrong\"\u003e\u003ccode\u003e@​brofrong\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/pmndrs/zustand/pull/3496\"\u003epmndrs/zustand#3496\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/hyun907\"\u003e\u003ccode\u003e@​hyun907\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/pmndrs/zustand/pull/3506\"\u003epmndrs/zustand#3506\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/pmndrs/zustand/compare/v5.0.13...v5.0.14\"\u003ehttps://github.com/pmndrs/zustand/compare/v5.0.13...v5.0.14\u003c/a\u003e\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmndrs/zustand/commit/bfb2a9e7ce52608d54d8a077fb87ac9d12e73c58\"\u003e\u003ccode\u003ebfb2a9e\u003c/code\u003e\u003c/a\u003e 5.0.14\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmndrs/zustand/commit/62b2aff30c3860a1ad735d61801c6cc379771d24\"\u003e\u003ccode\u003e62b2aff\u003c/code\u003e\u003c/a\u003e chore(deps): update dev dependencies (\u003ca href=\"https://redirect.github.com/pmndrs/zustand/issues/3513\"\u003e#3513\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmndrs/zustand/commit/ad77bd3bb6f7bbd12fea8b458ed5c0673df0793a\"\u003e\u003ccode\u003ead77bd3\u003c/code\u003e\u003c/a\u003e fix(devtools): improve type inference for Devtools initializer (\u003ca href=\"https://redirect.github.com/pmndrs/zustand/issues/3511\"\u003e#3511\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmndrs/zustand/commit/8476d2ca288d787c1ffdd53615f44c85e98f87be\"\u003e\u003ccode\u003e8476d2c\u003c/code\u003e\u003c/a\u003e update pnpm etc (\u003ca href=\"https://redirect.github.com/pmndrs/zustand/issues/3512\"\u003e#3512\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmndrs/zustand/commit/d690ec29a923977d7a9091554445d1026dfe4611\"\u003e\u003ccode\u003ed690ec2\u003c/code\u003e\u003c/a\u003e docs(combine): add object constraints to T and U in signature (\u003ca href=\"https://redirect.github.com/pmndrs/zustand/issues/3506\"\u003e#3506\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmndrs/zustand/commit/fd8c60190191c66270ced434196a210f481e9d35\"\u003e\u003ccode\u003efd8c601\u003c/code\u003e\u003c/a\u003e docs(react): add Action constraint to redux middleware signature (\u003ca href=\"https://redirect.github.com/pmndrs/zustand/issues/3492\"\u003e#3492\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmndrs/zustand/commit/2ce8226ba4481bec4ab7e1573606d336f4003fba\"\u003e\u003ccode\u003e2ce8226\u003c/code\u003e\u003c/a\u003e docs(immer): fix setPerson updater type in usage examples (\u003ca href=\"https://redirect.github.com/pmndrs/zustand/issues/3502\"\u003e#3502\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmndrs/zustand/commit/038b93861b232e3b7e15a40d561c0d69fec2f2f1\"\u003e\u003ccode\u003e038b938\u003c/code\u003e\u003c/a\u003e docs(updating-state): use curried create form with explicit state type (\u003ca href=\"https://redirect.github.com/pmndrs/zustand/issues/3503\"\u003e#3503\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmndrs/zustand/commit/60a91b480b0d1742584c651cc0ddd58ac9a230ea\"\u003e\u003ccode\u003e60a91b4\u003c/code\u003e\u003c/a\u003e docs(devtools): add missing devtools import to troubleshooting example (\u003ca href=\"https://redirect.github.com/pmndrs/zustand/issues/3501\"\u003e#3501\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmndrs/zustand/commit/efad16936dd6f648075dc1e86abe9a072746530e\"\u003e\u003ccode\u003eefad169\u003c/code\u003e\u003c/a\u003e Update FUNDING.json\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pmndrs/zustand/compare/v5.0.13...v5.0.14\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@types/react` from 19.2.14 to 19.2.15\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/react\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `electron` from 41.6.1 to 42.3.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/electron/electron/releases\"\u003eelectron's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eelectron v42.3.0\u003c/h2\u003e\n\u003ch1\u003eRelease Notes for v42.3.0\u003c/h1\u003e\n\u003ch2\u003eFeatures\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAdded Linux support for \u003ccode\u003eapp.getApplicationInfoForProtocol()\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/electron/electron/pull/51680\"\u003e#51680\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdded Notification.remove(), removeAll(), and removeGroup() static methods for macOS. \u003ca href=\"https://redirect.github.com/electron/electron/pull/51691\"\u003e#51691\u003c/a\u003e \u003c!-- raw HTML omitted --\u003e(Also in \u003ca href=\"https://redirect.github.com/electron/electron/pull/51690\"\u003e43\u003c/a\u003e)\u003c!-- raw HTML omitted --\u003e\u003c/li\u003e\n\u003cli\u003eAdded session support to net module requests from utility process. \u003ca href=\"https://redirect.github.com/electron/electron/pull/51698\"\u003e#51698\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eFixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eFixed an issue where \u003ccode\u003eprocess\u003c/code\u003e and other Node globals were undefined in ESM preload scripts when \u003ccode\u003econtextIsolation\u003c/code\u003e was disabled. \u003ca href=\"https://redirect.github.com/electron/electron/pull/51726\"\u003e#51726\u003c/a\u003e \u003c!-- raw HTML omitted --\u003e(Also in \u003ca href=\"https://redirect.github.com/electron/electron/pull/51723\"\u003e43\u003c/a\u003e)\u003c!-- raw HTML omitted --\u003e\u003c/li\u003e\n\u003cli\u003eFixed native addon compilation failure with undefined msvc intrinsic from v8 headers. \u003ca href=\"https://redirect.github.com/electron/electron/pull/51706\"\u003e#51706\u003c/a\u003e \u003c!-- raw HTML omitted --\u003e(Also in \u003ca href=\"https://redirect.github.com/electron/electron/pull/51705\"\u003e43\u003c/a\u003e)\u003c!-- raw HTML omitted --\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eOther Changes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eUpdated Chromium to 148.0.7778.180. \u003ca href=\"https://redirect.github.com/electron/electron/pull/51600\"\u003e#51600\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eelectron v42.2.0\u003c/h2\u003e\n\u003ch1\u003eRelease Notes for v42.2.0\u003c/h1\u003e\n\u003ch2\u003eFeatures\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAllowed the \u003ccode\u003e--experimental-inspector-network-resource\u003c/code\u003e Node.js flag to be passed through Electron. \u003ca href=\"https://redirect.github.com/electron/electron/pull/51378\"\u003e#51378\u003c/a\u003e \u003c!-- raw HTML omitted --\u003e(Also in \u003ca href=\"https://redirect.github.com/electron/electron/pull/51377\"\u003e41\u003c/a\u003e)\u003c!-- raw HTML omitted --\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eFixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eFixed crash for Notification close. \u003ca href=\"https://redirect.github.com/electron/electron/pull/51657\"\u003e#51657\u003c/a\u003e \u003c!-- raw HTML omitted --\u003e(Also in \u003ca href=\"https://redirect.github.com/electron/electron/pull/51656\"\u003e41\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/electron/electron/pull/51655\"\u003e43\u003c/a\u003e)\u003c!-- raw HTML omitted --\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eOther Changes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eBackported fixes for a use-after-free in touch-event queue teardown, a runtime-effect validation gap in Skia image filters, and an integer overflow in the GLSL translator. \u003ca href=\"https://redirect.github.com/electron/electron/pull/51646\"\u003e#51646\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBackported fixes for an out-of-bounds write in WebAudio worklet setup, a heap overflow in the ANGLE GL backend, a use-after-free in the GTK Wayland platform, an accessibility tree-state validation issue, and an integer overflow in text bidi handling. \u003ca href=\"https://redirect.github.com/electron/electron/pull/51666\"\u003e#51666\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eImproved performance of \u003ccode\u003eapp.getApplicationNameForProtocol()\u003c/code\u003e on Linux. \u003ca href=\"https://redirect.github.com/electron/electron/pull/51628\"\u003e#51628\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eDocumentation\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eDocumentation changes: \u003ca href=\"https://redirect.github.com/electron/electron/pull/51688\"\u003e#51688\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eelectron v42.1.0\u003c/h2\u003e\n\u003ch1\u003eRelease Notes for v42.1.0\u003c/h1\u003e\n\u003ch2\u003eFixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eFixed a crash in the macOS Touch ID WebAuthn prompt caused by a missing string resource, and added \u003ccode\u003etouchID.promptReason\u003c/code\u003e to \u003ccode\u003eapp.configureWebAuthn()\u003c/code\u003e to customize the prompt text. \u003ca href=\"https://redirect.github.com/electron/electron/pull/51594\"\u003e#51594\u003c/a\u003e \u003c!-- raw HTML omitted --\u003e(Also in \u003ca href=\"https://redirect.github.com/electron/electron/pull/51604\"\u003e41\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/electron/electron/pull/51595\"\u003e43\u003c/a\u003e)\u003c!-- raw HTML omitted --\u003e\u003c/li\u003e\n\u003cli\u003eFixed a crash on MacOS when a user clicked into a title bar or top view. \u003ca href=\"https://redirect.github.com/electron/electron/pull/51605\"\u003e#51605\u003c/a\u003e \u003c!-- raw HTML omitted --\u003e(Also in \u003ca href=\"https://redirect.github.com/electron/electron/pull/51606\"\u003e43\u003c/a\u003e)\u003c!-- raw HTML omitted --\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eOther Changes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eImproved performance of \u003ccode\u003ewebRequest\u003c/code\u003e header conversions and several other gin converter hot paths. \u003ca href=\"https://redirect.github.com/electron/electron/pull/51607\"\u003e#51607\u003c/a\u003e \u003c!-- raw HTML omitted --\u003e(Also in \u003ca href=\"https://redirect.github.com/electron/electron/pull/51608\"\u003e43\u003c/a\u003e)\u003c!-- raw HTML omitted --\u003e\u003c/li\u003e\n\u003cli\u003eImproved performance of native event emission, IPC dispatch, and option-dictionary parsing. \u003ca href=\"https://redirect.github.com/electron/electron/pull/51614\"\u003e#51614\u003c/a\u003e \u003c!-- raw HTML omitted --\u003e(Also in \u003ca href=\"https://redirect.github.com/electron/electron/pull/51613\"\u003e41\u003c/a\u003e)\u003c!-- raw HTML omitted --\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eelectron v42.0.1\u003c/h2\u003e\n\u003ch1\u003eRelease Notes for v42.0.1\u003c/h1\u003e\n\u003ch2\u003eFixes\u003c/h2\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/electron/electron/commit/e0127e99aeaa66bb580538fc7409831b5248cccb\"\u003e\u003ccode\u003ee0127e9\u003c/code\u003e\u003c/a\u003e chore: bump chromium to 148.0.7778.180 (42-x-y) (\u003ca href=\"https://redirect.github.com/electron/electron/issues/51600\"\u003e#51600\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/electron/electron/commit/b07916bfa5b7cb5056c36c0cf4769849941d7ce1\"\u003e\u003ccode\u003eb07916b\u003c/code\u003e\u003c/a\u003e ci: unpin homebrew version (\u003ca href=\"https://redirect.github.com/electron/electron/issues/51762\"\u003e#51762\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/electron/electron/commit/6aac40e76ca1eace7b13f5c5451b586e010fe558\"\u003e\u003ccode\u003e6aac40e\u003c/code\u003e\u003c/a\u003e refactor: api::utilityProcessWrapper managed by cppgc (\u003ca href=\"https://redirect.github.com/electron/electron/issues/50955\"\u003e#50955\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/electron/electron/issues/51752\"\u003e#51752\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/electron/electron/commit/bb52cd543ded7b33e1232c3d8d743c8fa8387d8e\"\u003e\u003ccode\u003ebb52cd5\u003c/code\u003e\u003c/a\u003e chore: do not require infr singoff for github workflows/actions (\u003ca href=\"https://redirect.github.com/electron/electron/issues/51738\"\u003e#51738\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/electron/electron/issues/51\"\u003e#51\u003c/a\u003e...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/electron/electron/commit/fd02b05625e0e4a950e45a67642d8fba95510689\"\u003e\u003ccode\u003efd02b05\u003c/code\u003e\u003c/a\u003e refactor: rm chore_add_electron_objects_to_wrappablepointertag.patch (\u003ca href=\"https://redirect.github.com/electron/electron/issues/51734\"\u003e#51734\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/electron/electron/commit/34102a58a53d64c992d37bd745db49ecee1b5a30\"\u003e\u003ccode\u003e34102a5\u003c/code\u003e\u003c/a\u003e fix: \u003ccode\u003eprocess\u003c/code\u003e undefined in ESM preload when contextIsolation is disabled (\u003ca href=\"https://redirect.github.com/electron/electron/issues/5\"\u003e#5\u003c/a\u003e...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/electron/electron/commit/09d7d7af4d9e87dfe86f445790f0f699d3aedc96\"\u003e\u003ccode\u003e09d7d7a\u003c/code\u003e\u003c/a\u003e feat: add Linux support for \u003ccode\u003eapp.getApplicationInfoForProtocol()\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/electron/electron/issues/5\"\u003e#5\u003c/a\u003e… (\u003ca href=\"https://redirect.github.com/electron/electron/issues/51680\"\u003e#51680\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/electron/electron/commit/bbf87a7d991ca4bafb03717adc157413fb729d18\"\u003e\u003ccode\u003ebbf87a7\u003c/code\u003e\u003c/a\u003e feat: add remove, removeAll, and removeGroup for notifications API (\u003ca href=\"https://redirect.github.com/electron/electron/issues/51691\"\u003e#51691\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/electron/electron/commit/c9598c82e42f52b772e96b4b6d2bff04465fedde\"\u003e\u003ccode\u003ec9598c8\u003c/code\u003e\u003c/a\u003e feat: add http cache support to requests from utility process (\u003ca href=\"https://redirect.github.com/electron/electron/issues/51698\"\u003e#51698\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/electron/electron/commit/102aebe84143dceb32e7de7ffed64755ca47c20d\"\u003e\u003ccode\u003e102aebe\u003c/code\u003e\u003c/a\u003e ci: set no color output during build (\u003ca href=\"https://redirect.github.com/electron/electron/issues/51709\"\u003e#51709\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/electron/electron/compare/v41.6.1...v42.3.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `vite` from 8.0.13 to 8.0.14\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/vitejs/vite/releases\"\u003evite's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev8.0.14\u003c/h2\u003e\n\u003cp\u003ePlease refer to \u003ca href=\"https://github.com/vitejs/vite/blob/v8.0.14/packages/vite/CHANGELOG.md\"\u003eCHANGELOG.md\u003c/a\u003e for details.\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/vitejs/vite/blob/main/packages/vite/CHANGELOG.md\"\u003evite's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e\u003c!-- raw HTML omitted --\u003e\u003ca href=\"https://github.com/vitejs/vite/compare/v8.0.13...v8.0.14\"\u003e8.0.14\u003c/a\u003e (2026-05-21)\u003c!-- raw HTML omitted --\u003e\u003c/h2\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eupdate rolldown to 1.0.2 (\u003ca href=\"https://redirect.github.com/vitejs/vite/issues/22484\"\u003e#22484\u003c/a\u003e) (\u003ca href=\"https://github.com/vitejs/vite/commit/96efc88570b6a6ddf1a910f106920cbac07b3cf0\"\u003e96efc88\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003edeps:\u003c/strong\u003e update all non-major dependencies (\u003ca href=\"https://redirect.github.com/vitejs/vite/issues/22471\"\u003e#22471\u003c/a\u003e) (\u003ca href=\"https://github.com/vitejs/vite/commit/98b81632139d51820f82036e58d6fbbf122b77b3\"\u003e98b8163\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003edev:\u003c/strong\u003e handle errors when sending messages to vite server (\u003ca href=\"https://redirect.github.com/vitejs/vite/issues/22450\"\u003e#22450\u003c/a\u003e) (\u003ca href=\"https://github.com/vitejs/vite/commit/e8e9a34dcf2540139de558a10187630884d10217\"\u003ee8e9a34\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003ehtml:\u003c/strong\u003e handle trailing slash paths in transformIndexHtml (\u003ca href=\"https://redirect.github.com/vitejs/vite/issues/22480\"\u003e#22480\u003c/a\u003e) (\u003ca href=\"https://github.com/vitejs/vite/commit/5d94d1bffdb2a15de9341194d89baec86ce1f693\"\u003e5d94d1b\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eoptimizer:\u003c/strong\u003e pass oxc jsx options to transformSync in dependency scan                                                            (\u003ca href=\"https://redirect.github.com/vitejs/vite/issues/22342\"\u003e#22342\u003c/a\u003e) (\u003ca href=\"https://github.com/vitejs/vite/commit/b3132dacea9c6e0cf526cd9f0f09d850f577c262\"\u003eb3132da\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eMiscellaneous Chores\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003edeps:\u003c/strong\u003e update rolldown-related dependencies (\u003ca href=\"https://redirect.github.com/vitejs/vite/issues/22470\"\u003e#22470\u003c/a\u003e) (\u003ca href=\"https://github.com/vitejs/vite/commit/7cb728eb629cc677661f1bc52a044ffc0b87fc7f\"\u003e7cb728e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eremove irrelevant commits from changelog (\u003ca href=\"https://github.com/vitejs/vite/commit/2c69495f250edf01132d4a20128de19dbe836086\"\u003e2c69495\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eCode Refactoring\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eglob:\u003c/strong\u003e do not rewrite import path for absolute base (\u003ca href=\"https://redirect.github.com/vitejs/vite/issues/22310\"\u003e#22310\u003c/a\u003e) (\u003ca href=\"https://github.com/vitejs/vite/commit/0ae2844ab6d6d1ccf78a2975...\n\n_Description has been truncated_","html_url":"https://github.com/qlan-ro/mainframe/pull/358","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/qlan-ro%2Fmainframe/issues/358","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/358/packages"}},{"old_version":"5.1.3","new_version":"5.3.0","update_type":"minor","path":null,"pr_created_at":"2026-05-25T05:38:58.000Z","version_change":"5.1.3 → 5.3.0","issue":{"uuid":"4514549823","node_id":"PR_kwDOSgivzc7e6zdO","number":2,"state":"open","title":"deps(deps): bump the all-dependencies group across 1 directory with 68 updates","user":"dependabot[bot]","labels":[],"assignees":[],"locked":false,"comments_count":1,"pull_request":true,"closed_at":null,"author_association":null,"state_reason":null,"created_at":"2026-05-25T05:38:58.000Z","updated_at":"2026-05-25T05:38:59.000Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"deps(deps): bump","group_name":"all-dependencies","update_count":68,"packages":[{"name":"@eslint-react/eslint-plugin","old_version":"2.13.0","new_version":"5.8.5","repository_url":"https://github.com/Rel1cx/eslint-react"},{"name":"@eslint/js","old_version":"9.39.2","new_version":"10.0.1","repository_url":"https://github.com/eslint/eslint"},{"name":"@typescript-eslint/eslint-plugin","old_version":"8.56.0","new_version":"8.59.4","repository_url":"https://github.com/typescript-eslint/typescript-eslint"},{"name":"@typescript-eslint/parser","old_version":"8.56.0","new_version":"8.59.4","repository_url":"https://github.com/typescript-eslint/typescript-eslint"},{"name":"eslint","old_version":"9.39.2","new_version":"10.4.0","repository_url":"https://github.com/eslint/eslint"},{"name":"eslint-plugin-react-hooks","old_version":"7.0.1","new_version":"7.1.1","repository_url":"https://github.com/facebook/react"},{"name":"globals","old_version":"17.3.0","new_version":"17.6.0","repository_url":"https://github.com/sindresorhus/globals"},{"name":"graphql","old_version":"16.12.0","new_version":"16.14.0","repository_url":"https://github.com/graphql/graphql-js"},{"name":"happy-dom","old_version":"20.6.2","new_version":"20.9.0","repository_url":"https://github.com/capricorn86/happy-dom"},{"name":"jiti","old_version":"2.6.1","new_version":"2.7.0","repository_url":"https://github.com/unjs/jiti"},{"name":"lint-staged","old_version":"16.2.7","new_version":"17.0.5","repository_url":"https://github.com/lint-staged/lint-staged"},{"name":"mermaid","old_version":"11.12.3","new_version":"11.15.0","repository_url":"https://github.com/mermaid-js/mermaid"},{"name":"prettier","old_version":"3.8.1","new_version":"3.8.3","repository_url":"https://github.com/prettier/prettier"},{"name":"react","old_version":"19.2.4","new_version":"19.2.6","repository_url":"https://github.com/facebook/react"},{"name":"@types/react","old_version":"19.2.14","new_version":"19.2.15","repository_url":"https://github.com/DefinitelyTyped/DefinitelyTyped"},{"name":"typescript","old_version":"5.9.3","new_version":"6.0.3","repository_url":"https://github.com/microsoft/TypeScript"},{"name":"typescript-eslint","old_version":"8.56.0","new_version":"8.59.4","repository_url":"https://github.com/typescript-eslint/typescript-eslint"},{"name":"typescript-language-server","old_version":"5.1.3","new_version":"5.3.0","repository_url":"https://github.com/typescript-language-server/typescript-language-server"},{"name":"vite","old_version":"7.3.1","new_version":"8.0.14","repository_url":"https://github.com/vitejs/vite"},{"name":"vitepress","old_version":"2.0.0-alpha.16","new_version":"2.0.0-alpha.17","repository_url":"https://github.com/vuejs/vitepress"},{"name":"vitepress-plugin-llms","old_version":"1.11.0","new_version":"1.13.0","repository_url":"https://github.com/okineadev/vitepress-plugin-llms"},{"name":"vitest","old_version":"4.0.18","new_version":"4.1.7","repository_url":"https://github.com/vitest-dev/vitest"},{"name":"wrangler","old_version":"4.66.0","new_version":"4.94.0","repository_url":"https://github.com/cloudflare/workers-sdk"},{"name":"@ai-sdk/openai","old_version":"3.0.29","new_version":"3.0.65","repository_url":"https://github.com/vercel/ai"},{"name":"@better-auth/passkey","old_version":"1.4.18","new_version":"1.6.11","repository_url":"https://github.com/better-auth/better-auth"},{"name":"@better-auth/stripe","old_version":"1.4.18","new_version":"1.6.11","repository_url":"https://github.com/better-auth/better-auth"},{"name":"@trpc/server","old_version":"11.10.0","new_version":"11.17.0","repository_url":"https://github.com/trpc/trpc"},{"name":"ai","old_version":"6.0.91","new_version":"6.0.191","repository_url":"https://github.com/vercel/ai"},{"name":"better-auth","old_version":"1.4.18","new_version":"1.6.11","repository_url":"https://github.com/better-auth/better-auth"},{"name":"drizzle-orm","old_version":"0.45.1","new_version":"0.45.2","repository_url":"https://github.com/drizzle-team/drizzle-orm"},{"name":"postgres","old_version":"3.4.8","new_version":"3.4.9","repository_url":"https://github.com/porsager/postgres"},{"name":"resend","old_version":"6.9.2","new_version":"6.12.3","repository_url":"https://github.com/resend/resend-node"},{"name":"stripe","old_version":"20.3.1","new_version":"22.1.1","repository_url":"https://github.com/stripe/stripe-node"},{"name":"@cloudflare/workers-types","old_version":"4.20260218.0","new_version":"4.20260525.1","repository_url":"https://github.com/cloudflare/workerd"},{"name":"@types/bun","old_version":"1.3.9","new_version":"1.3.14","repository_url":"https://github.com/DefinitelyTyped/DefinitelyTyped"},{"name":"hono","old_version":"4.11.10","new_version":"4.12.23","repository_url":"https://github.com/honojs/hono"},{"name":"@tanstack/react-query","old_version":"5.90.21","new_version":"5.100.14","repository_url":"https://github.com/TanStack/query"},{"name":"@tanstack/react-router","old_version":"1.161.1","new_version":"1.170.8","repository_url":"https://github.com/TanStack/router"},{"name":"@trpc/client","old_version":"11.10.0","new_version":"11.17.0","repository_url":"https://github.com/trpc/trpc"},{"name":"@trpc/tanstack-react-query","old_version":"11.10.0","new_version":"11.17.0","repository_url":"https://github.com/trpc/trpc"},{"name":"jotai","old_version":"2.17.1","new_version":"2.20.0","repository_url":"https://github.com/pmndrs/jotai"},{"name":"jotai-effect","old_version":"2.2.3","new_version":"2.3.1","repository_url":"https://github.com/jotaijs/jotai-effect"},{"name":"lucide-react","old_version":"0.574.0","new_version":"1.16.0","repository_url":"https://github.com/lucide-icons/lucide"},{"name":"react-dom","old_version":"19.2.4","new_version":"19.2.6","repository_url":"https://github.com/facebook/react"},{"name":"react-error-boundary","old_version":"6.1.1","new_version":"6.1.2","repository_url":"https://github.com/bvaughn/react-error-boundary"},{"name":"tailwind-merge","old_version":"3.4.1","new_version":"3.6.0","repository_url":"https://github.com/dcastil/tailwind-merge"},{"name":"@tailwindcss/postcss","old_version":"4.2.0","new_version":"4.3.0","repository_url":"https://github.com/tailwindlabs/tailwindcss"},{"name":"@tanstack/react-query-devtools","old_version":"5.91.3","new_version":"5.100.14","repository_url":"https://github.com/TanStack/query"},{"name":"@tanstack/react-router-devtools","old_version":"1.161.1","new_version":"1.167.0","repository_url":"https://github.com/TanStack/router"},{"name":"@tanstack/router-plugin","old_version":"1.161.1","new_version":"1.168.11","repository_url":"https://github.com/TanStack/router"},{"name":"@types/node","old_version":"25.2.3","new_version":"25.9.1","repository_url":"https://github.com/DefinitelyTyped/DefinitelyTyped"},{"name":"@vitejs/plugin-react","old_version":"5.1.4","new_version":"6.0.2","repository_url":"https://github.com/vitejs/vite-plugin-react"},{"name":"@vitejs/plugin-react-swc","old_version":"4.2.3","new_version":"4.3.1","repository_url":"https://github.com/vitejs/vite-plugin-react"},{"name":"autoprefixer","old_version":"10.4.24","new_version":"10.5.0","repository_url":"https://github.com/postcss/autoprefixer"},{"name":"globby","old_version":"16.1.1","new_version":"16.2.0","repository_url":"https://github.com/sindresorhus/globby"},{"name":"@react-email/components","old_version":"1.0.8","new_version":"1.0.12","repository_url":"https://github.com/resend/react-email"},{"name":"@react-email/render","old_version":"2.0.4","new_version":"2.0.8","repository_url":"https://github.com/resend/react-email"},{"name":"@react-email/preview-server","old_version":"5.2.8","new_version":"5.2.10","repository_url":"https://github.com/resend/react-email"},{"name":"react-email","old_version":"5.2.8","new_version":"6.3.2","repository_url":"https://github.com/resend/react-email"},{"name":"@astrojs/react","old_version":"4.4.2","new_version":"5.0.5","repository_url":"https://github.com/withastro/astro"},{"name":"astro","old_version":"5.17.2","new_version":"6.3.7","repository_url":"https://github.com/withastro/astro"},{"name":"dotenv","old_version":"17.3.1","new_version":"17.4.2","repository_url":"https://github.com/motdotla/dotenv"},{"name":"drizzle-kit","old_version":"0.31.9","new_version":"0.31.10","repository_url":"https://github.com/drizzle-team/drizzle-orm"},{"name":"@modelcontextprotocol/sdk","old_version":"1.26.0","new_version":"1.29.0","repository_url":"https://github.com/modelcontextprotocol/typescript-sdk"},{"name":"got","old_version":"14.6.6","new_version":"15.0.5","repository_url":"https://github.com/sindresorhus/got"}],"path":null,"ecosystem":"npm"},"body":"Bumps the all-dependencies group with 65 updates in the / directory:\n\n| Package | From | To |\n| --- | --- | --- |\n| [@eslint-react/eslint-plugin](https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin) | `2.13.0` | `5.8.5` |\n| [@eslint/js](https://github.com/eslint/eslint/tree/HEAD/packages/js) | `9.39.2` | `10.0.1` |\n| [@typescript-eslint/eslint-plugin](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin) | `8.56.0` | `8.59.4` |\n| [@typescript-eslint/parser](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/parser) | `8.56.0` | `8.59.4` |\n| [eslint](https://github.com/eslint/eslint) | `9.39.2` | `10.4.0` |\n| [eslint-plugin-react-hooks](https://github.com/facebook/react/tree/HEAD/packages/eslint-plugin-react-hooks) | `7.0.1` | `7.1.1` |\n| [globals](https://github.com/sindresorhus/globals) | `17.3.0` | `17.6.0` |\n| [graphql](https://github.com/graphql/graphql-js) | `16.12.0` | `16.14.0` |\n| [happy-dom](https://github.com/capricorn86/happy-dom) | `20.6.2` | `20.9.0` |\n| [jiti](https://github.com/unjs/jiti) | `2.6.1` | `2.7.0` |\n| [lint-staged](https://github.com/lint-staged/lint-staged) | `16.2.7` | `17.0.5` |\n| [mermaid](https://github.com/mermaid-js/mermaid) | `11.12.3` | `11.15.0` |\n| [prettier](https://github.com/prettier/prettier) | `3.8.1` | `3.8.3` |\n| [react](https://github.com/facebook/react/tree/HEAD/packages/react) | `19.2.4` | `19.2.6` |\n| [@types/react](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/react) | `19.2.14` | `19.2.15` |\n| [typescript](https://github.com/microsoft/TypeScript) | `5.9.3` | `6.0.3` |\n| [typescript-eslint](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/typescript-eslint) | `8.56.0` | `8.59.4` |\n| [typescript-language-server](https://github.com/typescript-language-server/typescript-language-server) | `5.1.3` | `5.3.0` |\n| [vite](https://github.com/vitejs/vite/tree/HEAD/packages/vite) | `7.3.1` | `8.0.14` |\n| [vitepress](https://github.com/vuejs/vitepress) | `2.0.0-alpha.16` | `2.0.0-alpha.17` |\n| [vitepress-plugin-llms](https://github.com/okineadev/vitepress-plugin-llms) | `1.11.0` | `1.13.0` |\n| [vitest](https://github.com/vitest-dev/vitest/tree/HEAD/packages/vitest) | `4.0.18` | `4.1.7` |\n| [wrangler](https://github.com/cloudflare/workers-sdk/tree/HEAD/packages/wrangler) | `4.66.0` | `4.94.0` |\n| [@ai-sdk/openai](https://github.com/vercel/ai/tree/HEAD/packages/openai) | `3.0.29` | `3.0.65` |\n| [@better-auth/passkey](https://github.com/better-auth/better-auth/tree/HEAD/packages/passkey) | `1.4.18` | `1.6.11` |\n| [@better-auth/stripe](https://github.com/better-auth/better-auth/tree/HEAD/packages/stripe) | `1.4.18` | `1.6.11` |\n| [@trpc/server](https://github.com/trpc/trpc/tree/HEAD/packages/server) | `11.10.0` | `11.17.0` |\n| [ai](https://github.com/vercel/ai/tree/HEAD/packages/ai) | `6.0.91` | `6.0.191` |\n| [better-auth](https://github.com/better-auth/better-auth/tree/HEAD/packages/better-auth) | `1.4.18` | `1.6.11` |\n| [drizzle-orm](https://github.com/drizzle-team/drizzle-orm) | `0.45.1` | `0.45.2` |\n| [postgres](https://github.com/porsager/postgres) | `3.4.8` | `3.4.9` |\n| [resend](https://github.com/resend/resend-node) | `6.9.2` | `6.12.3` |\n| [stripe](https://github.com/stripe/stripe-node) | `20.3.1` | `22.1.1` |\n| [@cloudflare/workers-types](https://github.com/cloudflare/workerd) | `4.20260218.0` | `4.20260525.1` |\n| [@types/bun](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/bun) | `1.3.9` | `1.3.14` |\n| [hono](https://github.com/honojs/hono) | `4.11.10` | `4.12.23` |\n| [@tanstack/react-query](https://github.com/TanStack/query/tree/HEAD/packages/react-query) | `5.90.21` | `5.100.14` |\n| [@tanstack/react-router](https://github.com/TanStack/router/tree/HEAD/packages/react-router) | `1.161.1` | `1.170.8` |\n| [@trpc/client](https://github.com/trpc/trpc/tree/HEAD/packages/client) | `11.10.0` | `11.17.0` |\n| [@trpc/tanstack-react-query](https://github.com/trpc/trpc/tree/HEAD/packages/tanstack-react-query) | `11.10.0` | `11.17.0` |\n| [jotai](https://github.com/pmndrs/jotai) | `2.17.1` | `2.20.0` |\n| [jotai-effect](https://github.com/jotaijs/jotai-effect) | `2.2.3` | `2.3.1` |\n| [lucide-react](https://github.com/lucide-icons/lucide/tree/HEAD/packages/lucide-react) | `0.574.0` | `1.16.0` |\n| [react-dom](https://github.com/facebook/react/tree/HEAD/packages/react-dom) | `19.2.4` | `19.2.6` |\n| [react-error-boundary](https://github.com/bvaughn/react-error-boundary) | `6.1.1` | `6.1.2` |\n| [tailwind-merge](https://github.com/dcastil/tailwind-merge) | `3.4.1` | `3.6.0` |\n| [@tailwindcss/postcss](https://github.com/tailwindlabs/tailwindcss/tree/HEAD/packages/@tailwindcss-postcss) | `4.2.0` | `4.3.0` |\n| [@tanstack/react-query-devtools](https://github.com/TanStack/query/tree/HEAD/packages/react-query-devtools) | `5.91.3` | `5.100.14` |\n| [@tanstack/react-router-devtools](https://github.com/TanStack/router/tree/HEAD/packages/react-router-devtools) | `1.161.1` | `1.167.0` |\n| [@tanstack/router-plugin](https://github.com/TanStack/router/tree/HEAD/packages/router-plugin) | `1.161.1` | `1.168.11` |\n| [@types/node](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/node) | `25.2.3` | `25.9.1` |\n| [@vitejs/plugin-react](https://github.com/vitejs/vite-plugin-react/tree/HEAD/packages/plugin-react) | `5.1.4` | `6.0.2` |\n| [@vitejs/plugin-react-swc](https://github.com/vitejs/vite-plugin-react/tree/HEAD/packages/plugin-react-swc) | `4.2.3` | `4.3.1` |\n| [autoprefixer](https://github.com/postcss/autoprefixer) | `10.4.24` | `10.5.0` |\n| [globby](https://github.com/sindresorhus/globby) | `16.1.1` | `16.2.0` |\n| [@react-email/components](https://github.com/resend/react-email/tree/HEAD/packages/components) | `1.0.8` | `1.0.12` |\n| [@react-email/render](https://github.com/resend/react-email/tree/HEAD/packages/render) | `2.0.4` | `2.0.8` |\n| [@react-email/preview-server](https://github.com/resend/react-email/tree/HEAD/packages/preview-server) | `5.2.8` | `5.2.10` |\n| [react-email](https://github.com/resend/react-email/tree/HEAD/packages/react-email) | `5.2.8` | `6.3.2` |\n| [@astrojs/react](https://github.com/withastro/astro/tree/HEAD/packages/integrations/react) | `4.4.2` | `5.0.5` |\n| [astro](https://github.com/withastro/astro/tree/HEAD/packages/astro) | `5.17.2` | `6.3.7` |\n| [dotenv](https://github.com/motdotla/dotenv) | `17.3.1` | `17.4.2` |\n| [drizzle-kit](https://github.com/drizzle-team/drizzle-orm) | `0.31.9` | `0.31.10` |\n| [@modelcontextprotocol/sdk](https://github.com/modelcontextprotocol/typescript-sdk) | `1.26.0` | `1.29.0` |\n| [got](https://github.com/sindresorhus/got) | `14.6.6` | `15.0.5` |\n\n\nUpdates `@eslint-react/eslint-plugin` from 2.13.0 to 5.8.5\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/Rel1cx/eslint-react/releases\"\u003e@​eslint-react/eslint-plugin's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev5.8.5 (2026-05-24)\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003ch3\u003e📝 Documentation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdded rule implementation patterns guide (\u003ccode\u003edocs/rule-implementation-patterns.md\u003c/code\u003e) and term-based rule patterns guide (\u003ccode\u003edocs/term-based-rule-patterns.md\u003c/code\u003e).\u003c/li\u003e\n\u003cli\u003eLowered minimum TypeScript version requirement from \u003ccode\u003e5.1.0\u003c/code\u003e to \u003ccode\u003e5.0.0\u003c/code\u003e across README and documentation.\u003c/li\u003e\n\u003cli\u003eFixed textlint war-metaphor warnings and refined \u003ccode\u003e.textlintrc.json\u003c/code\u003e patterns.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🏗️ Internal\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdjusted formatting across configuration and script files (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1795\"\u003e#1795\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFixed a typo in the CI test workflow step.\u003c/li\u003e\n\u003cli\u003eAdded regression tests for oxc issues compatibility verification (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1796\"\u003e#1796\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eBumped dependencies across workspace packages:\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e@effect/language-service\u003c/code\u003e to \u003ccode\u003e^0.86.2\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@takumi-rs/image-response\u003c/code\u003e to \u003ccode\u003e^1.3.0\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@tsconfig/vite-react\u003c/code\u003e to \u003ccode\u003e^8.0.6\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@types/node\u003c/code\u003e to \u003ccode\u003e^25.9.1\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@types/react\u003c/code\u003e to \u003ccode\u003e^19.2.15\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eeslint-plugin-package-json\u003c/code\u003e to \u003ccode\u003e^1.1.0\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003efumadocs-core\u003c/code\u003e to \u003ccode\u003e^16.9.0\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003efumadocs-mdx\u003c/code\u003e to \u003ccode\u003e^15.0.7\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003efumadocs-ui\u003c/code\u003e to \u003ccode\u003e^16.9.0\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003elru-cache\u003c/code\u003e to \u003ccode\u003e11.5.0\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003enx\u003c/code\u003e to \u003ccode\u003e^22.7.3\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003epostcss\u003c/code\u003e to \u003ccode\u003e^8.5.15\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003evite\u003c/code\u003e to \u003ccode\u003e^8.0.14\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003evitest\u003c/code\u003e to \u003ccode\u003e^4.1.7\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003epnpm\u003c/code\u003e to \u003ccode\u003e11.2.1\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eAttestation\u003c/h2\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/attestations/28553042\"\u003ehttps://github.com/Rel1cx/eslint-react/attestations/28553042\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev5.8.4 (2026-05-22)\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003ch3\u003e📝 Documentation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eWebsite\u003c/strong\u003e: Restructured the FAQ page from an accordion layout to standard headings for better SEO, accessibility, and direct anchor linking.\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eWebsite\u003c/strong\u003e: Replaced the homepage \u003ccode\u003eHint\u003c/code\u003e popover with a direct link to the FAQ anchor explaining the project's human/LLM collaboration policy.\u003c/li\u003e\n\u003cli\u003eAdded a new \u003cstrong\u003e\u0026quot;What does 90% human-written mean?\u0026quot;\u003c/strong\u003e section to the FAQ.\u003c/li\u003e\n\u003cli\u003eUpdated documentation for \u003ccode\u003eisClassComponent\u003c/code\u003e and \u003ccode\u003eJsxConfig\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003eRemoved outdated documentation files.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🏗️ Internal\u003c/h3\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/Rel1cx/eslint-react/blob/main/CHANGELOG.md\"\u003e@​eslint-react/eslint-plugin's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev5.8.5 (2026-05-24)\u003c/h2\u003e\n\u003ch3\u003e📝 Documentation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdded rule implementation patterns guide (\u003ccode\u003edocs/rule-implementation-patterns.md\u003c/code\u003e) and term-based rule patterns guide (\u003ccode\u003edocs/term-based-rule-patterns.md\u003c/code\u003e).\u003c/li\u003e\n\u003cli\u003eLowered minimum TypeScript version requirement from \u003ccode\u003e5.1.0\u003c/code\u003e to \u003ccode\u003e5.0.0\u003c/code\u003e across README and documentation.\u003c/li\u003e\n\u003cli\u003eFixed textlint war-metaphor warnings and refined \u003ccode\u003e.textlintrc.json\u003c/code\u003e patterns.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🏗️ Internal\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdjusted formatting across configuration and script files (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1795\"\u003e#1795\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFixed a typo in the CI test workflow step.\u003c/li\u003e\n\u003cli\u003eAdded regression tests for oxc issues compatibility verification (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1796\"\u003e#1796\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eBumped dependencies across workspace packages:\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e@effect/language-service\u003c/code\u003e to \u003ccode\u003e^0.86.2\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@takumi-rs/image-response\u003c/code\u003e to \u003ccode\u003e^1.3.0\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@tsconfig/vite-react\u003c/code\u003e to \u003ccode\u003e^8.0.6\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@types/node\u003c/code\u003e to \u003ccode\u003e^25.9.1\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@types/react\u003c/code\u003e to \u003ccode\u003e^19.2.15\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eeslint-plugin-package-json\u003c/code\u003e to \u003ccode\u003e^1.1.0\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003efumadocs-core\u003c/code\u003e to \u003ccode\u003e^16.9.0\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003efumadocs-mdx\u003c/code\u003e to \u003ccode\u003e^15.0.7\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003efumadocs-ui\u003c/code\u003e to \u003ccode\u003e^16.9.0\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003elru-cache\u003c/code\u003e to \u003ccode\u003e11.5.0\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003enx\u003c/code\u003e to \u003ccode\u003e^22.7.3\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003epostcss\u003c/code\u003e to \u003ccode\u003e^8.5.15\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003evite\u003c/code\u003e to \u003ccode\u003e^8.0.14\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003evitest\u003c/code\u003e to \u003ccode\u003e^4.1.7\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003epnpm\u003c/code\u003e to \u003ccode\u003e11.2.1\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev5.8.4 (2026-05-22)\u003c/h2\u003e\n\u003ch3\u003e📝 Documentation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eWebsite\u003c/strong\u003e: Restructured the FAQ page from an accordion layout to standard headings for better SEO, accessibility, and direct anchor linking.\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eWebsite\u003c/strong\u003e: Replaced the homepage \u003ccode\u003eHint\u003c/code\u003e popover with a direct link to the FAQ anchor explaining the project's human/LLM collaboration policy.\u003c/li\u003e\n\u003cli\u003eAdded a new \u003cstrong\u003e\u0026quot;What does 90% human-written mean?\u0026quot;\u003c/strong\u003e section to the FAQ.\u003c/li\u003e\n\u003cli\u003eUpdated documentation for \u003ccode\u003eisClassComponent\u003c/code\u003e and \u003ccode\u003eJsxConfig\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003eRemoved outdated documentation files.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🏗️ Internal\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003e\u003ccode\u003ecore\u003c/code\u003e\u003c/strong\u003e: Simplified \u003ccode\u003eisClassComponent\u003c/code\u003e by removing the \u003ccode\u003econtext\u003c/code\u003e parameter and replacing \u003ccode\u003eisClassComponentLoose\u003c/code\u003e with the simplified function.\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003e\u003ccode\u003eeslint-plugin-react-x\u003c/code\u003e\u003c/strong\u003e: Removed unnecessary optional chaining across multiple rules (\u003ccode\u003eimmutability\u003c/code\u003e, \u003ccode\u003eno-unused-state\u003c/code\u003e, \u003ccode\u003epurity\u003c/code\u003e, \u003ccode\u003erefs\u003c/code\u003e, \u003ccode\u003eset-state-in-effect\u003c/code\u003e, \u003ccode\u003estatic-components\u003c/code\u003e, \u003ccode\u003euse-memo\u003c/code\u003e, etc.) and expanded test coverage for edge cases (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1792\"\u003e#1792\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdded automated GitHub Release workflow and fixed \u003ccode\u003eactions/setup-node\u003c/code\u003e cache parameter error.\u003c/li\u003e\n\u003cli\u003eAdded null-safety boundary tests for rules affected by PR \u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1792\"\u003e#1792\u003c/a\u003e (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1794\"\u003e#1794\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eBumped dependencies across workspace packages: \u003ccode\u003e@takumi-rs/image-response\u003c/code\u003e to 1.2.1, \u003ccode\u003efumadocs-mdx\u003c/code\u003e to 15.0.6, \u003ccode\u003eimport-integrity-lint\u003c/code\u003e to 1.1.1, \u003ccode\u003epreact\u003c/code\u003e to 10.29.2, \u003ccode\u003etsx\u003c/code\u003e to 4.22.1, \u003ccode\u003e@typescript-eslint\u003c/code\u003e to \u003ccode\u003e^8.59.4\u003c/code\u003e, \u003ccode\u003e@types/node\u003c/code\u003e to \u003ccode\u003e^25.9.0\u003c/code\u003e, \u003ccode\u003edompurify\u003c/code\u003e to \u003ccode\u003e^3.4.5\u003c/code\u003e, \u003ccode\u003epnpm\u003c/code\u003e to \u003ccode\u003e11.1.3\u003c/code\u003e, \u003ccode\u003etextlint\u003c/code\u003e to 15.7.1, and dprint TypeScript plugin to 0.96.1.\u003c/li\u003e\n\u003cli\u003eCleaned up stray empty string in \u003ccode\u003etsl.config.ts\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003eCleaned up type and lint errors across the workspace (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1793\"\u003e#1793\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eDowngraded TypeScript override in \u003ccode\u003epnpm-workspace.yaml\u003c/code\u003e from \u003ccode\u003e^6.0.3\u003c/code\u003e to \u003ccode\u003e5.9.3\u003c/code\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/8410851f436a8e1553484c95faecc64b3f8adbb1\"\u003e\u003ccode\u003e8410851\u003c/code\u003e\u003c/a\u003e release: 5.8.5\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/dccf9baf4c4f35919892dd61cee348ea1046d8fc\"\u003e\u003ccode\u003edccf9ba\u003c/code\u003e\u003c/a\u003e release: 5.8.5-beta.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/65edd43b61302e39af37fe00940f3903c52d5d0b\"\u003e\u003ccode\u003e65edd43\u003c/code\u003e\u003c/a\u003e release: 5.8.5-next.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/0393cd198aabafffeb4cf316856726b60834acd6\"\u003e\u003ccode\u003e0393cd1\u003c/code\u003e\u003c/a\u003e docs: lower minimum TypeScript version to 5.0.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/ceeeb663e4041cdabf41c75d8b68802006e86341\"\u003e\u003ccode\u003eceeeb66\u003c/code\u003e\u003c/a\u003e chore(deps): bump \u003ccode\u003e@​types/react\u003c/code\u003e, \u003ccode\u003e@​types/node\u003c/code\u003e, postcss, and fumadocs\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/39f2a0fe43a792ee4e1cf3ebf36e2b178e39324a\"\u003e\u003ccode\u003e39f2a0f\u003c/code\u003e\u003c/a\u003e release: 5.8.4\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/f7fa04ec446ffafcc5b04ac48b9a0a8c7421f5d7\"\u003e\u003ccode\u003ef7fa04e\u003c/code\u003e\u003c/a\u003e release: 5.8.4-beta.5\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/dbbd3298b136a649b4242b36d70929f0e8d6ecc7\"\u003e\u003ccode\u003edbbd329\u003c/code\u003e\u003c/a\u003e release: 5.8.4-beta.4\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/e3d9585a91caf57f3d0c69652a2a89664e70b5fd\"\u003e\u003ccode\u003ee3d9585\u003c/code\u003e\u003c/a\u003e release: 5.8.4-beta.3\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/1bae3a59500bde45ed7769521f1b1dc145ea92c1\"\u003e\u003ccode\u003e1bae3a5\u003c/code\u003e\u003c/a\u003e Link 90% human-written claim to FAQ\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/Rel1cx/eslint-react/commits/v5.8.5/plugins/eslint-plugin\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@eslint/js` from 9.39.2 to 10.0.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/eslint/eslint/releases\"\u003e@​eslint/js's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev10.0.1\u003c/h2\u003e\n\u003ch2\u003eBug Fixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/c87d5bded54c5cf491eb04c24c9d09bbbd42c23e\"\u003e\u003ccode\u003ec87d5bd\u003c/code\u003e\u003c/a\u003e fix: update eslint (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20531\"\u003e#20531\u003c/a\u003e) (renovate[bot])\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/d84100115c14691691058f00779c94e74fca946a\"\u003e\u003ccode\u003ed841001\u003c/code\u003e\u003c/a\u003e fix: update \u003ccode\u003eminimatch\u003c/code\u003e to \u003ccode\u003e10.2.1\u003c/code\u003e to address security vulnerabilities (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20519\"\u003e#20519\u003c/a\u003e) (루밀LuMir)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/04c21475b3004904948f02049f2888b401d82c78\"\u003e\u003ccode\u003e04c2147\u003c/code\u003e\u003c/a\u003e fix: update error message for unused suppressions (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20496\"\u003e#20496\u003c/a\u003e) (fnx)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/38b089c1726feac0e31a31d47941bd99e29ce003\"\u003e\u003ccode\u003e38b089c\u003c/code\u003e\u003c/a\u003e fix: update dependency \u003ccode\u003e@​eslint/config-array\u003c/code\u003e to ^0.23.1 (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20484\"\u003e#20484\u003c/a\u003e) (renovate[bot])\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eDocumentation\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/5b3dbce50a1404a9f118afe810cefeee79388a2a\"\u003e\u003ccode\u003e5b3dbce\u003c/code\u003e\u003c/a\u003e docs: add AI acknowledgement section to templates (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20431\"\u003e#20431\u003c/a\u003e) (루밀LuMir)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/6f23076037d5879f20fb3be2ef094293b1e8d38c\"\u003e\u003ccode\u003e6f23076\u003c/code\u003e\u003c/a\u003e docs: toggle nav in no-JS mode (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20476\"\u003e#20476\u003c/a\u003e) (Tanuj Kanti)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/b69cfb32a16c5d5e9986390d484fae1d21e406f9\"\u003e\u003ccode\u003eb69cfb3\u003c/code\u003e\u003c/a\u003e docs: Update README (GitHub Actions Bot)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eChores\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/e5c281ffd038a3a7a3e5364db0b9378e0ad83020\"\u003e\u003ccode\u003ee5c281f\u003c/code\u003e\u003c/a\u003e chore: updates for v9.39.3 release (Jenkins)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/8c3832adb77cd993b4a24891900d5eeaaf093cdc\"\u003e\u003ccode\u003e8c3832a\u003c/code\u003e\u003c/a\u003e chore: update \u003ccode\u003e@​typescript-eslint/parser\u003c/code\u003e to ^8.56.0 (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20514\"\u003e#20514\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/8330d238ae6adb68bb6a1c9381e38cfedd990d94\"\u003e\u003ccode\u003e8330d23\u003c/code\u003e\u003c/a\u003e test: add tests for config-api (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20493\"\u003e#20493\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/37d6e91e88fa6a2ca6d8726679096acff21ba6cc\"\u003e\u003ccode\u003e37d6e91\u003c/code\u003e\u003c/a\u003e chore: remove eslint v10 prereleases from eslint-config-eslint deps (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20494\"\u003e#20494\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/da7cd0e79197ad16e17052eef99df141de6dbfb1\"\u003e\u003ccode\u003eda7cd0e\u003c/code\u003e\u003c/a\u003e refactor: cleanup error message templates (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20479\"\u003e#20479\u003c/a\u003e) (Francesco Trotta)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/84fb885d49ac810e79a9491276b4828b53d913e5\"\u003e\u003ccode\u003e84fb885\u003c/code\u003e\u003c/a\u003e chore: package.json update for \u003ccode\u003e@​eslint/js\u003c/code\u003e release (Jenkins)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/1f667344b57c4c09b548d94bcfac1f91b6e5c63d\"\u003e\u003ccode\u003e1f66734\u003c/code\u003e\u003c/a\u003e chore: add \u003ccode\u003eeslint\u003c/code\u003e to \u003ccode\u003epeerDependencies\u003c/code\u003e of \u003ccode\u003e@eslint/js\u003c/code\u003e (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20467\"\u003e#20467\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev10.0.0\u003c/h2\u003e\n\u003ch2\u003eBreaking Changes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/f9e54f43a5e497cdfa179338b431093245cb787b\"\u003e\u003ccode\u003ef9e54f4\u003c/code\u003e\u003c/a\u003e feat!: estimate rule-tester failure location (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20420\"\u003e#20420\u003c/a\u003e) (ST-DDT)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/a176319d8ade1a7d9b2d7fb8f038f55a2662325f\"\u003e\u003ccode\u003ea176319\u003c/code\u003e\u003c/a\u003e feat!: replace \u003ccode\u003echalk\u003c/code\u003e with \u003ccode\u003estyleText\u003c/code\u003e and add \u003ccode\u003ecolor\u003c/code\u003e to \u003ccode\u003eResultsMeta\u003c/code\u003e (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20227\"\u003e#20227\u003c/a\u003e) (루밀LuMir)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/c7046e6c1e03c4ca0eee4888a1f2eba4c6454f84\"\u003e\u003ccode\u003ec7046e6\u003c/code\u003e\u003c/a\u003e feat!: enable JSX reference tracking (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20152\"\u003e#20152\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/fa31a608901684fbcd9906d1907e66561d16e5aa\"\u003e\u003ccode\u003efa31a60\u003c/code\u003e\u003c/a\u003e feat!: add \u003ccode\u003ename\u003c/code\u003e to configs (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20015\"\u003e#20015\u003c/a\u003e) (Kirk Waiblinger)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/3383e7ec9028166cafc8ea7986c2f7498d0049f0\"\u003e\u003ccode\u003e3383e7e\u003c/code\u003e\u003c/a\u003e fix!: remove deprecated \u003ccode\u003eSourceCode\u003c/code\u003e methods (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20137\"\u003e#20137\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/501abd0e916a35554c58b7c0365537f1fa3880ce\"\u003e\u003ccode\u003e501abd0\u003c/code\u003e\u003c/a\u003e feat!: update dependency minimatch to v10 (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20246\"\u003e#20246\u003c/a\u003e) (renovate[bot])\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/ca4d3b40085de47561f89656a2207d09946ed45e\"\u003e\u003ccode\u003eca4d3b4\u003c/code\u003e\u003c/a\u003e fix!: stricter rule tester assertions for valid test cases (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20125\"\u003e#20125\u003c/a\u003e) (唯然)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/96512a66c86402fb0538cdcb6cd30b9073f6bf3b\"\u003e\u003ccode\u003e96512a6\u003c/code\u003e\u003c/a\u003e fix!: Remove deprecated rule context methods (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20086\"\u003e#20086\u003c/a\u003e) (Nicholas C. Zakas)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/c69fdacdb2e886b9d965568a397aa8220db3fe90\"\u003e\u003ccode\u003ec69fdac\u003c/code\u003e\u003c/a\u003e feat!: remove eslintrc support (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20037\"\u003e#20037\u003c/a\u003e) (Francesco Trotta)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/208b5cc34a8374ff81412b5bec2e0800eebfbd04\"\u003e\u003ccode\u003e208b5cc\u003c/code\u003e\u003c/a\u003e feat!: Use \u003ccode\u003eScopeManager#addGlobals()\u003c/code\u003e (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20132\"\u003e#20132\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/a2ee188ea7a38a0c6155f3d39e2b00e1d0f36e14\"\u003e\u003ccode\u003ea2ee188\u003c/code\u003e\u003c/a\u003e fix!: add \u003ccode\u003euniqueItems: true\u003c/code\u003e in \u003ccode\u003eno-invalid-regexp\u003c/code\u003e option (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20155\"\u003e#20155\u003c/a\u003e) (Tanuj Kanti)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/a89059dbf2832d417dd493ee81483227ec44e4ab\"\u003e\u003ccode\u003ea89059d\u003c/code\u003e\u003c/a\u003e feat!: Program range span entire source text (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20133\"\u003e#20133\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/39a6424373d915fa9de0d7b0caba9a4dc3da9b53\"\u003e\u003ccode\u003e39a6424\u003c/code\u003e\u003c/a\u003e fix!: assert 'text' is a string across all RuleFixer methods (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20082\"\u003e#20082\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/f28fbf846244e043c92b355b224d121b06140b44\"\u003e\u003ccode\u003ef28fbf8\u003c/code\u003e\u003c/a\u003e fix!: Deprecate \u003ccode\u003e\u0026quot;always\u0026quot;\u003c/code\u003e and \u003ccode\u003e\u0026quot;as-needed\u0026quot;\u003c/code\u003e options of the \u003ccode\u003eradix\u003c/code\u003e rule (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20223\"\u003e#20223\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/aa3fb2b233e929b37220be940575f42c280e0b98\"\u003e\u003ccode\u003eaa3fb2b\u003c/code\u003e\u003c/a\u003e fix!: tighten \u003ccode\u003efunc-names\u003c/code\u003e schema (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20119\"\u003e#20119\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/f6c0ed0311dcfee853367d5068c765d066e6b756\"\u003e\u003ccode\u003ef6c0ed0\u003c/code\u003e\u003c/a\u003e feat!: report \u003ccode\u003eeslint-env\u003c/code\u003e comments as errors (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20128\"\u003e#20128\u003c/a\u003e) (Francesco Trotta)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/4bf739fb533e59f7f0a66b65f7bc80be0f37d8db\"\u003e\u003ccode\u003e4bf739f\u003c/code\u003e\u003c/a\u003e fix!: remove deprecated \u003ccode\u003eLintMessage#nodeType\u003c/code\u003e and \u003ccode\u003eTestCaseError#type\u003c/code\u003e (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20096\"\u003e#20096\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/523c076866400670fb2192a3f55dbf7ad3469247\"\u003e\u003ccode\u003e523c076\u003c/code\u003e\u003c/a\u003e feat!: drop support for jiti \u0026lt; 2.2.0 (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20016\"\u003e#20016\u003c/a\u003e) (michael faith)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/454a292c95f34dad232411ddac06408e6383bb64\"\u003e\u003ccode\u003e454a292\u003c/code\u003e\u003c/a\u003e feat!: update \u003ccode\u003eeslint:recommended\u003c/code\u003e configuration (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20210\"\u003e#20210\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/4f880ee02992e1bf0e96ebaba679985e2d1295f1\"\u003e\u003ccode\u003e4f880ee\u003c/code\u003e\u003c/a\u003e feat!: remove \u003ccode\u003ev10_*\u003c/code\u003e and inactive \u003ccode\u003eunstable_*\u003c/code\u003e flags (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20225\"\u003e#20225\u003c/a\u003e) (sethamus)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/f18115c363a4ac7671a4c7f30ee13d57ebba330f\"\u003e\u003ccode\u003ef18115c\u003c/code\u003e\u003c/a\u003e feat!: \u003ccode\u003eno-shadow-restricted-names\u003c/code\u003e report \u003ccode\u003eglobalThis\u003c/code\u003e by default (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20027\"\u003e#20027\u003c/a\u003e) (sethamus)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/c6358c31fbd3937b92d89be2618ffdf5a774604e\"\u003e\u003ccode\u003ec6358c3\u003c/code\u003e\u003c/a\u003e feat!: Require Node.js \u003ccode\u003e^20.19.0 || ^22.13.0 || \u0026gt;=24\u003c/code\u003e (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20160\"\u003e#20160\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eFeatures\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/bff9091927811497dbf066b0e3b85ecb37d43822\"\u003e\u003ccode\u003ebff9091\u003c/code\u003e\u003c/a\u003e feat: handle \u003ccode\u003eArray.fromAsync\u003c/code\u003e in \u003ccode\u003earray-callback-return\u003c/code\u003e (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20457\"\u003e#20457\u003c/a\u003e) (Francesco Trotta)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/290c594bb50c439fb71bc75521ee5360daa8c222\"\u003e\u003ccode\u003e290c594\u003c/code\u003e\u003c/a\u003e feat: add \u003ccode\u003eself\u003c/code\u003e to \u003ccode\u003eno-implied-eval\u003c/code\u003e rule (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20468\"\u003e#20468\u003c/a\u003e) (sethamus)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/43677de07ebd6e14bfac40a46ad749ba783c45f2\"\u003e\u003ccode\u003e43677de\u003c/code\u003e\u003c/a\u003e feat: fix handling of function and class expression names in \u003ccode\u003eno-shadow\u003c/code\u003e (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20432\"\u003e#20432\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/84fb885d49ac810e79a9491276b4828b53d913e5\"\u003e\u003ccode\u003e84fb885\u003c/code\u003e\u003c/a\u003e chore: package.json update for \u003ccode\u003e@​eslint/js\u003c/code\u003e release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/1f667344b57c4c09b548d94bcfac1f91b6e5c63d\"\u003e\u003ccode\u003e1f66734\u003c/code\u003e\u003c/a\u003e chore: add \u003ccode\u003eeslint\u003c/code\u003e to \u003ccode\u003epeerDependencies\u003c/code\u003e of \u003ccode\u003e@eslint/js\u003c/code\u003e (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20467\"\u003e#20467\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/f3fbc2f60cbe2c718364feb8c3fc0452c0df3c56\"\u003e\u003ccode\u003ef3fbc2f\u003c/code\u003e\u003c/a\u003e chore: set \u003ccode\u003e@eslint/js\u003c/code\u003e version to 10.0.0 to skip releasing it (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20466\"\u003e#20466\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/b4b3127f8542c599ce2dea804b6582ebc40c993d\"\u003e\u003ccode\u003eb4b3127\u003c/code\u003e\u003c/a\u003e chore: package.json update for \u003ccode\u003e@​eslint/js\u003c/code\u003e release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/0b14059491d830a49b3577931f4f68fbcfce6be5\"\u003e\u003ccode\u003e0b14059\u003c/code\u003e\u003c/a\u003e chore: package.json update for \u003ccode\u003e@​eslint/js\u003c/code\u003e release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/fa31a608901684fbcd9906d1907e66561d16e5aa\"\u003e\u003ccode\u003efa31a60\u003c/code\u003e\u003c/a\u003e feat!: add \u003ccode\u003ename\u003c/code\u003e to configs (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20015\"\u003e#20015\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/1e2cad5f6fa47ed6ed89d2a29798dda926d50990\"\u003e\u003ccode\u003e1e2cad5\u003c/code\u003e\u003c/a\u003e chore: package.json update for \u003ccode\u003e@​eslint/js\u003c/code\u003e release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/454a292c95f34dad232411ddac06408e6383bb64\"\u003e\u003ccode\u003e454a292\u003c/code\u003e\u003c/a\u003e feat!: update \u003ccode\u003eeslint:recommended\u003c/code\u003e configuration (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20210\"\u003e#20210\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/c6358c31fbd3937b92d89be2618ffdf5a774604e\"\u003e\u003ccode\u003ec6358c3\u003c/code\u003e\u003c/a\u003e feat!: Require Node.js \u003ccode\u003e^20.19.0 || ^22.13.0 || \u0026gt;=24\u003c/code\u003e (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20160\"\u003e#20160\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/eslint/eslint/commits/v10.0.1/packages/js\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@typescript-eslint/eslint-plugin` from 8.56.0 to 8.59.4\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases\"\u003e@​typescript-eslint/eslint-plugin's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev8.59.4\u003c/h2\u003e\n\u003ch2\u003e8.59.4 (2026-05-18)\u003c/h2\u003e\n\u003ch3\u003e🩹 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-floating-promises] stack overflow when using recursive types (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12294\"\u003e#12294\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eproject-service:\u003c/strong\u003e throw error cause in \u003ccode\u003egetParsedConfigFileFromTSServer\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12321\"\u003e#12321\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003etypescript-eslint:\u003c/strong\u003e export Compatible* types from typescript-eslint to resolve pnpm TS error (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12340\"\u003e#12340\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e❤️ Thank You\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eEvyatar Daud \u003ca href=\"https://github.com/StyleShit\"\u003e\u003ccode\u003e@​StyleShit\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eKirk Waiblinger \u003ca href=\"https://github.com/kirkwaiblinger\"\u003e\u003ccode\u003e@​kirkwaiblinger\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003elumir\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.4\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003ev8.59.3\u003c/h2\u003e\n\u003ch2\u003e8.59.3 (2026-05-11)\u003c/h2\u003e\n\u003cp\u003eThis was a version bump only, there were no code changes.\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.3\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003ev8.59.2\u003c/h2\u003e\n\u003ch2\u003e8.59.2 (2026-05-04)\u003c/h2\u003e\n\u003ch3\u003e🩹 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unsafe-type-assertion] handle crash on recursive template literal types (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12150\"\u003e#12150\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-deprecated] object destructuring values should be treated as declarations (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12292\"\u003e#12292\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003erule-tester:\u003c/strong\u003e add TypeScript as a peer dependency (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12288\"\u003e#12288\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e❤️ Thank You\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eDariusz Czajkowski\u003c/li\u003e\n\u003cli\u003eDima Barabash\u003c/li\u003e\n\u003cli\u003eKirk Waiblinger \u003ca href=\"https://github.com/kirkwaiblinger\"\u003e\u003ccode\u003e@​kirkwaiblinger\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.2\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003ev8.59.1\u003c/h2\u003e\n\u003ch2\u003e8.59.1 (2026-04-27)\u003c/h2\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/CHANGELOG.md\"\u003e@​typescript-eslint/eslint-plugin's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e8.59.4 (2026-05-18)\u003c/h2\u003e\n\u003ch3\u003e🩹 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-floating-promises] stack overflow when using recursive types (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12294\"\u003e#12294\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e❤️ Thank You\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eEvyatar Daud \u003ca href=\"https://github.com/StyleShit\"\u003e\u003ccode\u003e@​StyleShit\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.4\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003e8.59.3 (2026-05-11)\u003c/h2\u003e\n\u003cp\u003eThis was a version bump only for eslint-plugin to align it with other projects, there were no code changes.\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.3\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003e8.59.2 (2026-05-04)\u003c/h2\u003e\n\u003ch3\u003e🩹 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-deprecated] object destructuring values should be treated as declarations (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12292\"\u003e#12292\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unsafe-type-assertion] handle crash on recursive template literal types (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12150\"\u003e#12150\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e❤️ Thank You\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eDima Barabash\u003c/li\u003e\n\u003cli\u003eKirk Waiblinger \u003ca href=\"https://github.com/kirkwaiblinger\"\u003e\u003ccode\u003e@​kirkwaiblinger\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.2\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003e8.59.1 (2026-04-27)\u003c/h2\u003e\n\u003ch3\u003e🩹 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-condition] treat void as nullish in no-unnecessary-condition (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12241\"\u003e#12241\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-type-arguments] handle instantiation expressions (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12220\"\u003e#12220\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-type-assertion] avoid false positive in logical assignment assertions (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12278\"\u003e#12278\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-type-assertion] preserve phantom type arguments in generic inference (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12269\"\u003e#12269\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-type-assertion] preserve index signatures in undefined unions (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12257\"\u003e#12257\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-type-assertion] fix crash \u0026quot;TypeError: checker.getTypeArguments is not a function\u0026quot; (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12246\"\u003e#12246\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e❤️ Thank You\u003c/h3\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/ca6ca1431b6d18235297a7e29feb5d98f012dff2\"\u003e\u003ccode\u003eca6ca14\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.59.4\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/4302433ae6bf93d4ddc35264ad1b951254758566\"\u003e\u003ccode\u003e4302433\u003c/code\u003e\u003c/a\u003e fix(eslint-plugin): [no-floating-promises] stack overflow when using recursiv...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/10b79f1ba8e98610a3af85152a1b3b406f91e633\"\u003e\u003ccode\u003e10b79f1\u003c/code\u003e\u003c/a\u003e chore(deps): update dependency eslint to v10.4.0 (\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin/issues/12339\"\u003e#12339\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/2a6765d9628dc776f8127c96f088bb807c0bcab2\"\u003e\u003ccode\u003e2a6765d\u003c/code\u003e\u003c/a\u003e chore: clenaup \u003ccode\u003egetAwaitedType\u003c/code\u003e from \u003ccode\u003etypescript.d.ts\u003c/code\u003e (\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin/issues/12302\"\u003e#12302\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/48e13c0261e3cb1bf4f4dfaa462cdb3a56ef7383\"\u003e\u003ccode\u003e48e13c0\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.59.3\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/e26dc8003ababf078aad4df17765ee4cea30644c\"\u003e\u003ccode\u003ee26dc80\u003c/code\u003e\u003c/a\u003e docs: update stale links to latest (\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin/issues/12313\"\u003e#12313\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/44f9625336841a8ee3eb01a9e02e49b1d7b12648\"\u003e\u003ccode\u003e44f9625\u003c/code\u003e\u003c/a\u003e chore(deps): update vitest monorepo to v4.1.5 (\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin/issues/12307\"\u003e#12307\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/2ec35f1760aade4df4c631d76d78c7ed5e136333\"\u003e\u003ccode\u003e2ec35f1\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.59.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/ec3ef25390f7daf5a9ff33a60282bdbbb49ab0f3\"\u003e\u003ccode\u003eec3ef25\u003c/code\u003e\u003c/a\u003e test: make no-useless-empty-export tests fully static (\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin/issues/12260\"\u003e#12260\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/60d0a513870d833617374ff8ea256d86ca3cbbbb\"\u003e\u003ccode\u003e60d0a51\u003c/code\u003e\u003c/a\u003e chore(eslint-plugin): switch auto-generated test cases to hand-written in no-...\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commits/v8.59.4/packages/eslint-plugin\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@typescript-eslint/parser` from 8.56.0 to 8.59.4\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases\"\u003e@​typescript-eslint/parser's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev8.59.4\u003c/h2\u003e\n\u003ch2\u003e8.59.4 (2026-05-18)\u003c/h2\u003e\n\u003ch3\u003e🩹 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-floating-promises] stack overflow when using recursive types (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12294\"\u003e#12294\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eproject-service:\u003c/strong\u003e throw error cause in \u003ccode\u003egetParsedConfigFileFromTSServer\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12321\"\u003e#12321\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003etypescript-eslint:\u003c/strong\u003e export Compatible* types from typescript-eslint to resolve pnpm TS error (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12340\"\u003e#12340\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e❤️ Thank You\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eEvyatar Daud \u003ca href=\"https://github.com/StyleShit\"\u003e\u003ccode\u003e@​StyleShit\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eKirk Waiblinger \u003ca href=\"https://github.com/kirkwaiblinger\"\u003e\u003ccode\u003e@​kirkwaiblinger\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003elumir\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.4\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003ev8.59.3\u003c/h2\u003e\n\u003ch2\u003e8.59.3 (2026-05-11)\u003c/h2\u003e\n\u003cp\u003eThis was a version bump only, there were no code changes.\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.3\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003ev8.59.2\u003c/h2\u003e\n\u003ch2\u003e8.59.2 (2026-05-04)\u003c/h2\u003e\n\u003ch3\u003e🩹 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unsafe-type-assertion] handle crash on recursive template literal types (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12150\"\u003e#12150\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-deprecated] object destructuring values should be treated as declarations (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12292\"\u003e#12292\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003erule-tester:\u003c/strong\u003e add TypeScript as a peer dependency (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12288\"\u003e#12288\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e❤️ Thank You\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eDariusz Czajkowski\u003c/li\u003e\n\u003cli\u003eDima Barabash\u003c/li\u003e\n\u003cli\u003eKirk Waiblinger \u003ca href=\"https://github.com/kirkwaiblinger\"\u003e\u003ccode\u003e@​kirkwaiblinger\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.2\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003ev8.59.1\u003c/h2\u003e\n\u003ch2\u003e8.59.1 (2026-04-27)\u003c/h2\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/parser/CHANGELOG.md\"\u003e@​typescript-eslint/parser's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e8.59.4 (2026-05-18)\u003c/h2\u003e\n\u003cp\u003eThis was a version bump only for parser to align it with other projects, there were no code changes.\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.4\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003e8.59.3 (2026-05-11)\u003c/h2\u003e\n\u003cp\u003eThis was a version bump only for parser to align it with other projects, there were no code changes.\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.3\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003e8.59.2 (2026-05-04)\u003c/h2\u003e\n\u003cp\u003eThis was a version bump only for parser to align it with other projects, there were no code changes.\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.2\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003e8.59.1 (2026-04-27)\u003c/h2\u003e\n\u003cp\u003eThis was a version bump only for parser to align it with other projects, there were no code changes.\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.1\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003e8.59.0 (2026-04-20)\u003c/h2\u003e\n\u003cp\u003eThis was a version bump only for parser to align it with other projects, there were no code changes.\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.0\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003e8.58.2 (2026-04-13)\u003c/h2\u003e\n\u003ch3\u003e🩹 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eremove tsbuildinfo cache file from published packages (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12187\"\u003e#12187\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e❤️ Thank You\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAbhijeet Singh \u003ca href=\"https://github.com/cseas\"\u003e\u003ccode\u003e@​cseas\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/ca6ca1431b6d18235297a7e29feb5d98f012dff2\"\u003e\u003ccode\u003eca6ca14\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.59.4\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/48e13c0261e3cb1bf4f4dfaa462cdb3a56ef7383\"\u003e\u003ccode\u003e48e13c0\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.59.3\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/44f9625336841a8ee3eb01a9e02e49b1d7b12648\"\u003e\u003ccode\u003e44f9625\u003c/code\u003e\u003c/a\u003e chore(deps): update vitest monorepo to v4.1.5 (\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/parser/issues/12307\"\u003e#12307\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/2ec35f1760aade4df4c631d76d78c7ed5e136333\"\u003e\u003ccode\u003e2ec35f1\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.59.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/52457932e5507b5ca01e720a541f3f8d01e09b9d\"\u003e\u003ccode\u003e5245793\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.59.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/ea9ae4f8817873480e3501145059f63e39e8d8a1\"\u003e\u003ccode\u003eea9ae4f\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.59.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/90c2803a4c250e0343598d41e973f95e743bf4ce\"\u003e\u003ccode\u003e90c2803\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.58.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/be6b49a02d68db9bdc8985e7e9e1598700fda2fa\"\u003e\u003ccode\u003ebe6b49a\u003c/code\u003e\u003c/a\u003e fix: remove tsbuildinfo cache file from published packages (\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/parser/issues/12187\"\u003e#12187\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/5311ed312eadf4e238324f2726ae0b1f3f2206e6\"\u003e\u003ccode\u003e5311ed3\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.58.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/493341709fe7d1d6433332b7bd2724e3332c7cdf\"\u003e\u003ccode\u003e4933417\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.58.0\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commits/v8.59.4/packages/parser\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `eslint` from 9.39.2 to 10.4.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/eslint/eslint/releases\"\u003eeslint's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev10.4.0\u003c/h2\u003e\n\u003ch2\u003eFeatures\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/1a45ec596af1dd5f880e6874cb8f24dafb6a7ecf\"\u003e\u003ccode\u003e1a45ec5\u003c/code\u003e\u003c/a\u003e feat: check sequence expressions in \u003ccode\u003efor-direction\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20701\"\u003e#20701\u003c/a\u003e) (kuldeep kumar)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/450040bd89b989b3531824c6be45feb5fe3d936b\"\u003e\u003ccode\u003e450040b\u003c/code\u003e\u003c/a\u003e feat: add \u003ccode\u003eincludeIgnoreFile()\u003c/code\u003e to \u003ccode\u003eeslint/config\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20735\"\u003e#20735\u003c/a\u003e) (Kirk Waiblinger)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eBug Fixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/544c0c3da589166ad8e5d634f35d3d06701c57be\"\u003e\u003ccode\u003e544c0c3\u003c/code\u003e\u003c/a\u003e fix: escape code path DOT labels in debug output (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20866\"\u003e#20866\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/6799431203f2579632d0870f98ba132067f4040c\"\u003e\u003ccode\u003e6799431\u003c/code\u003e\u003c/a\u003e fix: update dependency \u003ccode\u003e@​eslint/config-helpers\u003c/code\u003e to ^0.6.0 (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20850\"\u003e#20850\u003c/a\u003e) (renovate[bot])\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/f078fef5005dceb14fc162aab7c7200e027688dd\"\u003e\u003ccode\u003ef078fef\u003c/code\u003e\u003c/a\u003e fix: handle non-array deprecated rule replacements (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20825\"\u003e#20825\u003c/a\u003e) (xbinaryx)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eDocumentation\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/7e52a7151fb92eec0e0f67fe4e5ddbd1ccce796f\"\u003e\u003ccode\u003e7e52a71\u003c/code\u003e\u003c/a\u003e docs: add mention of \u003ccode\u003e@eslint-react/eslint-plugin\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20869\"\u003e#20869\u003c/a\u003e) (Pavel)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/db3468ba746407d7f286f18f7ea9db6df0e3bc08\"\u003e\u003ccode\u003edb3468b\u003c/code\u003e\u003c/a\u003e docs: tweak wording around ambiguous CJS-vs-ESM config (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20865\"\u003e#20865\u003c/a\u003e) (Kirk Waiblinger)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/90846643ec6e97d447ae0d831fabe6d17b0a998a\"\u003e\u003ccode\u003e9084664\u003c/code\u003e\u003c/a\u003e docs: Update README (GitHub Actions Bot)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/9cc73875046e3c4b8313644cbb1e99e26b36bd3f\"\u003e\u003ccode\u003e9cc7387\u003c/code\u003e\u003c/a\u003e docs: Update README (GitHub Actions Bot)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/3d7b5484407403817aa9071a394d336d8ea96eb5\"\u003e\u003ccode\u003e3d7b548\u003c/code\u003e\u003c/a\u003e docs: Update README (GitHub Actions Bot)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/191ec3c0a3f94ce0f110df761f0b2b8949011ccb\"\u003e\u003ccode\u003e191ec3c\u003c/code\u003e\u003c/a\u003e docs: Update README (GitHub Actions Bot)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eChores\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/6616856f28fa514a30f87b5539fc100d739a94bf\"\u003e\u003ccode\u003e6616856\u003c/code\u003e\u003c/a\u003e chore: upgrade knip to v6 (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20875\"\u003e#20875\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/d13b084a3ad02f926e9addaa35fc383759ea5554\"\u003e\u003ccode\u003ed13b084\u003c/code\u003e\u003c/a\u003e ci: ensure auto-created PRs run CI (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20860\"\u003e#20860\u003c/a\u003e) (lumir)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/e71c7af86dce9acc1d18cb12d2184309f6841594\"\u003e\u003ccode\u003ee71c7af\u003c/code\u003e\u003c/a\u003e ci: bump pnpm/action-setup from 6.0.5 to 6.0.7 (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20862\"\u003e#20862\u003c/a\u003e) (dependabot[bot])\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/d84393dea170f54191fd20c8268b52c81c0ccd99\"\u003e\u003ccode\u003ed84393d\u003c/code\u003e\u003c/a\u003e test: add unit tests for SuppressionsService.applySuppressions() (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20863\"\u003e#20863\u003c/a\u003e) (kuldeep kumar)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/24db8cb8e6f07fba667121777a15b1785486be94\"\u003e\u003ccode\u003e24db8cb\u003c/code\u003e\u003c/a\u003e test: add tests for SuppressionsService.save() (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20802\"\u003e#20802\u003c/a\u003e) (kuldeep kumar)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/2ef0549cac4a9537e4c3a26b9f3edd4c99476bf6\"\u003e\u003ccode\u003e2ef0549\u003c/code\u003e\u003c/a\u003e chore: update ecosystem plugins (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20857\"\u003e#20857\u003c/a\u003e) (github-actions[bot])\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/a4297918d264d229a06cd96051ef9b91c7b86732\"\u003e\u003ccode\u003ea429791\u003c/code\u003e\u003c/a\u003e ci: remove \u003ccode\u003eeslint-webpack-plugin\u003c/code\u003e types integration test (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20668\"\u003e#20668\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/9e37386aa7f2ce220b2ef74a6afbac5f6b3527c5\"\u003e\u003ccode\u003e9e37386\u003c/code\u003e\u003c/a\u003e chore: replace \u003ccode\u003erecast\u003c/code\u003e with range approach in code-sample-minimizer (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20682\"\u003e#20682\u003c/a\u003e) (Copilot)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/0dd1f9ffc9a07704d46e2a4c8d4ccc0d0908b0c0\"\u003e\u003ccode\u003e0dd1f9f\u003c/code\u003e\u003c/a\u003e test: disable warning for \u003ccode\u003evm.constants.USE_MAIN_CONTEXT_DEFAULT_LOADER\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20845\"\u003e#20845\u003c/a\u003e) (Francesco Trotta)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/9da3c7bc92d9579f8db19ecb56e718538d09db2b\"\u003e\u003ccode\u003e9da3c7b\u003c/code\u003e\u003c/a\u003e refactor: remove deprecated \u003ccode\u003emeta.language\u003c/code\u003e and migrate \u003ccode\u003emeta.dialects\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20716\"\u003e#20716\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/2099ed12a0a74c3d7f0808514362af2499b4fe2b\"\u003e\u003ccode\u003e2099ed1\u003c/code\u003e\u003c/a\u003e refactor: add \u003ccode\u003emeta.defaultOptions\u003c/code\u003e to more rules, enable linting (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20800\"\u003e#20800\u003c/a\u003e) (xbinaryx)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/f1dfbc9ca57196de7092e1888cc99427bd6fe06e\"\u003e\u003ccode\u003ef1dfbc9\u003c/code\u003e\u003c/a\u003e chore: update ecosystem plugins (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20836\"\u003e#20836\u003c/a\u003e) (github-actions[bot])\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/c75941390c14728806cd4baef4f6072f6de78318\"\u003e\u003ccode\u003ec759413\u003c/code\u003e\u003c/a\u003e ci: bump pnpm/action-setup from 6.0.3 to 6.0.5 (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20843\"\u003e#20843\u003c/a\u003e) (dependabot[bot])\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/5b817d6fdc9ae2c35b528dc662b2eca8f40f64aa\"\u003e\u003ccode\u003e5b817d6\u003c/code\u003e\u003c/a\u003e test: add unit tests for lib/shared/ast-utils (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20838\"\u003e#20838\u003c/a\u003e) (kuldeep kumar)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/1c13ae3934c198c494e5958fa3a68b33244ff06a\"\u003e\u003ccode\u003e1c13ae3\u003c/code\u003e\u003c/a\u003e test: add unit tests for lib/shared/severity (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20835\"\u003e#20835\u003c/a\u003e) (kuldeep kumar)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev10.3.0\u003c/h2\u003e\n\u003ch2\u003eFeatures\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/379571a975f2b24d88037b9de2e72ec61d004130\"\u003e\u003ccode\u003e379571a\u003c/code\u003e\u003c/a\u003e feat: add suggestions for no-unused-private-class-members (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20773\"\u003e#20773\u003c/a\u003e) (sethamus)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eBug Fixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/b6ae5cf07b9b51802367539cb24b245b61eaa37c\"\u003e\u003ccode\u003eb6ae5cf\u003c/code\u003e\u003c/a\u003e fix: handle unavailable require cache (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20812\"\u003e#20812\u003c/a\u003e) (Simon Podlipsky)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/6fb3685bcbe9a6f72fd7dfb9129686b6fb96b0bd\"\u003e\u003ccode\u003e6fb3685\u003c/code\u003e\u003c/a\u003e fix: rule suggestions cause continuation in class body (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20787\"\u003e#20787\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eDocumentation\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/32cc7ab4ec653ce89da92deb5c40a9f4fc707fe5\"\u003e\u003ccode\u003e32cc7ab\u003c/code\u003e\u003c/a\u003e docs: fix typos in docs and comments (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20809\"\u003e#20809\u003c/a\u003e) (Tanuj Kanti)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/7f479376a2fa463d823ab762db6bb37ce8d2ee8f\"\u003e\u003ccode\u003e7f47937\u003c/code\u003e\u003c/a\u003e docs: Update README (GitHub Actions Bot)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eChores\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/d32235ec19ceea211fa86452afa383ca05f5c2f9\"\u003e\u003ccode\u003ed32235e\u003c/code\u003e\u003c/a\u003e ci: use pnpm in \u003ccode\u003eeslint-flat-config-utils\u003c/code\u003e type integration test (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20826\"\u003e#20826\u003c/a\u003e) (Francesco Trotta)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/3ffb14ea517de750ed1181579ef844af342e4096\"\u003e\u003ccode\u003e3ffb14e\u003c/code\u003e\u003c/a\u003e chore: clean up typos in comments and JSDoc (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20821\"\u003e#20821\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/452c4010c07dc2e36fe6ec6a8c48298878e86887\"\u003e\u003ccode\u003e452c401\u003c/code\u003e\u003c/a\u003e 10.4.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/b6417e8b55c9525070d6e168b485ce6ff21688ed\"\u003e\u003ccode\u003eb6417e8\u003c/code\u003e\u003c/a\u003e Build: changelog update for 10.4.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/6616856f28fa514a30f87b5539fc100d739a94bf\"\u003e\u003ccode\u003e6616856\u003c/code\u003e\u003c/a\u003e chore: upgrade knip to v6 (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20875\"\u003e#20875\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/d13b084a3ad02f926e9addaa35fc383759ea5554\"\u003e\u003ccode\u003ed13b084\u003c/code\u003e\u003c/a\u003e ci: ensure auto-created PRs run CI (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20860\"\u003e#20860\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/7e52a7151fb92eec0e0f67fe4e5ddbd1ccce796f\"\u003e\u003ccode\u003e7e52a71\u003c/code\u003e\u003c/a\u003e docs: add mention of \u003ccode\u003e@eslint-react/eslint-plugin\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20869\"\u003e#20869\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/e71c7af86dce9acc1d18cb12d2184309f6841594\"\u003e\u003ccode\u003ee71c7af\u003c/code\u003e\u003c/a\u003e ci: bump pnpm/action-setup from 6.0.5 to 6.0.7 (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20862\"\u003e#20862\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/544c0c3da589166ad8e5d634f35d3d06701c57be\"\u003e\u003ccode\u003e544c0c3\u003c/code\u003e\u003c/a\u003e fix: escape code path DOT labels in debug output (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20866\"\u003e#20866\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/db3468ba746407d7f286f18f7ea9db6df0e3bc08\"\u003e\u003ccode\u003edb3468b\u003c/code\u003e\u003c/a\u003e docs: tweak wording around ambiguous CJS-vs-ESM config (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20865\"\u003e#20865\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/d84393dea170f54191fd20c8268b52c81c0ccd99\"\u003e\u003ccode\u003ed84393d\u003c/code\u003e\u003c/a\u003e test: add unit tests for SuppressionsService.applySuppressions() (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20863\"\u003e#20863\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/90846643ec6e97d447ae0d831fabe6d17b0a998a\"\u003e\u003ccode\u003e9084664\u003c/code\u003e\u003c/a\u003e docs: Update README\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/eslint/eslint/compare/v9.39.2...v10.4.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `eslint-plugin-react-hooks` from 7.0.1 to 7.1.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/facebook/react/releases\"\u003eeslint-plugin-react-hooks's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eeslint-plugin-react-hooks@7.1.1 (April 17, 2026)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eNote:\u003c/strong\u003e 7.1.0 accidentally removed the \u003ccode\u003ecomponent-hook-factories\u003c/code\u003e rule, causing errors for users who referenced it in their ESLint config. This is now fixed.\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdd deprecated no-op \u003ccode\u003ecomponent-hook-factories\u003c/code\u003e rule for backwards compatibility. (\u003ca href=\"https://github.com/mofeiZ\"\u003e\u003ccode\u003e@​mofeiZ\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/36307\"\u003e#36307\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eeslint-plugin-react-hooks@7.1.0 (April 16, 2026)\u003c/h2\u003e\n\u003cp\u003eThis release adds ESLint v10 support, improves performance by skipping compilation for non-React files, and includes compiler lint improvements including better \u003ccode\u003eset-state-in-effect\u003c/code\u003e detection, improved ref validation, and more helpful error reporting.\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdd ESLint v10 support. (\u003ca href=\"https://github.com/azat-io\"\u003e\u003ccode\u003e@​azat-io\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/35720\"\u003e#35720\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSkip compilation for non-React files to improve performance. (\u003ca href=\"https://github.com/josephsavona\"\u003e\u003ccode\u003e@​josephsavona\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/35589\"\u003e#35589\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix exhaustive deps bug with Flow type casting. (\u003ca href=\"https://github.com/jorge-cab\"\u003e\u003ccode\u003e@​jorge-cab\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/35691\"\u003e#35691\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix \u003ccode\u003euseEffectEvent\u003c/code\u003e checks in component syntax. (\u003ca href=\"https://github.com/jbrown215\"\u003e\u003ccode\u003e@​jbrown215\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/35041\"\u003e#35041\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eImproved \u003ccode\u003eset-state-in-effect\u003c/code\u003e validation with fewer false negatives. (\u003ca href=\"https://github.com/jorge-cab\"\u003e\u003ccode\u003e@​jorge-cab\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/35134\"\u003e#35134\u003c/a\u003e, \u003ca href=\"https://github.com/josephsavona\"\u003e\u003ccode\u003e@​josephsavona\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/35147\"\u003e#35147\u003c/a\u003e, \u003ca href=\"https://github.com/jackpope\"\u003e\u003ccode\u003e@​jackpope\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/35214\"\u003e#35214\u003c/a\u003e, \u003ca href=\"https://github.com/chesnokov-tony\"\u003e\u003ccode\u003e@​chesnokov-tony\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/35419\"\u003e#35419\u003c/a\u003e, \u003ca href=\"https://github.com/jsleitor\"\u003e\u003ccode\u003e@​jsleitor\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/36107\"\u003e#36107\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eImproved ref validation for non-mutating functions and event handler props. (\u003ca href=\"https://github.com/josephsavona\"\u003e\u003ccode\u003e@​josephsavona\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/35893\"\u003e#35893\u003c/a\u003e, \u003ca href=\"https://github.com/kolvian\"\u003e\u003ccode\u003e@​kolvian\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/35062\"\u003e#35062\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCompiler now reports all errors instead of stopping at the first. (\u003ca href=\"https://github.com/josephsavona\"\u003e\u003ccode\u003e@​josephsavona\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/35873\"\u003e#35873\u003c/a\u003e–\u003ca href=\"https://redirect.github.com/facebook/react/pull/35884\"\u003e#35884\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eImproved source locations and error display in compiler diagnostics. (\u003ca href=\"https://github.com/nathanmarks\"\u003e\u003ccode\u003e@​nathanmarks\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/35348\"\u003e#35348\u003c/a\u003e, \u003ca href=\"https://github.com/josephsavona\"\u003e\u003ccode\u003e@​josephsavona\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/34963\"\u003e#34963\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/facebook/react/blob/main/packages/eslint-plugin-react-hooks/CHANGELOG.md\"\u003eeslint-plugin-react-hooks's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e7.1.1\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eNote:\u003c/strong\u003e 7.1.0 accidentally removed the \u003ccode\u003ecomponent-hook-factories\u003c/code\u003e rule, causing errors for users who referenced it in their ESLint config. This is now fixed.\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdd deprecated no-op \u003ccode\u003ecomponent-hook-factories\u003c/code\u003e rule for backwards compatibility. (\u003ca href=\"https://github.com/mofeiZ\"\u003e\u003ccode\u003e@​mofeiZ\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/36307\"\u003e#36307\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e7.1.0\u003c/h2\u003e\n\u003cp\u003eThis release adds ESLint v10 support, improves performance by skipping compilation for non-React files, and includes compiler lint improvements including better \u003ccode\u003eset-state-in-effect\u003c/code\u003e detection, improved ref validation, and more helpful error reporting.\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdd ESLint v10 support. (\u003ca href=\"https://github.com/azat-io\"\u003e\u003ccode\u003e@​azat-io\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/35720\"\u003e#35720\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSkip compilation for non-React files to improve performance. (\u003ca href=\"https://github.com/josephsavona\"\u003e\u003ccode\u003e@​josephsavona\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redire...\n\n_Description has been truncated_","html_url":"https://github.com/sowmyagsrohini2032-blip/Portfolio-/pull/2","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/sowmyagsrohini2032-blip%2FPortfolio-/issues/2","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/2/packages"}},{"old_version":"5.1.3","new_version":"5.3.0","update_type":"minor","path":null,"pr_created_at":"2026-05-25T05:34:57.000Z","version_change":"5.1.3 → 5.3.0","issue":{"uuid":"4514530127","node_id":"PR_kwDOSVtFqM7e6vWk","number":4,"state":"closed","title":"deps(deps): bump the all-dependencies group across 1 directory with 68 updates","user":"dependabot[bot]","labels":[],"assignees":[],"locked":false,"comments_count":2,"pull_request":true,"closed_at":"2026-06-01T09:04:08.000Z","author_association":null,"state_reason":null,"created_at":"2026-05-25T05:34:57.000Z","updated_at":"2026-06-01T09:04:10.000Z","time_to_close":617351,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"deps(deps): bump","group_name":"all-dependencies","update_count":68,"packages":[{"name":"@eslint-react/eslint-plugin","old_version":"2.13.0","new_version":"5.8.5","repository_url":"https://github.com/Rel1cx/eslint-react"},{"name":"@eslint/js","old_version":"9.39.2","new_version":"10.0.1","repository_url":"https://github.com/eslint/eslint"},{"name":"@typescript-eslint/eslint-plugin","old_version":"8.56.0","new_version":"8.59.4","repository_url":"https://github.com/typescript-eslint/typescript-eslint"},{"name":"@typescript-eslint/parser","old_version":"8.56.0","new_version":"8.59.4","repository_url":"https://github.com/typescript-eslint/typescript-eslint"},{"name":"eslint","old_version":"9.39.2","new_version":"10.4.0","repository_url":"https://github.com/eslint/eslint"},{"name":"eslint-plugin-react-hooks","old_version":"7.0.1","new_version":"7.1.1","repository_url":"https://github.com/facebook/react"},{"name":"globals","old_version":"17.3.0","new_version":"17.6.0","repository_url":"https://github.com/sindresorhus/globals"},{"name":"graphql","old_version":"16.12.0","new_version":"16.14.0","repository_url":"https://github.com/graphql/graphql-js"},{"name":"happy-dom","old_version":"20.6.2","new_version":"20.9.0","repository_url":"https://github.com/capricorn86/happy-dom"},{"name":"jiti","old_version":"2.6.1","new_version":"2.7.0","repository_url":"https://github.com/unjs/jiti"},{"name":"lint-staged","old_version":"16.2.7","new_version":"17.0.5","repository_url":"https://github.com/lint-staged/lint-staged"},{"name":"mermaid","old_version":"11.12.3","new_version":"11.15.0","repository_url":"https://github.com/mermaid-js/mermaid"},{"name":"prettier","old_version":"3.8.1","new_version":"3.8.3","repository_url":"https://github.com/prettier/prettier"},{"name":"react","old_version":"19.2.4","new_version":"19.2.6","repository_url":"https://github.com/facebook/react"},{"name":"@types/react","old_version":"19.2.14","new_version":"19.2.15","repository_url":"https://github.com/DefinitelyTyped/DefinitelyTyped"},{"name":"typescript","old_version":"5.9.3","new_version":"6.0.3","repository_url":"https://github.com/microsoft/TypeScript"},{"name":"typescript-eslint","old_version":"8.56.0","new_version":"8.59.4","repository_url":"https://github.com/typescript-eslint/typescript-eslint"},{"name":"typescript-language-server","old_version":"5.1.3","new_version":"5.3.0","repository_url":"https://github.com/typescript-language-server/typescript-language-server"},{"name":"vite","old_version":"7.3.1","new_version":"8.0.14","repository_url":"https://github.com/vitejs/vite"},{"name":"vitepress","old_version":"2.0.0-alpha.16","new_version":"2.0.0-alpha.17","repository_url":"https://github.com/vuejs/vitepress"},{"name":"vitepress-plugin-llms","old_version":"1.11.0","new_version":"1.13.0","repository_url":"https://github.com/okineadev/vitepress-plugin-llms"},{"name":"vitest","old_version":"4.0.18","new_version":"4.1.7","repository_url":"https://github.com/vitest-dev/vitest"},{"name":"wrangler","old_version":"4.66.0","new_version":"4.94.0","repository_url":"https://github.com/cloudflare/workers-sdk"},{"name":"@ai-sdk/openai","old_version":"3.0.29","new_version":"3.0.65","repository_url":"https://github.com/vercel/ai"},{"name":"@better-auth/passkey","old_version":"1.4.18","new_version":"1.6.11","repository_url":"https://github.com/better-auth/better-auth"},{"name":"@better-auth/stripe","old_version":"1.4.18","new_version":"1.6.11","repository_url":"https://github.com/better-auth/better-auth"},{"name":"@trpc/server","old_version":"11.10.0","new_version":"11.17.0","repository_url":"https://github.com/trpc/trpc"},{"name":"ai","old_version":"6.0.91","new_version":"6.0.191","repository_url":"https://github.com/vercel/ai"},{"name":"better-auth","old_version":"1.4.18","new_version":"1.6.11","repository_url":"https://github.com/better-auth/better-auth"},{"name":"drizzle-orm","old_version":"0.45.1","new_version":"0.45.2","repository_url":"https://github.com/drizzle-team/drizzle-orm"},{"name":"postgres","old_version":"3.4.8","new_version":"3.4.9","repository_url":"https://github.com/porsager/postgres"},{"name":"resend","old_version":"6.9.2","new_version":"6.12.3","repository_url":"https://github.com/resend/resend-node"},{"name":"stripe","old_version":"20.3.1","new_version":"22.1.1","repository_url":"https://github.com/stripe/stripe-node"},{"name":"@cloudflare/workers-types","old_version":"4.20260218.0","new_version":"4.20260525.1","repository_url":"https://github.com/cloudflare/workerd"},{"name":"@types/bun","old_version":"1.3.9","new_version":"1.3.14","repository_url":"https://github.com/DefinitelyTyped/DefinitelyTyped"},{"name":"hono","old_version":"4.11.10","new_version":"4.12.23","repository_url":"https://github.com/honojs/hono"},{"name":"@tanstack/react-query","old_version":"5.90.21","new_version":"5.100.14","repository_url":"https://github.com/TanStack/query"},{"name":"@tanstack/react-router","old_version":"1.161.1","new_version":"1.170.8","repository_url":"https://github.com/TanStack/router"},{"name":"@trpc/client","old_version":"11.10.0","new_version":"11.17.0","repository_url":"https://github.com/trpc/trpc"},{"name":"@trpc/tanstack-react-query","old_version":"11.10.0","new_version":"11.17.0","repository_url":"https://github.com/trpc/trpc"},{"name":"jotai","old_version":"2.17.1","new_version":"2.20.0","repository_url":"https://github.com/pmndrs/jotai"},{"name":"jotai-effect","old_version":"2.2.3","new_version":"2.3.1","repository_url":"https://github.com/jotaijs/jotai-effect"},{"name":"lucide-react","old_version":"0.574.0","new_version":"1.16.0","repository_url":"https://github.com/lucide-icons/lucide"},{"name":"react-dom","old_version":"19.2.4","new_version":"19.2.6","repository_url":"https://github.com/facebook/react"},{"name":"react-error-boundary","old_version":"6.1.1","new_version":"6.1.2","repository_url":"https://github.com/bvaughn/react-error-boundary"},{"name":"tailwind-merge","old_version":"3.4.1","new_version":"3.6.0","repository_url":"https://github.com/dcastil/tailwind-merge"},{"name":"@tailwindcss/postcss","old_version":"4.2.0","new_version":"4.3.0","repository_url":"https://github.com/tailwindlabs/tailwindcss"},{"name":"@tanstack/react-query-devtools","old_version":"5.91.3","new_version":"5.100.14","repository_url":"https://github.com/TanStack/query"},{"name":"@tanstack/react-router-devtools","old_version":"1.161.1","new_version":"1.167.0","repository_url":"https://github.com/TanStack/router"},{"name":"@tanstack/router-plugin","old_version":"1.161.1","new_version":"1.168.11","repository_url":"https://github.com/TanStack/router"},{"name":"@types/node","old_version":"25.2.3","new_version":"25.9.1","repository_url":"https://github.com/DefinitelyTyped/DefinitelyTyped"},{"name":"@vitejs/plugin-react","old_version":"5.1.4","new_version":"6.0.2","repository_url":"https://github.com/vitejs/vite-plugin-react"},{"name":"@vitejs/plugin-react-swc","old_version":"4.2.3","new_version":"4.3.1","repository_url":"https://github.com/vitejs/vite-plugin-react"},{"name":"autoprefixer","old_version":"10.4.24","new_version":"10.5.0","repository_url":"https://github.com/postcss/autoprefixer"},{"name":"globby","old_version":"16.1.1","new_version":"16.2.0","repository_url":"https://github.com/sindresorhus/globby"},{"name":"@react-email/components","old_version":"1.0.8","new_version":"1.0.12","repository_url":"https://github.com/resend/react-email"},{"name":"@react-email/render","old_version":"2.0.4","new_version":"2.0.8","repository_url":"https://github.com/resend/react-email"},{"name":"@react-email/preview-server","old_version":"5.2.8","new_version":"5.2.10","repository_url":"https://github.com/resend/react-email"},{"name":"react-email","old_version":"5.2.8","new_version":"6.3.2","repository_url":"https://github.com/resend/react-email"},{"name":"@astrojs/react","old_version":"4.4.2","new_version":"5.0.5","repository_url":"https://github.com/withastro/astro"},{"name":"astro","old_version":"5.17.2","new_version":"6.3.7","repository_url":"https://github.com/withastro/astro"},{"name":"dotenv","old_version":"17.3.1","new_version":"17.4.2","repository_url":"https://github.com/motdotla/dotenv"},{"name":"drizzle-kit","old_version":"0.31.9","new_version":"0.31.10","repository_url":"https://github.com/drizzle-team/drizzle-orm"},{"name":"@modelcontextprotocol/sdk","old_version":"1.26.0","new_version":"1.29.0","repository_url":"https://github.com/modelcontextprotocol/typescript-sdk"},{"name":"got","old_version":"14.6.6","new_version":"15.0.5","repository_url":"https://github.com/sindresorhus/got"}],"path":null,"ecosystem":"npm"},"body":"Bumps the all-dependencies group with 65 updates in the / directory:\n\n| Package | From | To |\n| --- | --- | --- |\n| [@eslint-react/eslint-plugin](https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin) | `2.13.0` | `5.8.5` |\n| [@eslint/js](https://github.com/eslint/eslint/tree/HEAD/packages/js) | `9.39.2` | `10.0.1` |\n| [@typescript-eslint/eslint-plugin](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin) | `8.56.0` | `8.59.4` |\n| [@typescript-eslint/parser](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/parser) | `8.56.0` | `8.59.4` |\n| [eslint](https://github.com/eslint/eslint) | `9.39.2` | `10.4.0` |\n| [eslint-plugin-react-hooks](https://github.com/facebook/react/tree/HEAD/packages/eslint-plugin-react-hooks) | `7.0.1` | `7.1.1` |\n| [globals](https://github.com/sindresorhus/globals) | `17.3.0` | `17.6.0` |\n| [graphql](https://github.com/graphql/graphql-js) | `16.12.0` | `16.14.0` |\n| [happy-dom](https://github.com/capricorn86/happy-dom) | `20.6.2` | `20.9.0` |\n| [jiti](https://github.com/unjs/jiti) | `2.6.1` | `2.7.0` |\n| [lint-staged](https://github.com/lint-staged/lint-staged) | `16.2.7` | `17.0.5` |\n| [mermaid](https://github.com/mermaid-js/mermaid) | `11.12.3` | `11.15.0` |\n| [prettier](https://github.com/prettier/prettier) | `3.8.1` | `3.8.3` |\n| [react](https://github.com/facebook/react/tree/HEAD/packages/react) | `19.2.4` | `19.2.6` |\n| [@types/react](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/react) | `19.2.14` | `19.2.15` |\n| [typescript](https://github.com/microsoft/TypeScript) | `5.9.3` | `6.0.3` |\n| [typescript-eslint](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/typescript-eslint) | `8.56.0` | `8.59.4` |\n| [typescript-language-server](https://github.com/typescript-language-server/typescript-language-server) | `5.1.3` | `5.3.0` |\n| [vite](https://github.com/vitejs/vite/tree/HEAD/packages/vite) | `7.3.1` | `8.0.14` |\n| [vitepress](https://github.com/vuejs/vitepress) | `2.0.0-alpha.16` | `2.0.0-alpha.17` |\n| [vitepress-plugin-llms](https://github.com/okineadev/vitepress-plugin-llms) | `1.11.0` | `1.13.0` |\n| [vitest](https://github.com/vitest-dev/vitest/tree/HEAD/packages/vitest) | `4.0.18` | `4.1.7` |\n| [wrangler](https://github.com/cloudflare/workers-sdk/tree/HEAD/packages/wrangler) | `4.66.0` | `4.94.0` |\n| [@ai-sdk/openai](https://github.com/vercel/ai/tree/HEAD/packages/openai) | `3.0.29` | `3.0.65` |\n| [@better-auth/passkey](https://github.com/better-auth/better-auth/tree/HEAD/packages/passkey) | `1.4.18` | `1.6.11` |\n| [@better-auth/stripe](https://github.com/better-auth/better-auth/tree/HEAD/packages/stripe) | `1.4.18` | `1.6.11` |\n| [@trpc/server](https://github.com/trpc/trpc/tree/HEAD/packages/server) | `11.10.0` | `11.17.0` |\n| [ai](https://github.com/vercel/ai/tree/HEAD/packages/ai) | `6.0.91` | `6.0.191` |\n| [better-auth](https://github.com/better-auth/better-auth/tree/HEAD/packages/better-auth) | `1.4.18` | `1.6.11` |\n| [drizzle-orm](https://github.com/drizzle-team/drizzle-orm) | `0.45.1` | `0.45.2` |\n| [postgres](https://github.com/porsager/postgres) | `3.4.8` | `3.4.9` |\n| [resend](https://github.com/resend/resend-node) | `6.9.2` | `6.12.3` |\n| [stripe](https://github.com/stripe/stripe-node) | `20.3.1` | `22.1.1` |\n| [@cloudflare/workers-types](https://github.com/cloudflare/workerd) | `4.20260218.0` | `4.20260525.1` |\n| [@types/bun](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/bun) | `1.3.9` | `1.3.14` |\n| [hono](https://github.com/honojs/hono) | `4.11.10` | `4.12.23` |\n| [@tanstack/react-query](https://github.com/TanStack/query/tree/HEAD/packages/react-query) | `5.90.21` | `5.100.14` |\n| [@tanstack/react-router](https://github.com/TanStack/router/tree/HEAD/packages/react-router) | `1.161.1` | `1.170.8` |\n| [@trpc/client](https://github.com/trpc/trpc/tree/HEAD/packages/client) | `11.10.0` | `11.17.0` |\n| [@trpc/tanstack-react-query](https://github.com/trpc/trpc/tree/HEAD/packages/tanstack-react-query) | `11.10.0` | `11.17.0` |\n| [jotai](https://github.com/pmndrs/jotai) | `2.17.1` | `2.20.0` |\n| [jotai-effect](https://github.com/jotaijs/jotai-effect) | `2.2.3` | `2.3.1` |\n| [lucide-react](https://github.com/lucide-icons/lucide/tree/HEAD/packages/lucide-react) | `0.574.0` | `1.16.0` |\n| [react-dom](https://github.com/facebook/react/tree/HEAD/packages/react-dom) | `19.2.4` | `19.2.6` |\n| [react-error-boundary](https://github.com/bvaughn/react-error-boundary) | `6.1.1` | `6.1.2` |\n| [tailwind-merge](https://github.com/dcastil/tailwind-merge) | `3.4.1` | `3.6.0` |\n| [@tailwindcss/postcss](https://github.com/tailwindlabs/tailwindcss/tree/HEAD/packages/@tailwindcss-postcss) | `4.2.0` | `4.3.0` |\n| [@tanstack/react-query-devtools](https://github.com/TanStack/query/tree/HEAD/packages/react-query-devtools) | `5.91.3` | `5.100.14` |\n| [@tanstack/react-router-devtools](https://github.com/TanStack/router/tree/HEAD/packages/react-router-devtools) | `1.161.1` | `1.167.0` |\n| [@tanstack/router-plugin](https://github.com/TanStack/router/tree/HEAD/packages/router-plugin) | `1.161.1` | `1.168.11` |\n| [@types/node](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/node) | `25.2.3` | `25.9.1` |\n| [@vitejs/plugin-react](https://github.com/vitejs/vite-plugin-react/tree/HEAD/packages/plugin-react) | `5.1.4` | `6.0.2` |\n| [@vitejs/plugin-react-swc](https://github.com/vitejs/vite-plugin-react/tree/HEAD/packages/plugin-react-swc) | `4.2.3` | `4.3.1` |\n| [autoprefixer](https://github.com/postcss/autoprefixer) | `10.4.24` | `10.5.0` |\n| [globby](https://github.com/sindresorhus/globby) | `16.1.1` | `16.2.0` |\n| [@react-email/components](https://github.com/resend/react-email/tree/HEAD/packages/components) | `1.0.8` | `1.0.12` |\n| [@react-email/render](https://github.com/resend/react-email/tree/HEAD/packages/render) | `2.0.4` | `2.0.8` |\n| [@react-email/preview-server](https://github.com/resend/react-email/tree/HEAD/packages/preview-server) | `5.2.8` | `5.2.10` |\n| [react-email](https://github.com/resend/react-email/tree/HEAD/packages/react-email) | `5.2.8` | `6.3.2` |\n| [@astrojs/react](https://github.com/withastro/astro/tree/HEAD/packages/integrations/react) | `4.4.2` | `5.0.5` |\n| [astro](https://github.com/withastro/astro/tree/HEAD/packages/astro) | `5.17.2` | `6.3.7` |\n| [dotenv](https://github.com/motdotla/dotenv) | `17.3.1` | `17.4.2` |\n| [drizzle-kit](https://github.com/drizzle-team/drizzle-orm) | `0.31.9` | `0.31.10` |\n| [@modelcontextprotocol/sdk](https://github.com/modelcontextprotocol/typescript-sdk) | `1.26.0` | `1.29.0` |\n| [got](https://github.com/sindresorhus/got) | `14.6.6` | `15.0.5` |\n\n\nUpdates `@eslint-react/eslint-plugin` from 2.13.0 to 5.8.5\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/Rel1cx/eslint-react/releases\"\u003e@​eslint-react/eslint-plugin's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev5.8.5 (2026-05-24)\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003ch3\u003e📝 Documentation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdded rule implementation patterns guide (\u003ccode\u003edocs/rule-implementation-patterns.md\u003c/code\u003e) and term-based rule patterns guide (\u003ccode\u003edocs/term-based-rule-patterns.md\u003c/code\u003e).\u003c/li\u003e\n\u003cli\u003eLowered minimum TypeScript version requirement from \u003ccode\u003e5.1.0\u003c/code\u003e to \u003ccode\u003e5.0.0\u003c/code\u003e across README and documentation.\u003c/li\u003e\n\u003cli\u003eFixed textlint war-metaphor warnings and refined \u003ccode\u003e.textlintrc.json\u003c/code\u003e patterns.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🏗️ Internal\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdjusted formatting across configuration and script files (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1795\"\u003e#1795\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFixed a typo in the CI test workflow step.\u003c/li\u003e\n\u003cli\u003eAdded regression tests for oxc issues compatibility verification (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1796\"\u003e#1796\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eBumped dependencies across workspace packages:\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e@effect/language-service\u003c/code\u003e to \u003ccode\u003e^0.86.2\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@takumi-rs/image-response\u003c/code\u003e to \u003ccode\u003e^1.3.0\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@tsconfig/vite-react\u003c/code\u003e to \u003ccode\u003e^8.0.6\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@types/node\u003c/code\u003e to \u003ccode\u003e^25.9.1\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@types/react\u003c/code\u003e to \u003ccode\u003e^19.2.15\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eeslint-plugin-package-json\u003c/code\u003e to \u003ccode\u003e^1.1.0\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003efumadocs-core\u003c/code\u003e to \u003ccode\u003e^16.9.0\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003efumadocs-mdx\u003c/code\u003e to \u003ccode\u003e^15.0.7\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003efumadocs-ui\u003c/code\u003e to \u003ccode\u003e^16.9.0\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003elru-cache\u003c/code\u003e to \u003ccode\u003e11.5.0\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003enx\u003c/code\u003e to \u003ccode\u003e^22.7.3\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003epostcss\u003c/code\u003e to \u003ccode\u003e^8.5.15\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003evite\u003c/code\u003e to \u003ccode\u003e^8.0.14\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003evitest\u003c/code\u003e to \u003ccode\u003e^4.1.7\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003epnpm\u003c/code\u003e to \u003ccode\u003e11.2.1\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eAttestation\u003c/h2\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/attestations/28553042\"\u003ehttps://github.com/Rel1cx/eslint-react/attestations/28553042\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev5.8.4 (2026-05-22)\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003ch3\u003e📝 Documentation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eWebsite\u003c/strong\u003e: Restructured the FAQ page from an accordion layout to standard headings for better SEO, accessibility, and direct anchor linking.\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eWebsite\u003c/strong\u003e: Replaced the homepage \u003ccode\u003eHint\u003c/code\u003e popover with a direct link to the FAQ anchor explaining the project's human/LLM collaboration policy.\u003c/li\u003e\n\u003cli\u003eAdded a new \u003cstrong\u003e\u0026quot;What does 90% human-written mean?\u0026quot;\u003c/strong\u003e section to the FAQ.\u003c/li\u003e\n\u003cli\u003eUpdated documentation for \u003ccode\u003eisClassComponent\u003c/code\u003e and \u003ccode\u003eJsxConfig\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003eRemoved outdated documentation files.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🏗️ Internal\u003c/h3\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/Rel1cx/eslint-react/blob/main/CHANGELOG.md\"\u003e@​eslint-react/eslint-plugin's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev5.8.5 (2026-05-24)\u003c/h2\u003e\n\u003ch3\u003e📝 Documentation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdded rule implementation patterns guide (\u003ccode\u003edocs/rule-implementation-patterns.md\u003c/code\u003e) and term-based rule patterns guide (\u003ccode\u003edocs/term-based-rule-patterns.md\u003c/code\u003e).\u003c/li\u003e\n\u003cli\u003eLowered minimum TypeScript version requirement from \u003ccode\u003e5.1.0\u003c/code\u003e to \u003ccode\u003e5.0.0\u003c/code\u003e across README and documentation.\u003c/li\u003e\n\u003cli\u003eFixed textlint war-metaphor warnings and refined \u003ccode\u003e.textlintrc.json\u003c/code\u003e patterns.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🏗️ Internal\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdjusted formatting across configuration and script files (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1795\"\u003e#1795\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFixed a typo in the CI test workflow step.\u003c/li\u003e\n\u003cli\u003eAdded regression tests for oxc issues compatibility verification (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1796\"\u003e#1796\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eBumped dependencies across workspace packages:\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e@effect/language-service\u003c/code\u003e to \u003ccode\u003e^0.86.2\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@takumi-rs/image-response\u003c/code\u003e to \u003ccode\u003e^1.3.0\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@tsconfig/vite-react\u003c/code\u003e to \u003ccode\u003e^8.0.6\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@types/node\u003c/code\u003e to \u003ccode\u003e^25.9.1\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@types/react\u003c/code\u003e to \u003ccode\u003e^19.2.15\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eeslint-plugin-package-json\u003c/code\u003e to \u003ccode\u003e^1.1.0\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003efumadocs-core\u003c/code\u003e to \u003ccode\u003e^16.9.0\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003efumadocs-mdx\u003c/code\u003e to \u003ccode\u003e^15.0.7\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003efumadocs-ui\u003c/code\u003e to \u003ccode\u003e^16.9.0\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003elru-cache\u003c/code\u003e to \u003ccode\u003e11.5.0\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003enx\u003c/code\u003e to \u003ccode\u003e^22.7.3\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003epostcss\u003c/code\u003e to \u003ccode\u003e^8.5.15\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003evite\u003c/code\u003e to \u003ccode\u003e^8.0.14\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003evitest\u003c/code\u003e to \u003ccode\u003e^4.1.7\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003epnpm\u003c/code\u003e to \u003ccode\u003e11.2.1\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev5.8.4 (2026-05-22)\u003c/h2\u003e\n\u003ch3\u003e📝 Documentation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eWebsite\u003c/strong\u003e: Restructured the FAQ page from an accordion layout to standard headings for better SEO, accessibility, and direct anchor linking.\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eWebsite\u003c/strong\u003e: Replaced the homepage \u003ccode\u003eHint\u003c/code\u003e popover with a direct link to the FAQ anchor explaining the project's human/LLM collaboration policy.\u003c/li\u003e\n\u003cli\u003eAdded a new \u003cstrong\u003e\u0026quot;What does 90% human-written mean?\u0026quot;\u003c/strong\u003e section to the FAQ.\u003c/li\u003e\n\u003cli\u003eUpdated documentation for \u003ccode\u003eisClassComponent\u003c/code\u003e and \u003ccode\u003eJsxConfig\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003eRemoved outdated documentation files.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🏗️ Internal\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003e\u003ccode\u003ecore\u003c/code\u003e\u003c/strong\u003e: Simplified \u003ccode\u003eisClassComponent\u003c/code\u003e by removing the \u003ccode\u003econtext\u003c/code\u003e parameter and replacing \u003ccode\u003eisClassComponentLoose\u003c/code\u003e with the simplified function.\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003e\u003ccode\u003eeslint-plugin-react-x\u003c/code\u003e\u003c/strong\u003e: Removed unnecessary optional chaining across multiple rules (\u003ccode\u003eimmutability\u003c/code\u003e, \u003ccode\u003eno-unused-state\u003c/code\u003e, \u003ccode\u003epurity\u003c/code\u003e, \u003ccode\u003erefs\u003c/code\u003e, \u003ccode\u003eset-state-in-effect\u003c/code\u003e, \u003ccode\u003estatic-components\u003c/code\u003e, \u003ccode\u003euse-memo\u003c/code\u003e, etc.) and expanded test coverage for edge cases (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1792\"\u003e#1792\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdded automated GitHub Release workflow and fixed \u003ccode\u003eactions/setup-node\u003c/code\u003e cache parameter error.\u003c/li\u003e\n\u003cli\u003eAdded null-safety boundary tests for rules affected by PR \u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1792\"\u003e#1792\u003c/a\u003e (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1794\"\u003e#1794\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eBumped dependencies across workspace packages: \u003ccode\u003e@takumi-rs/image-response\u003c/code\u003e to 1.2.1, \u003ccode\u003efumadocs-mdx\u003c/code\u003e to 15.0.6, \u003ccode\u003eimport-integrity-lint\u003c/code\u003e to 1.1.1, \u003ccode\u003epreact\u003c/code\u003e to 10.29.2, \u003ccode\u003etsx\u003c/code\u003e to 4.22.1, \u003ccode\u003e@typescript-eslint\u003c/code\u003e to \u003ccode\u003e^8.59.4\u003c/code\u003e, \u003ccode\u003e@types/node\u003c/code\u003e to \u003ccode\u003e^25.9.0\u003c/code\u003e, \u003ccode\u003edompurify\u003c/code\u003e to \u003ccode\u003e^3.4.5\u003c/code\u003e, \u003ccode\u003epnpm\u003c/code\u003e to \u003ccode\u003e11.1.3\u003c/code\u003e, \u003ccode\u003etextlint\u003c/code\u003e to 15.7.1, and dprint TypeScript plugin to 0.96.1.\u003c/li\u003e\n\u003cli\u003eCleaned up stray empty string in \u003ccode\u003etsl.config.ts\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003eCleaned up type and lint errors across the workspace (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1793\"\u003e#1793\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eDowngraded TypeScript override in \u003ccode\u003epnpm-workspace.yaml\u003c/code\u003e from \u003ccode\u003e^6.0.3\u003c/code\u003e to \u003ccode\u003e5.9.3\u003c/code\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/8410851f436a8e1553484c95faecc64b3f8adbb1\"\u003e\u003ccode\u003e8410851\u003c/code\u003e\u003c/a\u003e release: 5.8.5\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/dccf9baf4c4f35919892dd61cee348ea1046d8fc\"\u003e\u003ccode\u003edccf9ba\u003c/code\u003e\u003c/a\u003e release: 5.8.5-beta.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/65edd43b61302e39af37fe00940f3903c52d5d0b\"\u003e\u003ccode\u003e65edd43\u003c/code\u003e\u003c/a\u003e release: 5.8.5-next.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/0393cd198aabafffeb4cf316856726b60834acd6\"\u003e\u003ccode\u003e0393cd1\u003c/code\u003e\u003c/a\u003e docs: lower minimum TypeScript version to 5.0.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/ceeeb663e4041cdabf41c75d8b68802006e86341\"\u003e\u003ccode\u003eceeeb66\u003c/code\u003e\u003c/a\u003e chore(deps): bump \u003ccode\u003e@​types/react\u003c/code\u003e, \u003ccode\u003e@​types/node\u003c/code\u003e, postcss, and fumadocs\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/39f2a0fe43a792ee4e1cf3ebf36e2b178e39324a\"\u003e\u003ccode\u003e39f2a0f\u003c/code\u003e\u003c/a\u003e release: 5.8.4\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/f7fa04ec446ffafcc5b04ac48b9a0a8c7421f5d7\"\u003e\u003ccode\u003ef7fa04e\u003c/code\u003e\u003c/a\u003e release: 5.8.4-beta.5\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/dbbd3298b136a649b4242b36d70929f0e8d6ecc7\"\u003e\u003ccode\u003edbbd329\u003c/code\u003e\u003c/a\u003e release: 5.8.4-beta.4\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/e3d9585a91caf57f3d0c69652a2a89664e70b5fd\"\u003e\u003ccode\u003ee3d9585\u003c/code\u003e\u003c/a\u003e release: 5.8.4-beta.3\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/1bae3a59500bde45ed7769521f1b1dc145ea92c1\"\u003e\u003ccode\u003e1bae3a5\u003c/code\u003e\u003c/a\u003e Link 90% human-written claim to FAQ\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/Rel1cx/eslint-react/commits/v5.8.5/plugins/eslint-plugin\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@eslint/js` from 9.39.2 to 10.0.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/eslint/eslint/releases\"\u003e@​eslint/js's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev10.0.1\u003c/h2\u003e\n\u003ch2\u003eBug Fixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/c87d5bded54c5cf491eb04c24c9d09bbbd42c23e\"\u003e\u003ccode\u003ec87d5bd\u003c/code\u003e\u003c/a\u003e fix: update eslint (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20531\"\u003e#20531\u003c/a\u003e) (renovate[bot])\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/d84100115c14691691058f00779c94e74fca946a\"\u003e\u003ccode\u003ed841001\u003c/code\u003e\u003c/a\u003e fix: update \u003ccode\u003eminimatch\u003c/code\u003e to \u003ccode\u003e10.2.1\u003c/code\u003e to address security vulnerabilities (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20519\"\u003e#20519\u003c/a\u003e) (루밀LuMir)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/04c21475b3004904948f02049f2888b401d82c78\"\u003e\u003ccode\u003e04c2147\u003c/code\u003e\u003c/a\u003e fix: update error message for unused suppressions (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20496\"\u003e#20496\u003c/a\u003e) (fnx)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/38b089c1726feac0e31a31d47941bd99e29ce003\"\u003e\u003ccode\u003e38b089c\u003c/code\u003e\u003c/a\u003e fix: update dependency \u003ccode\u003e@​eslint/config-array\u003c/code\u003e to ^0.23.1 (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20484\"\u003e#20484\u003c/a\u003e) (renovate[bot])\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eDocumentation\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/5b3dbce50a1404a9f118afe810cefeee79388a2a\"\u003e\u003ccode\u003e5b3dbce\u003c/code\u003e\u003c/a\u003e docs: add AI acknowledgement section to templates (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20431\"\u003e#20431\u003c/a\u003e) (루밀LuMir)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/6f23076037d5879f20fb3be2ef094293b1e8d38c\"\u003e\u003ccode\u003e6f23076\u003c/code\u003e\u003c/a\u003e docs: toggle nav in no-JS mode (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20476\"\u003e#20476\u003c/a\u003e) (Tanuj Kanti)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/b69cfb32a16c5d5e9986390d484fae1d21e406f9\"\u003e\u003ccode\u003eb69cfb3\u003c/code\u003e\u003c/a\u003e docs: Update README (GitHub Actions Bot)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eChores\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/e5c281ffd038a3a7a3e5364db0b9378e0ad83020\"\u003e\u003ccode\u003ee5c281f\u003c/code\u003e\u003c/a\u003e chore: updates for v9.39.3 release (Jenkins)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/8c3832adb77cd993b4a24891900d5eeaaf093cdc\"\u003e\u003ccode\u003e8c3832a\u003c/code\u003e\u003c/a\u003e chore: update \u003ccode\u003e@​typescript-eslint/parser\u003c/code\u003e to ^8.56.0 (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20514\"\u003e#20514\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/8330d238ae6adb68bb6a1c9381e38cfedd990d94\"\u003e\u003ccode\u003e8330d23\u003c/code\u003e\u003c/a\u003e test: add tests for config-api (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20493\"\u003e#20493\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/37d6e91e88fa6a2ca6d8726679096acff21ba6cc\"\u003e\u003ccode\u003e37d6e91\u003c/code\u003e\u003c/a\u003e chore: remove eslint v10 prereleases from eslint-config-eslint deps (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20494\"\u003e#20494\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/da7cd0e79197ad16e17052eef99df141de6dbfb1\"\u003e\u003ccode\u003eda7cd0e\u003c/code\u003e\u003c/a\u003e refactor: cleanup error message templates (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20479\"\u003e#20479\u003c/a\u003e) (Francesco Trotta)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/84fb885d49ac810e79a9491276b4828b53d913e5\"\u003e\u003ccode\u003e84fb885\u003c/code\u003e\u003c/a\u003e chore: package.json update for \u003ccode\u003e@​eslint/js\u003c/code\u003e release (Jenkins)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/1f667344b57c4c09b548d94bcfac1f91b6e5c63d\"\u003e\u003ccode\u003e1f66734\u003c/code\u003e\u003c/a\u003e chore: add \u003ccode\u003eeslint\u003c/code\u003e to \u003ccode\u003epeerDependencies\u003c/code\u003e of \u003ccode\u003e@eslint/js\u003c/code\u003e (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20467\"\u003e#20467\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev10.0.0\u003c/h2\u003e\n\u003ch2\u003eBreaking Changes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/f9e54f43a5e497cdfa179338b431093245cb787b\"\u003e\u003ccode\u003ef9e54f4\u003c/code\u003e\u003c/a\u003e feat!: estimate rule-tester failure location (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20420\"\u003e#20420\u003c/a\u003e) (ST-DDT)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/a176319d8ade1a7d9b2d7fb8f038f55a2662325f\"\u003e\u003ccode\u003ea176319\u003c/code\u003e\u003c/a\u003e feat!: replace \u003ccode\u003echalk\u003c/code\u003e with \u003ccode\u003estyleText\u003c/code\u003e and add \u003ccode\u003ecolor\u003c/code\u003e to \u003ccode\u003eResultsMeta\u003c/code\u003e (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20227\"\u003e#20227\u003c/a\u003e) (루밀LuMir)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/c7046e6c1e03c4ca0eee4888a1f2eba4c6454f84\"\u003e\u003ccode\u003ec7046e6\u003c/code\u003e\u003c/a\u003e feat!: enable JSX reference tracking (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20152\"\u003e#20152\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/fa31a608901684fbcd9906d1907e66561d16e5aa\"\u003e\u003ccode\u003efa31a60\u003c/code\u003e\u003c/a\u003e feat!: add \u003ccode\u003ename\u003c/code\u003e to configs (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20015\"\u003e#20015\u003c/a\u003e) (Kirk Waiblinger)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/3383e7ec9028166cafc8ea7986c2f7498d0049f0\"\u003e\u003ccode\u003e3383e7e\u003c/code\u003e\u003c/a\u003e fix!: remove deprecated \u003ccode\u003eSourceCode\u003c/code\u003e methods (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20137\"\u003e#20137\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/501abd0e916a35554c58b7c0365537f1fa3880ce\"\u003e\u003ccode\u003e501abd0\u003c/code\u003e\u003c/a\u003e feat!: update dependency minimatch to v10 (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20246\"\u003e#20246\u003c/a\u003e) (renovate[bot])\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/ca4d3b40085de47561f89656a2207d09946ed45e\"\u003e\u003ccode\u003eca4d3b4\u003c/code\u003e\u003c/a\u003e fix!: stricter rule tester assertions for valid test cases (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20125\"\u003e#20125\u003c/a\u003e) (唯然)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/96512a66c86402fb0538cdcb6cd30b9073f6bf3b\"\u003e\u003ccode\u003e96512a6\u003c/code\u003e\u003c/a\u003e fix!: Remove deprecated rule context methods (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20086\"\u003e#20086\u003c/a\u003e) (Nicholas C. Zakas)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/c69fdacdb2e886b9d965568a397aa8220db3fe90\"\u003e\u003ccode\u003ec69fdac\u003c/code\u003e\u003c/a\u003e feat!: remove eslintrc support (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20037\"\u003e#20037\u003c/a\u003e) (Francesco Trotta)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/208b5cc34a8374ff81412b5bec2e0800eebfbd04\"\u003e\u003ccode\u003e208b5cc\u003c/code\u003e\u003c/a\u003e feat!: Use \u003ccode\u003eScopeManager#addGlobals()\u003c/code\u003e (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20132\"\u003e#20132\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/a2ee188ea7a38a0c6155f3d39e2b00e1d0f36e14\"\u003e\u003ccode\u003ea2ee188\u003c/code\u003e\u003c/a\u003e fix!: add \u003ccode\u003euniqueItems: true\u003c/code\u003e in \u003ccode\u003eno-invalid-regexp\u003c/code\u003e option (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20155\"\u003e#20155\u003c/a\u003e) (Tanuj Kanti)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/a89059dbf2832d417dd493ee81483227ec44e4ab\"\u003e\u003ccode\u003ea89059d\u003c/code\u003e\u003c/a\u003e feat!: Program range span entire source text (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20133\"\u003e#20133\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/39a6424373d915fa9de0d7b0caba9a4dc3da9b53\"\u003e\u003ccode\u003e39a6424\u003c/code\u003e\u003c/a\u003e fix!: assert 'text' is a string across all RuleFixer methods (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20082\"\u003e#20082\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/f28fbf846244e043c92b355b224d121b06140b44\"\u003e\u003ccode\u003ef28fbf8\u003c/code\u003e\u003c/a\u003e fix!: Deprecate \u003ccode\u003e\u0026quot;always\u0026quot;\u003c/code\u003e and \u003ccode\u003e\u0026quot;as-needed\u0026quot;\u003c/code\u003e options of the \u003ccode\u003eradix\u003c/code\u003e rule (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20223\"\u003e#20223\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/aa3fb2b233e929b37220be940575f42c280e0b98\"\u003e\u003ccode\u003eaa3fb2b\u003c/code\u003e\u003c/a\u003e fix!: tighten \u003ccode\u003efunc-names\u003c/code\u003e schema (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20119\"\u003e#20119\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/f6c0ed0311dcfee853367d5068c765d066e6b756\"\u003e\u003ccode\u003ef6c0ed0\u003c/code\u003e\u003c/a\u003e feat!: report \u003ccode\u003eeslint-env\u003c/code\u003e comments as errors (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20128\"\u003e#20128\u003c/a\u003e) (Francesco Trotta)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/4bf739fb533e59f7f0a66b65f7bc80be0f37d8db\"\u003e\u003ccode\u003e4bf739f\u003c/code\u003e\u003c/a\u003e fix!: remove deprecated \u003ccode\u003eLintMessage#nodeType\u003c/code\u003e and \u003ccode\u003eTestCaseError#type\u003c/code\u003e (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20096\"\u003e#20096\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/523c076866400670fb2192a3f55dbf7ad3469247\"\u003e\u003ccode\u003e523c076\u003c/code\u003e\u003c/a\u003e feat!: drop support for jiti \u0026lt; 2.2.0 (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20016\"\u003e#20016\u003c/a\u003e) (michael faith)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/454a292c95f34dad232411ddac06408e6383bb64\"\u003e\u003ccode\u003e454a292\u003c/code\u003e\u003c/a\u003e feat!: update \u003ccode\u003eeslint:recommended\u003c/code\u003e configuration (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20210\"\u003e#20210\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/4f880ee02992e1bf0e96ebaba679985e2d1295f1\"\u003e\u003ccode\u003e4f880ee\u003c/code\u003e\u003c/a\u003e feat!: remove \u003ccode\u003ev10_*\u003c/code\u003e and inactive \u003ccode\u003eunstable_*\u003c/code\u003e flags (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20225\"\u003e#20225\u003c/a\u003e) (sethamus)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/f18115c363a4ac7671a4c7f30ee13d57ebba330f\"\u003e\u003ccode\u003ef18115c\u003c/code\u003e\u003c/a\u003e feat!: \u003ccode\u003eno-shadow-restricted-names\u003c/code\u003e report \u003ccode\u003eglobalThis\u003c/code\u003e by default (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20027\"\u003e#20027\u003c/a\u003e) (sethamus)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/c6358c31fbd3937b92d89be2618ffdf5a774604e\"\u003e\u003ccode\u003ec6358c3\u003c/code\u003e\u003c/a\u003e feat!: Require Node.js \u003ccode\u003e^20.19.0 || ^22.13.0 || \u0026gt;=24\u003c/code\u003e (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20160\"\u003e#20160\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eFeatures\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/bff9091927811497dbf066b0e3b85ecb37d43822\"\u003e\u003ccode\u003ebff9091\u003c/code\u003e\u003c/a\u003e feat: handle \u003ccode\u003eArray.fromAsync\u003c/code\u003e in \u003ccode\u003earray-callback-return\u003c/code\u003e (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20457\"\u003e#20457\u003c/a\u003e) (Francesco Trotta)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/290c594bb50c439fb71bc75521ee5360daa8c222\"\u003e\u003ccode\u003e290c594\u003c/code\u003e\u003c/a\u003e feat: add \u003ccode\u003eself\u003c/code\u003e to \u003ccode\u003eno-implied-eval\u003c/code\u003e rule (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20468\"\u003e#20468\u003c/a\u003e) (sethamus)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/43677de07ebd6e14bfac40a46ad749ba783c45f2\"\u003e\u003ccode\u003e43677de\u003c/code\u003e\u003c/a\u003e feat: fix handling of function and class expression names in \u003ccode\u003eno-shadow\u003c/code\u003e (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20432\"\u003e#20432\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/84fb885d49ac810e79a9491276b4828b53d913e5\"\u003e\u003ccode\u003e84fb885\u003c/code\u003e\u003c/a\u003e chore: package.json update for \u003ccode\u003e@​eslint/js\u003c/code\u003e release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/1f667344b57c4c09b548d94bcfac1f91b6e5c63d\"\u003e\u003ccode\u003e1f66734\u003c/code\u003e\u003c/a\u003e chore: add \u003ccode\u003eeslint\u003c/code\u003e to \u003ccode\u003epeerDependencies\u003c/code\u003e of \u003ccode\u003e@eslint/js\u003c/code\u003e (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20467\"\u003e#20467\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/f3fbc2f60cbe2c718364feb8c3fc0452c0df3c56\"\u003e\u003ccode\u003ef3fbc2f\u003c/code\u003e\u003c/a\u003e chore: set \u003ccode\u003e@eslint/js\u003c/code\u003e version to 10.0.0 to skip releasing it (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20466\"\u003e#20466\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/b4b3127f8542c599ce2dea804b6582ebc40c993d\"\u003e\u003ccode\u003eb4b3127\u003c/code\u003e\u003c/a\u003e chore: package.json update for \u003ccode\u003e@​eslint/js\u003c/code\u003e release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/0b14059491d830a49b3577931f4f68fbcfce6be5\"\u003e\u003ccode\u003e0b14059\u003c/code\u003e\u003c/a\u003e chore: package.json update for \u003ccode\u003e@​eslint/js\u003c/code\u003e release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/fa31a608901684fbcd9906d1907e66561d16e5aa\"\u003e\u003ccode\u003efa31a60\u003c/code\u003e\u003c/a\u003e feat!: add \u003ccode\u003ename\u003c/code\u003e to configs (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20015\"\u003e#20015\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/1e2cad5f6fa47ed6ed89d2a29798dda926d50990\"\u003e\u003ccode\u003e1e2cad5\u003c/code\u003e\u003c/a\u003e chore: package.json update for \u003ccode\u003e@​eslint/js\u003c/code\u003e release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/454a292c95f34dad232411ddac06408e6383bb64\"\u003e\u003ccode\u003e454a292\u003c/code\u003e\u003c/a\u003e feat!: update \u003ccode\u003eeslint:recommended\u003c/code\u003e configuration (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20210\"\u003e#20210\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/c6358c31fbd3937b92d89be2618ffdf5a774604e\"\u003e\u003ccode\u003ec6358c3\u003c/code\u003e\u003c/a\u003e feat!: Require Node.js \u003ccode\u003e^20.19.0 || ^22.13.0 || \u0026gt;=24\u003c/code\u003e (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20160\"\u003e#20160\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/eslint/eslint/commits/v10.0.1/packages/js\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@typescript-eslint/eslint-plugin` from 8.56.0 to 8.59.4\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases\"\u003e@​typescript-eslint/eslint-plugin's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev8.59.4\u003c/h2\u003e\n\u003ch2\u003e8.59.4 (2026-05-18)\u003c/h2\u003e\n\u003ch3\u003e🩹 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-floating-promises] stack overflow when using recursive types (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12294\"\u003e#12294\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eproject-service:\u003c/strong\u003e throw error cause in \u003ccode\u003egetParsedConfigFileFromTSServer\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12321\"\u003e#12321\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003etypescript-eslint:\u003c/strong\u003e export Compatible* types from typescript-eslint to resolve pnpm TS error (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12340\"\u003e#12340\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e❤️ Thank You\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eEvyatar Daud \u003ca href=\"https://github.com/StyleShit\"\u003e\u003ccode\u003e@​StyleShit\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eKirk Waiblinger \u003ca href=\"https://github.com/kirkwaiblinger\"\u003e\u003ccode\u003e@​kirkwaiblinger\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003elumir\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.4\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003ev8.59.3\u003c/h2\u003e\n\u003ch2\u003e8.59.3 (2026-05-11)\u003c/h2\u003e\n\u003cp\u003eThis was a version bump only, there were no code changes.\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.3\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003ev8.59.2\u003c/h2\u003e\n\u003ch2\u003e8.59.2 (2026-05-04)\u003c/h2\u003e\n\u003ch3\u003e🩹 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unsafe-type-assertion] handle crash on recursive template literal types (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12150\"\u003e#12150\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-deprecated] object destructuring values should be treated as declarations (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12292\"\u003e#12292\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003erule-tester:\u003c/strong\u003e add TypeScript as a peer dependency (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12288\"\u003e#12288\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e❤️ Thank You\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eDariusz Czajkowski\u003c/li\u003e\n\u003cli\u003eDima Barabash\u003c/li\u003e\n\u003cli\u003eKirk Waiblinger \u003ca href=\"https://github.com/kirkwaiblinger\"\u003e\u003ccode\u003e@​kirkwaiblinger\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.2\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003ev8.59.1\u003c/h2\u003e\n\u003ch2\u003e8.59.1 (2026-04-27)\u003c/h2\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/CHANGELOG.md\"\u003e@​typescript-eslint/eslint-plugin's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e8.59.4 (2026-05-18)\u003c/h2\u003e\n\u003ch3\u003e🩹 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-floating-promises] stack overflow when using recursive types (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12294\"\u003e#12294\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e❤️ Thank You\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eEvyatar Daud \u003ca href=\"https://github.com/StyleShit\"\u003e\u003ccode\u003e@​StyleShit\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.4\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003e8.59.3 (2026-05-11)\u003c/h2\u003e\n\u003cp\u003eThis was a version bump only for eslint-plugin to align it with other projects, there were no code changes.\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.3\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003e8.59.2 (2026-05-04)\u003c/h2\u003e\n\u003ch3\u003e🩹 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-deprecated] object destructuring values should be treated as declarations (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12292\"\u003e#12292\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unsafe-type-assertion] handle crash on recursive template literal types (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12150\"\u003e#12150\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e❤️ Thank You\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eDima Barabash\u003c/li\u003e\n\u003cli\u003eKirk Waiblinger \u003ca href=\"https://github.com/kirkwaiblinger\"\u003e\u003ccode\u003e@​kirkwaiblinger\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.2\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003e8.59.1 (2026-04-27)\u003c/h2\u003e\n\u003ch3\u003e🩹 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-condition] treat void as nullish in no-unnecessary-condition (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12241\"\u003e#12241\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-type-arguments] handle instantiation expressions (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12220\"\u003e#12220\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-type-assertion] avoid false positive in logical assignment assertions (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12278\"\u003e#12278\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-type-assertion] preserve phantom type arguments in generic inference (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12269\"\u003e#12269\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-type-assertion] preserve index signatures in undefined unions (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12257\"\u003e#12257\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-type-assertion] fix crash \u0026quot;TypeError: checker.getTypeArguments is not a function\u0026quot; (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12246\"\u003e#12246\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e❤️ Thank You\u003c/h3\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/ca6ca1431b6d18235297a7e29feb5d98f012dff2\"\u003e\u003ccode\u003eca6ca14\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.59.4\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/4302433ae6bf93d4ddc35264ad1b951254758566\"\u003e\u003ccode\u003e4302433\u003c/code\u003e\u003c/a\u003e fix(eslint-plugin): [no-floating-promises] stack overflow when using recursiv...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/10b79f1ba8e98610a3af85152a1b3b406f91e633\"\u003e\u003ccode\u003e10b79f1\u003c/code\u003e\u003c/a\u003e chore(deps): update dependency eslint to v10.4.0 (\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin/issues/12339\"\u003e#12339\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/2a6765d9628dc776f8127c96f088bb807c0bcab2\"\u003e\u003ccode\u003e2a6765d\u003c/code\u003e\u003c/a\u003e chore: clenaup \u003ccode\u003egetAwaitedType\u003c/code\u003e from \u003ccode\u003etypescript.d.ts\u003c/code\u003e (\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin/issues/12302\"\u003e#12302\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/48e13c0261e3cb1bf4f4dfaa462cdb3a56ef7383\"\u003e\u003ccode\u003e48e13c0\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.59.3\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/e26dc8003ababf078aad4df17765ee4cea30644c\"\u003e\u003ccode\u003ee26dc80\u003c/code\u003e\u003c/a\u003e docs: update stale links to latest (\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin/issues/12313\"\u003e#12313\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/44f9625336841a8ee3eb01a9e02e49b1d7b12648\"\u003e\u003ccode\u003e44f9625\u003c/code\u003e\u003c/a\u003e chore(deps): update vitest monorepo to v4.1.5 (\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin/issues/12307\"\u003e#12307\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/2ec35f1760aade4df4c631d76d78c7ed5e136333\"\u003e\u003ccode\u003e2ec35f1\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.59.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/ec3ef25390f7daf5a9ff33a60282bdbbb49ab0f3\"\u003e\u003ccode\u003eec3ef25\u003c/code\u003e\u003c/a\u003e test: make no-useless-empty-export tests fully static (\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin/issues/12260\"\u003e#12260\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/60d0a513870d833617374ff8ea256d86ca3cbbbb\"\u003e\u003ccode\u003e60d0a51\u003c/code\u003e\u003c/a\u003e chore(eslint-plugin): switch auto-generated test cases to hand-written in no-...\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commits/v8.59.4/packages/eslint-plugin\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@typescript-eslint/parser` from 8.56.0 to 8.59.4\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases\"\u003e@​typescript-eslint/parser's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev8.59.4\u003c/h2\u003e\n\u003ch2\u003e8.59.4 (2026-05-18)\u003c/h2\u003e\n\u003ch3\u003e🩹 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-floating-promises] stack overflow when using recursive types (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12294\"\u003e#12294\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eproject-service:\u003c/strong\u003e throw error cause in \u003ccode\u003egetParsedConfigFileFromTSServer\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12321\"\u003e#12321\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003etypescript-eslint:\u003c/strong\u003e export Compatible* types from typescript-eslint to resolve pnpm TS error (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12340\"\u003e#12340\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e❤️ Thank You\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eEvyatar Daud \u003ca href=\"https://github.com/StyleShit\"\u003e\u003ccode\u003e@​StyleShit\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eKirk Waiblinger \u003ca href=\"https://github.com/kirkwaiblinger\"\u003e\u003ccode\u003e@​kirkwaiblinger\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003elumir\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.4\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003ev8.59.3\u003c/h2\u003e\n\u003ch2\u003e8.59.3 (2026-05-11)\u003c/h2\u003e\n\u003cp\u003eThis was a version bump only, there were no code changes.\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.3\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003ev8.59.2\u003c/h2\u003e\n\u003ch2\u003e8.59.2 (2026-05-04)\u003c/h2\u003e\n\u003ch3\u003e🩹 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unsafe-type-assertion] handle crash on recursive template literal types (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12150\"\u003e#12150\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-deprecated] object destructuring values should be treated as declarations (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12292\"\u003e#12292\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003erule-tester:\u003c/strong\u003e add TypeScript as a peer dependency (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12288\"\u003e#12288\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e❤️ Thank You\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eDariusz Czajkowski\u003c/li\u003e\n\u003cli\u003eDima Barabash\u003c/li\u003e\n\u003cli\u003eKirk Waiblinger \u003ca href=\"https://github.com/kirkwaiblinger\"\u003e\u003ccode\u003e@​kirkwaiblinger\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.2\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003ev8.59.1\u003c/h2\u003e\n\u003ch2\u003e8.59.1 (2026-04-27)\u003c/h2\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/parser/CHANGELOG.md\"\u003e@​typescript-eslint/parser's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e8.59.4 (2026-05-18)\u003c/h2\u003e\n\u003cp\u003eThis was a version bump only for parser to align it with other projects, there were no code changes.\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.4\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003e8.59.3 (2026-05-11)\u003c/h2\u003e\n\u003cp\u003eThis was a version bump only for parser to align it with other projects, there were no code changes.\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.3\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003e8.59.2 (2026-05-04)\u003c/h2\u003e\n\u003cp\u003eThis was a version bump only for parser to align it with other projects, there were no code changes.\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.2\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003e8.59.1 (2026-04-27)\u003c/h2\u003e\n\u003cp\u003eThis was a version bump only for parser to align it with other projects, there were no code changes.\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.1\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003e8.59.0 (2026-04-20)\u003c/h2\u003e\n\u003cp\u003eThis was a version bump only for parser to align it with other projects, there were no code changes.\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.0\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003e8.58.2 (2026-04-13)\u003c/h2\u003e\n\u003ch3\u003e🩹 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eremove tsbuildinfo cache file from published packages (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12187\"\u003e#12187\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e❤️ Thank You\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAbhijeet Singh \u003ca href=\"https://github.com/cseas\"\u003e\u003ccode\u003e@​cseas\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/ca6ca1431b6d18235297a7e29feb5d98f012dff2\"\u003e\u003ccode\u003eca6ca14\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.59.4\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/48e13c0261e3cb1bf4f4dfaa462cdb3a56ef7383\"\u003e\u003ccode\u003e48e13c0\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.59.3\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/44f9625336841a8ee3eb01a9e02e49b1d7b12648\"\u003e\u003ccode\u003e44f9625\u003c/code\u003e\u003c/a\u003e chore(deps): update vitest monorepo to v4.1.5 (\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/parser/issues/12307\"\u003e#12307\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/2ec35f1760aade4df4c631d76d78c7ed5e136333\"\u003e\u003ccode\u003e2ec35f1\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.59.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/52457932e5507b5ca01e720a541f3f8d01e09b9d\"\u003e\u003ccode\u003e5245793\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.59.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/ea9ae4f8817873480e3501145059f63e39e8d8a1\"\u003e\u003ccode\u003eea9ae4f\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.59.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/90c2803a4c250e0343598d41e973f95e743bf4ce\"\u003e\u003ccode\u003e90c2803\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.58.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/be6b49a02d68db9bdc8985e7e9e1598700fda2fa\"\u003e\u003ccode\u003ebe6b49a\u003c/code\u003e\u003c/a\u003e fix: remove tsbuildinfo cache file from published packages (\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/parser/issues/12187\"\u003e#12187\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/5311ed312eadf4e238324f2726ae0b1f3f2206e6\"\u003e\u003ccode\u003e5311ed3\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.58.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/493341709fe7d1d6433332b7bd2724e3332c7cdf\"\u003e\u003ccode\u003e4933417\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.58.0\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commits/v8.59.4/packages/parser\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `eslint` from 9.39.2 to 10.4.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/eslint/eslint/releases\"\u003eeslint's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev10.4.0\u003c/h2\u003e\n\u003ch2\u003eFeatures\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/1a45ec596af1dd5f880e6874cb8f24dafb6a7ecf\"\u003e\u003ccode\u003e1a45ec5\u003c/code\u003e\u003c/a\u003e feat: check sequence expressions in \u003ccode\u003efor-direction\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20701\"\u003e#20701\u003c/a\u003e) (kuldeep kumar)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/450040bd89b989b3531824c6be45feb5fe3d936b\"\u003e\u003ccode\u003e450040b\u003c/code\u003e\u003c/a\u003e feat: add \u003ccode\u003eincludeIgnoreFile()\u003c/code\u003e to \u003ccode\u003eeslint/config\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20735\"\u003e#20735\u003c/a\u003e) (Kirk Waiblinger)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eBug Fixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/544c0c3da589166ad8e5d634f35d3d06701c57be\"\u003e\u003ccode\u003e544c0c3\u003c/code\u003e\u003c/a\u003e fix: escape code path DOT labels in debug output (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20866\"\u003e#20866\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/6799431203f2579632d0870f98ba132067f4040c\"\u003e\u003ccode\u003e6799431\u003c/code\u003e\u003c/a\u003e fix: update dependency \u003ccode\u003e@​eslint/config-helpers\u003c/code\u003e to ^0.6.0 (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20850\"\u003e#20850\u003c/a\u003e) (renovate[bot])\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/f078fef5005dceb14fc162aab7c7200e027688dd\"\u003e\u003ccode\u003ef078fef\u003c/code\u003e\u003c/a\u003e fix: handle non-array deprecated rule replacements (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20825\"\u003e#20825\u003c/a\u003e) (xbinaryx)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eDocumentation\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/7e52a7151fb92eec0e0f67fe4e5ddbd1ccce796f\"\u003e\u003ccode\u003e7e52a71\u003c/code\u003e\u003c/a\u003e docs: add mention of \u003ccode\u003e@eslint-react/eslint-plugin\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20869\"\u003e#20869\u003c/a\u003e) (Pavel)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/db3468ba746407d7f286f18f7ea9db6df0e3bc08\"\u003e\u003ccode\u003edb3468b\u003c/code\u003e\u003c/a\u003e docs: tweak wording around ambiguous CJS-vs-ESM config (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20865\"\u003e#20865\u003c/a\u003e) (Kirk Waiblinger)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/90846643ec6e97d447ae0d831fabe6d17b0a998a\"\u003e\u003ccode\u003e9084664\u003c/code\u003e\u003c/a\u003e docs: Update README (GitHub Actions Bot)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/9cc73875046e3c4b8313644cbb1e99e26b36bd3f\"\u003e\u003ccode\u003e9cc7387\u003c/code\u003e\u003c/a\u003e docs: Update README (GitHub Actions Bot)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/3d7b5484407403817aa9071a394d336d8ea96eb5\"\u003e\u003ccode\u003e3d7b548\u003c/code\u003e\u003c/a\u003e docs: Update README (GitHub Actions Bot)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/191ec3c0a3f94ce0f110df761f0b2b8949011ccb\"\u003e\u003ccode\u003e191ec3c\u003c/code\u003e\u003c/a\u003e docs: Update README (GitHub Actions Bot)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eChores\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/6616856f28fa514a30f87b5539fc100d739a94bf\"\u003e\u003ccode\u003e6616856\u003c/code\u003e\u003c/a\u003e chore: upgrade knip to v6 (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20875\"\u003e#20875\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/d13b084a3ad02f926e9addaa35fc383759ea5554\"\u003e\u003ccode\u003ed13b084\u003c/code\u003e\u003c/a\u003e ci: ensure auto-created PRs run CI (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20860\"\u003e#20860\u003c/a\u003e) (lumir)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/e71c7af86dce9acc1d18cb12d2184309f6841594\"\u003e\u003ccode\u003ee71c7af\u003c/code\u003e\u003c/a\u003e ci: bump pnpm/action-setup from 6.0.5 to 6.0.7 (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20862\"\u003e#20862\u003c/a\u003e) (dependabot[bot])\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/d84393dea170f54191fd20c8268b52c81c0ccd99\"\u003e\u003ccode\u003ed84393d\u003c/code\u003e\u003c/a\u003e test: add unit tests for SuppressionsService.applySuppressions() (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20863\"\u003e#20863\u003c/a\u003e) (kuldeep kumar)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/24db8cb8e6f07fba667121777a15b1785486be94\"\u003e\u003ccode\u003e24db8cb\u003c/code\u003e\u003c/a\u003e test: add tests for SuppressionsService.save() (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20802\"\u003e#20802\u003c/a\u003e) (kuldeep kumar)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/2ef0549cac4a9537e4c3a26b9f3edd4c99476bf6\"\u003e\u003ccode\u003e2ef0549\u003c/code\u003e\u003c/a\u003e chore: update ecosystem plugins (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20857\"\u003e#20857\u003c/a\u003e) (github-actions[bot])\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/a4297918d264d229a06cd96051ef9b91c7b86732\"\u003e\u003ccode\u003ea429791\u003c/code\u003e\u003c/a\u003e ci: remove \u003ccode\u003eeslint-webpack-plugin\u003c/code\u003e types integration test (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20668\"\u003e#20668\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/9e37386aa7f2ce220b2ef74a6afbac5f6b3527c5\"\u003e\u003ccode\u003e9e37386\u003c/code\u003e\u003c/a\u003e chore: replace \u003ccode\u003erecast\u003c/code\u003e with range approach in code-sample-minimizer (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20682\"\u003e#20682\u003c/a\u003e) (Copilot)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/0dd1f9ffc9a07704d46e2a4c8d4ccc0d0908b0c0\"\u003e\u003ccode\u003e0dd1f9f\u003c/code\u003e\u003c/a\u003e test: disable warning for \u003ccode\u003evm.constants.USE_MAIN_CONTEXT_DEFAULT_LOADER\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20845\"\u003e#20845\u003c/a\u003e) (Francesco Trotta)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/9da3c7bc92d9579f8db19ecb56e718538d09db2b\"\u003e\u003ccode\u003e9da3c7b\u003c/code\u003e\u003c/a\u003e refactor: remove deprecated \u003ccode\u003emeta.language\u003c/code\u003e and migrate \u003ccode\u003emeta.dialects\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20716\"\u003e#20716\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/2099ed12a0a74c3d7f0808514362af2499b4fe2b\"\u003e\u003ccode\u003e2099ed1\u003c/code\u003e\u003c/a\u003e refactor: add \u003ccode\u003emeta.defaultOptions\u003c/code\u003e to more rules, enable linting (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20800\"\u003e#20800\u003c/a\u003e) (xbinaryx)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/f1dfbc9ca57196de7092e1888cc99427bd6fe06e\"\u003e\u003ccode\u003ef1dfbc9\u003c/code\u003e\u003c/a\u003e chore: update ecosystem plugins (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20836\"\u003e#20836\u003c/a\u003e) (github-actions[bot])\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/c75941390c14728806cd4baef4f6072f6de78318\"\u003e\u003ccode\u003ec759413\u003c/code\u003e\u003c/a\u003e ci: bump pnpm/action-setup from 6.0.3 to 6.0.5 (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20843\"\u003e#20843\u003c/a\u003e) (dependabot[bot])\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/5b817d6fdc9ae2c35b528dc662b2eca8f40f64aa\"\u003e\u003ccode\u003e5b817d6\u003c/code\u003e\u003c/a\u003e test: add unit tests for lib/shared/ast-utils (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20838\"\u003e#20838\u003c/a\u003e) (kuldeep kumar)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/1c13ae3934c198c494e5958fa3a68b33244ff06a\"\u003e\u003ccode\u003e1c13ae3\u003c/code\u003e\u003c/a\u003e test: add unit tests for lib/shared/severity (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20835\"\u003e#20835\u003c/a\u003e) (kuldeep kumar)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev10.3.0\u003c/h2\u003e\n\u003ch2\u003eFeatures\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/379571a975f2b24d88037b9de2e72ec61d004130\"\u003e\u003ccode\u003e379571a\u003c/code\u003e\u003c/a\u003e feat: add suggestions for no-unused-private-class-members (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20773\"\u003e#20773\u003c/a\u003e) (sethamus)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eBug Fixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/b6ae5cf07b9b51802367539cb24b245b61eaa37c\"\u003e\u003ccode\u003eb6ae5cf\u003c/code\u003e\u003c/a\u003e fix: handle unavailable require cache (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20812\"\u003e#20812\u003c/a\u003e) (Simon Podlipsky)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/6fb3685bcbe9a6f72fd7dfb9129686b6fb96b0bd\"\u003e\u003ccode\u003e6fb3685\u003c/code\u003e\u003c/a\u003e fix: rule suggestions cause continuation in class body (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20787\"\u003e#20787\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eDocumentation\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/32cc7ab4ec653ce89da92deb5c40a9f4fc707fe5\"\u003e\u003ccode\u003e32cc7ab\u003c/code\u003e\u003c/a\u003e docs: fix typos in docs and comments (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20809\"\u003e#20809\u003c/a\u003e) (Tanuj Kanti)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/7f479376a2fa463d823ab762db6bb37ce8d2ee8f\"\u003e\u003ccode\u003e7f47937\u003c/code\u003e\u003c/a\u003e docs: Update README (GitHub Actions Bot)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eChores\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/d32235ec19ceea211fa86452afa383ca05f5c2f9\"\u003e\u003ccode\u003ed32235e\u003c/code\u003e\u003c/a\u003e ci: use pnpm in \u003ccode\u003eeslint-flat-config-utils\u003c/code\u003e type integration test (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20826\"\u003e#20826\u003c/a\u003e) (Francesco Trotta)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/3ffb14ea517de750ed1181579ef844af342e4096\"\u003e\u003ccode\u003e3ffb14e\u003c/code\u003e\u003c/a\u003e chore: clean up typos in comments and JSDoc (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20821\"\u003e#20821\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/452c4010c07dc2e36fe6ec6a8c48298878e86887\"\u003e\u003ccode\u003e452c401\u003c/code\u003e\u003c/a\u003e 10.4.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/b6417e8b55c9525070d6e168b485ce6ff21688ed\"\u003e\u003ccode\u003eb6417e8\u003c/code\u003e\u003c/a\u003e Build: changelog update for 10.4.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/6616856f28fa514a30f87b5539fc100d739a94bf\"\u003e\u003ccode\u003e6616856\u003c/code\u003e\u003c/a\u003e chore: upgrade knip to v6 (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20875\"\u003e#20875\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/d13b084a3ad02f926e9addaa35fc383759ea5554\"\u003e\u003ccode\u003ed13b084\u003c/code\u003e\u003c/a\u003e ci: ensure auto-created PRs run CI (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20860\"\u003e#20860\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/7e52a7151fb92eec0e0f67fe4e5ddbd1ccce796f\"\u003e\u003ccode\u003e7e52a71\u003c/code\u003e\u003c/a\u003e docs: add mention of \u003ccode\u003e@eslint-react/eslint-plugin\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20869\"\u003e#20869\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/e71c7af86dce9acc1d18cb12d2184309f6841594\"\u003e\u003ccode\u003ee71c7af\u003c/code\u003e\u003c/a\u003e ci: bump pnpm/action-setup from 6.0.5 to 6.0.7 (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20862\"\u003e#20862\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/544c0c3da589166ad8e5d634f35d3d06701c57be\"\u003e\u003ccode\u003e544c0c3\u003c/code\u003e\u003c/a\u003e fix: escape code path DOT labels in debug output (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20866\"\u003e#20866\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/db3468ba746407d7f286f18f7ea9db6df0e3bc08\"\u003e\u003ccode\u003edb3468b\u003c/code\u003e\u003c/a\u003e docs: tweak wording around ambiguous CJS-vs-ESM config (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20865\"\u003e#20865\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/d84393dea170f54191fd20c8268b52c81c0ccd99\"\u003e\u003ccode\u003ed84393d\u003c/code\u003e\u003c/a\u003e test: add unit tests for SuppressionsService.applySuppressions() (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20863\"\u003e#20863\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/90846643ec6e97d447ae0d831fabe6d17b0a998a\"\u003e\u003ccode\u003e9084664\u003c/code\u003e\u003c/a\u003e docs: Update README\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/eslint/eslint/compare/v9.39.2...v10.4.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `eslint-plugin-react-hooks` from 7.0.1 to 7.1.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/facebook/react/releases\"\u003eeslint-plugin-react-hooks's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eeslint-plugin-react-hooks@7.1.1 (April 17, 2026)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eNote:\u003c/strong\u003e 7.1.0 accidentally removed the \u003ccode\u003ecomponent-hook-factories\u003c/code\u003e rule, causing errors for users who referenced it in their ESLint config. This is now fixed.\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdd deprecated no-op \u003ccode\u003ecomponent-hook-factories\u003c/code\u003e rule for backwards compatibility. (\u003ca href=\"https://github.com/mofeiZ\"\u003e\u003ccode\u003e@​mofeiZ\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/36307\"\u003e#36307\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eeslint-plugin-react-hooks@7.1.0 (April 16, 2026)\u003c/h2\u003e\n\u003cp\u003eThis release adds ESLint v10 support, improves performance by skipping compilation for non-React files, and includes compiler lint improvements including better \u003ccode\u003eset-state-in-effect\u003c/code\u003e detection, improved ref validation, and more helpful error reporting.\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdd ESLint v10 support. (\u003ca href=\"https://github.com/azat-io\"\u003e\u003ccode\u003e@​azat-io\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/35720\"\u003e#35720\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSkip compilation for non-React files to improve performance. (\u003ca href=\"https://github.com/josephsavona\"\u003e\u003ccode\u003e@​josephsavona\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/35589\"\u003e#35589\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix exhaustive deps bug with Flow type casting. (\u003ca href=\"https://github.com/jorge-cab\"\u003e\u003ccode\u003e@​jorge-cab\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/35691\"\u003e#35691\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix \u003ccode\u003euseEffectEvent\u003c/code\u003e checks in component syntax. (\u003ca href=\"https://github.com/jbrown215\"\u003e\u003ccode\u003e@​jbrown215\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/35041\"\u003e#35041\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eImproved \u003ccode\u003eset-state-in-effect\u003c/code\u003e validation with fewer false negatives. (\u003ca href=\"https://github.com/jorge-cab\"\u003e\u003ccode\u003e@​jorge-cab\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/35134\"\u003e#35134\u003c/a\u003e, \u003ca href=\"https://github.com/josephsavona\"\u003e\u003ccode\u003e@​josephsavona\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/35147\"\u003e#35147\u003c/a\u003e, \u003ca href=\"https://github.com/jackpope\"\u003e\u003ccode\u003e@​jackpope\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/35214\"\u003e#35214\u003c/a\u003e, \u003ca href=\"https://github.com/chesnokov-tony\"\u003e\u003ccode\u003e@​chesnokov-tony\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/35419\"\u003e#35419\u003c/a\u003e, \u003ca href=\"https://github.com/jsleitor\"\u003e\u003ccode\u003e@​jsleitor\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/36107\"\u003e#36107\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eImproved ref validation for non-mutating functions and event handler props. (\u003ca href=\"https://github.com/josephsavona\"\u003e\u003ccode\u003e@​josephsavona\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/35893\"\u003e#35893\u003c/a\u003e, \u003ca href=\"https://github.com/kolvian\"\u003e\u003ccode\u003e@​kolvian\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/35062\"\u003e#35062\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCompiler now reports all errors instead of stopping at the first. (\u003ca href=\"https://github.com/josephsavona\"\u003e\u003ccode\u003e@​josephsavona\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/35873\"\u003e#35873\u003c/a\u003e–\u003ca href=\"https://redirect.github.com/facebook/react/pull/35884\"\u003e#35884\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eImproved source locations and error display in compiler diagnostics. (\u003ca href=\"https://github.com/nathanmarks\"\u003e\u003ccode\u003e@​nathanmarks\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/35348\"\u003e#35348\u003c/a\u003e, \u003ca href=\"https://github.com/josephsavona\"\u003e\u003ccode\u003e@​josephsavona\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/34963\"\u003e#34963\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/facebook/react/blob/main/packages/eslint-plugin-react-hooks/CHANGELOG.md\"\u003eeslint-plugin-react-hooks's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e7.1.1\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eNote:\u003c/strong\u003e 7.1.0 accidentally removed the \u003ccode\u003ecomponent-hook-factories\u003c/code\u003e rule, causing errors for users who referenced it in their ESLint config. This is now fixed.\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdd deprecated no-op \u003ccode\u003ecomponent-hook-factories\u003c/code\u003e rule for backwards compatibility. (\u003ca href=\"https://github.com/mofeiZ\"\u003e\u003ccode\u003e@​mofeiZ\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/36307\"\u003e#36307\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e7.1.0\u003c/h2\u003e\n\u003cp\u003eThis release adds ESLint v10 support, improves performance by skipping compilation for non-React files, and includes compiler lint improvements including better \u003ccode\u003eset-state-in-effect\u003c/code\u003e detection, improved ref validation, and more helpful error reporting.\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdd ESLint v10 support. (\u003ca href=\"https://github.com/azat-io\"\u003e\u003ccode\u003e@​azat-io\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/35720\"\u003e#35720\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSkip compilation for non-React files to improve performance. (\u003ca href=\"https://github.com/josephsavona\"\u003e\u003ccode\u003e@​josephsavona\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redire...\n\n_Description has been truncated_","html_url":"https://github.com/nabashi404/saas-test/pull/4","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/nabashi404%2Fsaas-test/issues/4","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/4/packages"}},{"old_version":"5.1.3","new_version":"5.3.0","update_type":"minor","path":null,"pr_created_at":"2026-05-25T05:23:55.000Z","version_change":"5.1.3 → 5.3.0","issue":{"uuid":"4514481325","node_id":"PR_kwDORyuJzM7e6lmg","number":8,"state":"open","title":"deps(deps): bump the all-dependencies group across 1 directory with 68 updates","user":"dependabot[bot]","labels":[],"assignees":[],"locked":false,"comments_count":1,"pull_request":true,"closed_at":null,"author_association":null,"state_reason":null,"created_at":"2026-05-25T05:23:55.000Z","updated_at":"2026-05-25T05:23:56.000Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"deps(deps): bump","group_name":"all-dependencies","update_count":68,"packages":[{"name":"@eslint-react/eslint-plugin","old_version":"2.13.0","new_version":"5.8.5","repository_url":"https://github.com/Rel1cx/eslint-react"},{"name":"@eslint/js","old_version":"9.39.2","new_version":"10.0.1","repository_url":"https://github.com/eslint/eslint"},{"name":"@typescript-eslint/eslint-plugin","old_version":"8.56.0","new_version":"8.59.4","repository_url":"https://github.com/typescript-eslint/typescript-eslint"},{"name":"@typescript-eslint/parser","old_version":"8.56.0","new_version":"8.59.4","repository_url":"https://github.com/typescript-eslint/typescript-eslint"},{"name":"eslint","old_version":"9.39.2","new_version":"10.4.0","repository_url":"https://github.com/eslint/eslint"},{"name":"eslint-plugin-react-hooks","old_version":"7.0.1","new_version":"7.1.1","repository_url":"https://github.com/facebook/react"},{"name":"globals","old_version":"17.3.0","new_version":"17.6.0","repository_url":"https://github.com/sindresorhus/globals"},{"name":"graphql","old_version":"16.12.0","new_version":"16.14.0","repository_url":"https://github.com/graphql/graphql-js"},{"name":"happy-dom","old_version":"20.6.2","new_version":"20.9.0","repository_url":"https://github.com/capricorn86/happy-dom"},{"name":"jiti","old_version":"2.6.1","new_version":"2.7.0","repository_url":"https://github.com/unjs/jiti"},{"name":"lint-staged","old_version":"16.2.7","new_version":"17.0.5","repository_url":"https://github.com/lint-staged/lint-staged"},{"name":"mermaid","old_version":"11.12.3","new_version":"11.15.0","repository_url":"https://github.com/mermaid-js/mermaid"},{"name":"prettier","old_version":"3.8.1","new_version":"3.8.3","repository_url":"https://github.com/prettier/prettier"},{"name":"react","old_version":"19.2.4","new_version":"19.2.6","repository_url":"https://github.com/facebook/react"},{"name":"@types/react","old_version":"19.2.14","new_version":"19.2.15","repository_url":"https://github.com/DefinitelyTyped/DefinitelyTyped"},{"name":"typescript","old_version":"5.9.3","new_version":"6.0.3","repository_url":"https://github.com/microsoft/TypeScript"},{"name":"typescript-eslint","old_version":"8.56.0","new_version":"8.59.4","repository_url":"https://github.com/typescript-eslint/typescript-eslint"},{"name":"typescript-language-server","old_version":"5.1.3","new_version":"5.3.0","repository_url":"https://github.com/typescript-language-server/typescript-language-server"},{"name":"vite","old_version":"7.3.1","new_version":"8.0.14","repository_url":"https://github.com/vitejs/vite"},{"name":"vitepress","old_version":"2.0.0-alpha.16","new_version":"2.0.0-alpha.17","repository_url":"https://github.com/vuejs/vitepress"},{"name":"vitepress-plugin-llms","old_version":"1.11.0","new_version":"1.13.0","repository_url":"https://github.com/okineadev/vitepress-plugin-llms"},{"name":"vitest","old_version":"4.0.18","new_version":"4.1.7","repository_url":"https://github.com/vitest-dev/vitest"},{"name":"wrangler","old_version":"4.66.0","new_version":"4.94.0","repository_url":"https://github.com/cloudflare/workers-sdk"},{"name":"@ai-sdk/openai","old_version":"3.0.29","new_version":"3.0.65","repository_url":"https://github.com/vercel/ai"},{"name":"@better-auth/passkey","old_version":"1.4.18","new_version":"1.6.11","repository_url":"https://github.com/better-auth/better-auth"},{"name":"@better-auth/stripe","old_version":"1.4.18","new_version":"1.6.11","repository_url":"https://github.com/better-auth/better-auth"},{"name":"@trpc/server","old_version":"11.10.0","new_version":"11.17.0","repository_url":"https://github.com/trpc/trpc"},{"name":"ai","old_version":"6.0.91","new_version":"6.0.191","repository_url":"https://github.com/vercel/ai"},{"name":"better-auth","old_version":"1.4.18","new_version":"1.6.11","repository_url":"https://github.com/better-auth/better-auth"},{"name":"drizzle-orm","old_version":"0.45.1","new_version":"0.45.2","repository_url":"https://github.com/drizzle-team/drizzle-orm"},{"name":"postgres","old_version":"3.4.8","new_version":"3.4.9","repository_url":"https://github.com/porsager/postgres"},{"name":"resend","old_version":"6.9.2","new_version":"6.12.3","repository_url":"https://github.com/resend/resend-node"},{"name":"stripe","old_version":"20.3.1","new_version":"22.1.1","repository_url":"https://github.com/stripe/stripe-node"},{"name":"@cloudflare/workers-types","old_version":"4.20260218.0","new_version":"4.20260525.1","repository_url":"https://github.com/cloudflare/workerd"},{"name":"@types/bun","old_version":"1.3.9","new_version":"1.3.14","repository_url":"https://github.com/DefinitelyTyped/DefinitelyTyped"},{"name":"hono","old_version":"4.11.10","new_version":"4.12.23","repository_url":"https://github.com/honojs/hono"},{"name":"@tanstack/react-query","old_version":"5.90.21","new_version":"5.100.14","repository_url":"https://github.com/TanStack/query"},{"name":"@tanstack/react-router","old_version":"1.161.1","new_version":"1.170.8","repository_url":"https://github.com/TanStack/router"},{"name":"@trpc/client","old_version":"11.10.0","new_version":"11.17.0","repository_url":"https://github.com/trpc/trpc"},{"name":"@trpc/tanstack-react-query","old_version":"11.10.0","new_version":"11.17.0","repository_url":"https://github.com/trpc/trpc"},{"name":"jotai","old_version":"2.17.1","new_version":"2.20.0","repository_url":"https://github.com/pmndrs/jotai"},{"name":"jotai-effect","old_version":"2.2.3","new_version":"2.3.1","repository_url":"https://github.com/jotaijs/jotai-effect"},{"name":"lucide-react","old_version":"0.574.0","new_version":"1.16.0","repository_url":"https://github.com/lucide-icons/lucide"},{"name":"react-dom","old_version":"19.2.4","new_version":"19.2.6","repository_url":"https://github.com/facebook/react"},{"name":"react-error-boundary","old_version":"6.1.1","new_version":"6.1.2","repository_url":"https://github.com/bvaughn/react-error-boundary"},{"name":"tailwind-merge","old_version":"3.4.1","new_version":"3.6.0","repository_url":"https://github.com/dcastil/tailwind-merge"},{"name":"@tailwindcss/postcss","old_version":"4.2.0","new_version":"4.3.0","repository_url":"https://github.com/tailwindlabs/tailwindcss"},{"name":"@tanstack/react-query-devtools","old_version":"5.91.3","new_version":"5.100.14","repository_url":"https://github.com/TanStack/query"},{"name":"@tanstack/react-router-devtools","old_version":"1.161.1","new_version":"1.167.0","repository_url":"https://github.com/TanStack/router"},{"name":"@tanstack/router-plugin","old_version":"1.161.1","new_version":"1.168.11","repository_url":"https://github.com/TanStack/router"},{"name":"@types/node","old_version":"25.2.3","new_version":"25.9.1","repository_url":"https://github.com/DefinitelyTyped/DefinitelyTyped"},{"name":"@vitejs/plugin-react","old_version":"5.1.4","new_version":"6.0.2","repository_url":"https://github.com/vitejs/vite-plugin-react"},{"name":"@vitejs/plugin-react-swc","old_version":"4.2.3","new_version":"4.3.1","repository_url":"https://github.com/vitejs/vite-plugin-react"},{"name":"autoprefixer","old_version":"10.4.24","new_version":"10.5.0","repository_url":"https://github.com/postcss/autoprefixer"},{"name":"globby","old_version":"16.1.1","new_version":"16.2.0","repository_url":"https://github.com/sindresorhus/globby"},{"name":"@react-email/components","old_version":"1.0.8","new_version":"1.0.12","repository_url":"https://github.com/resend/react-email"},{"name":"@react-email/render","old_version":"2.0.4","new_version":"2.0.8","repository_url":"https://github.com/resend/react-email"},{"name":"@react-email/preview-server","old_version":"5.2.8","new_version":"5.2.10","repository_url":"https://github.com/resend/react-email"},{"name":"react-email","old_version":"5.2.8","new_version":"6.3.2","repository_url":"https://github.com/resend/react-email"},{"name":"@astrojs/react","old_version":"4.4.2","new_version":"5.0.5","repository_url":"https://github.com/withastro/astro"},{"name":"astro","old_version":"5.17.2","new_version":"6.3.7","repository_url":"https://github.com/withastro/astro"},{"name":"dotenv","old_version":"17.3.1","new_version":"17.4.2","repository_url":"https://github.com/motdotla/dotenv"},{"name":"drizzle-kit","old_version":"0.31.9","new_version":"0.31.10","repository_url":"https://github.com/drizzle-team/drizzle-orm"},{"name":"@modelcontextprotocol/sdk","old_version":"1.26.0","new_version":"1.29.0","repository_url":"https://github.com/modelcontextprotocol/typescript-sdk"},{"name":"got","old_version":"14.6.6","new_version":"15.0.5","repository_url":"https://github.com/sindresorhus/got"}],"path":null,"ecosystem":"npm"},"body":"Bumps the all-dependencies group with 65 updates in the / directory:\n\n| Package | From | To |\n| --- | --- | --- |\n| [@eslint-react/eslint-plugin](https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin) | `2.13.0` | `5.8.5` |\n| [@eslint/js](https://github.com/eslint/eslint/tree/HEAD/packages/js) | `9.39.2` | `10.0.1` |\n| [@typescript-eslint/eslint-plugin](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin) | `8.56.0` | `8.59.4` |\n| [@typescript-eslint/parser](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/parser) | `8.56.0` | `8.59.4` |\n| [eslint](https://github.com/eslint/eslint) | `9.39.2` | `10.4.0` |\n| [eslint-plugin-react-hooks](https://github.com/facebook/react/tree/HEAD/packages/eslint-plugin-react-hooks) | `7.0.1` | `7.1.1` |\n| [globals](https://github.com/sindresorhus/globals) | `17.3.0` | `17.6.0` |\n| [graphql](https://github.com/graphql/graphql-js) | `16.12.0` | `16.14.0` |\n| [happy-dom](https://github.com/capricorn86/happy-dom) | `20.6.2` | `20.9.0` |\n| [jiti](https://github.com/unjs/jiti) | `2.6.1` | `2.7.0` |\n| [lint-staged](https://github.com/lint-staged/lint-staged) | `16.2.7` | `17.0.5` |\n| [mermaid](https://github.com/mermaid-js/mermaid) | `11.12.3` | `11.15.0` |\n| [prettier](https://github.com/prettier/prettier) | `3.8.1` | `3.8.3` |\n| [react](https://github.com/facebook/react/tree/HEAD/packages/react) | `19.2.4` | `19.2.6` |\n| [@types/react](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/react) | `19.2.14` | `19.2.15` |\n| [typescript](https://github.com/microsoft/TypeScript) | `5.9.3` | `6.0.3` |\n| [typescript-eslint](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/typescript-eslint) | `8.56.0` | `8.59.4` |\n| [typescript-language-server](https://github.com/typescript-language-server/typescript-language-server) | `5.1.3` | `5.3.0` |\n| [vite](https://github.com/vitejs/vite/tree/HEAD/packages/vite) | `7.3.1` | `8.0.14` |\n| [vitepress](https://github.com/vuejs/vitepress) | `2.0.0-alpha.16` | `2.0.0-alpha.17` |\n| [vitepress-plugin-llms](https://github.com/okineadev/vitepress-plugin-llms) | `1.11.0` | `1.13.0` |\n| [vitest](https://github.com/vitest-dev/vitest/tree/HEAD/packages/vitest) | `4.0.18` | `4.1.7` |\n| [wrangler](https://github.com/cloudflare/workers-sdk/tree/HEAD/packages/wrangler) | `4.66.0` | `4.94.0` |\n| [@ai-sdk/openai](https://github.com/vercel/ai/tree/HEAD/packages/openai) | `3.0.29` | `3.0.65` |\n| [@better-auth/passkey](https://github.com/better-auth/better-auth/tree/HEAD/packages/passkey) | `1.4.18` | `1.6.11` |\n| [@better-auth/stripe](https://github.com/better-auth/better-auth/tree/HEAD/packages/stripe) | `1.4.18` | `1.6.11` |\n| [@trpc/server](https://github.com/trpc/trpc/tree/HEAD/packages/server) | `11.10.0` | `11.17.0` |\n| [ai](https://github.com/vercel/ai/tree/HEAD/packages/ai) | `6.0.91` | `6.0.191` |\n| [better-auth](https://github.com/better-auth/better-auth/tree/HEAD/packages/better-auth) | `1.4.18` | `1.6.11` |\n| [drizzle-orm](https://github.com/drizzle-team/drizzle-orm) | `0.45.1` | `0.45.2` |\n| [postgres](https://github.com/porsager/postgres) | `3.4.8` | `3.4.9` |\n| [resend](https://github.com/resend/resend-node) | `6.9.2` | `6.12.3` |\n| [stripe](https://github.com/stripe/stripe-node) | `20.3.1` | `22.1.1` |\n| [@cloudflare/workers-types](https://github.com/cloudflare/workerd) | `4.20260218.0` | `4.20260525.1` |\n| [@types/bun](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/bun) | `1.3.9` | `1.3.14` |\n| [hono](https://github.com/honojs/hono) | `4.11.10` | `4.12.23` |\n| [@tanstack/react-query](https://github.com/TanStack/query/tree/HEAD/packages/react-query) | `5.90.21` | `5.100.14` |\n| [@tanstack/react-router](https://github.com/TanStack/router/tree/HEAD/packages/react-router) | `1.161.1` | `1.170.8` |\n| [@trpc/client](https://github.com/trpc/trpc/tree/HEAD/packages/client) | `11.10.0` | `11.17.0` |\n| [@trpc/tanstack-react-query](https://github.com/trpc/trpc/tree/HEAD/packages/tanstack-react-query) | `11.10.0` | `11.17.0` |\n| [jotai](https://github.com/pmndrs/jotai) | `2.17.1` | `2.20.0` |\n| [jotai-effect](https://github.com/jotaijs/jotai-effect) | `2.2.3` | `2.3.1` |\n| [lucide-react](https://github.com/lucide-icons/lucide/tree/HEAD/packages/lucide-react) | `0.574.0` | `1.16.0` |\n| [react-dom](https://github.com/facebook/react/tree/HEAD/packages/react-dom) | `19.2.4` | `19.2.6` |\n| [react-error-boundary](https://github.com/bvaughn/react-error-boundary) | `6.1.1` | `6.1.2` |\n| [tailwind-merge](https://github.com/dcastil/tailwind-merge) | `3.4.1` | `3.6.0` |\n| [@tailwindcss/postcss](https://github.com/tailwindlabs/tailwindcss/tree/HEAD/packages/@tailwindcss-postcss) | `4.2.0` | `4.3.0` |\n| [@tanstack/react-query-devtools](https://github.com/TanStack/query/tree/HEAD/packages/react-query-devtools) | `5.91.3` | `5.100.14` |\n| [@tanstack/react-router-devtools](https://github.com/TanStack/router/tree/HEAD/packages/react-router-devtools) | `1.161.1` | `1.167.0` |\n| [@tanstack/router-plugin](https://github.com/TanStack/router/tree/HEAD/packages/router-plugin) | `1.161.1` | `1.168.11` |\n| [@types/node](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/node) | `25.2.3` | `25.9.1` |\n| [@vitejs/plugin-react](https://github.com/vitejs/vite-plugin-react/tree/HEAD/packages/plugin-react) | `5.1.4` | `6.0.2` |\n| [@vitejs/plugin-react-swc](https://github.com/vitejs/vite-plugin-react/tree/HEAD/packages/plugin-react-swc) | `4.2.3` | `4.3.1` |\n| [autoprefixer](https://github.com/postcss/autoprefixer) | `10.4.24` | `10.5.0` |\n| [globby](https://github.com/sindresorhus/globby) | `16.1.1` | `16.2.0` |\n| [@react-email/components](https://github.com/resend/react-email/tree/HEAD/packages/components) | `1.0.8` | `1.0.12` |\n| [@react-email/render](https://github.com/resend/react-email/tree/HEAD/packages/render) | `2.0.4` | `2.0.8` |\n| [@react-email/preview-server](https://github.com/resend/react-email/tree/HEAD/packages/preview-server) | `5.2.8` | `5.2.10` |\n| [react-email](https://github.com/resend/react-email/tree/HEAD/packages/react-email) | `5.2.8` | `6.3.2` |\n| [@astrojs/react](https://github.com/withastro/astro/tree/HEAD/packages/integrations/react) | `4.4.2` | `5.0.5` |\n| [astro](https://github.com/withastro/astro/tree/HEAD/packages/astro) | `5.17.2` | `6.3.7` |\n| [dotenv](https://github.com/motdotla/dotenv) | `17.3.1` | `17.4.2` |\n| [drizzle-kit](https://github.com/drizzle-team/drizzle-orm) | `0.31.9` | `0.31.10` |\n| [@modelcontextprotocol/sdk](https://github.com/modelcontextprotocol/typescript-sdk) | `1.26.0` | `1.29.0` |\n| [got](https://github.com/sindresorhus/got) | `14.6.6` | `15.0.5` |\n\n\nUpdates `@eslint-react/eslint-plugin` from 2.13.0 to 5.8.5\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/Rel1cx/eslint-react/releases\"\u003e@​eslint-react/eslint-plugin's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev5.8.5 (2026-05-24)\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003ch3\u003e📝 Documentation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdded rule implementation patterns guide (\u003ccode\u003edocs/rule-implementation-patterns.md\u003c/code\u003e) and term-based rule patterns guide (\u003ccode\u003edocs/term-based-rule-patterns.md\u003c/code\u003e).\u003c/li\u003e\n\u003cli\u003eLowered minimum TypeScript version requirement from \u003ccode\u003e5.1.0\u003c/code\u003e to \u003ccode\u003e5.0.0\u003c/code\u003e across README and documentation.\u003c/li\u003e\n\u003cli\u003eFixed textlint war-metaphor warnings and refined \u003ccode\u003e.textlintrc.json\u003c/code\u003e patterns.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🏗️ Internal\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdjusted formatting across configuration and script files (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1795\"\u003e#1795\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFixed a typo in the CI test workflow step.\u003c/li\u003e\n\u003cli\u003eAdded regression tests for oxc issues compatibility verification (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1796\"\u003e#1796\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eBumped dependencies across workspace packages:\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e@effect/language-service\u003c/code\u003e to \u003ccode\u003e^0.86.2\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@takumi-rs/image-response\u003c/code\u003e to \u003ccode\u003e^1.3.0\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@tsconfig/vite-react\u003c/code\u003e to \u003ccode\u003e^8.0.6\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@types/node\u003c/code\u003e to \u003ccode\u003e^25.9.1\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@types/react\u003c/code\u003e to \u003ccode\u003e^19.2.15\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eeslint-plugin-package-json\u003c/code\u003e to \u003ccode\u003e^1.1.0\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003efumadocs-core\u003c/code\u003e to \u003ccode\u003e^16.9.0\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003efumadocs-mdx\u003c/code\u003e to \u003ccode\u003e^15.0.7\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003efumadocs-ui\u003c/code\u003e to \u003ccode\u003e^16.9.0\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003elru-cache\u003c/code\u003e to \u003ccode\u003e11.5.0\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003enx\u003c/code\u003e to \u003ccode\u003e^22.7.3\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003epostcss\u003c/code\u003e to \u003ccode\u003e^8.5.15\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003evite\u003c/code\u003e to \u003ccode\u003e^8.0.14\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003evitest\u003c/code\u003e to \u003ccode\u003e^4.1.7\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003epnpm\u003c/code\u003e to \u003ccode\u003e11.2.1\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eAttestation\u003c/h2\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/attestations/28553042\"\u003ehttps://github.com/Rel1cx/eslint-react/attestations/28553042\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev5.8.4 (2026-05-22)\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003ch3\u003e📝 Documentation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eWebsite\u003c/strong\u003e: Restructured the FAQ page from an accordion layout to standard headings for better SEO, accessibility, and direct anchor linking.\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eWebsite\u003c/strong\u003e: Replaced the homepage \u003ccode\u003eHint\u003c/code\u003e popover with a direct link to the FAQ anchor explaining the project's human/LLM collaboration policy.\u003c/li\u003e\n\u003cli\u003eAdded a new \u003cstrong\u003e\u0026quot;What does 90% human-written mean?\u0026quot;\u003c/strong\u003e section to the FAQ.\u003c/li\u003e\n\u003cli\u003eUpdated documentation for \u003ccode\u003eisClassComponent\u003c/code\u003e and \u003ccode\u003eJsxConfig\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003eRemoved outdated documentation files.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🏗️ Internal\u003c/h3\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/Rel1cx/eslint-react/blob/main/CHANGELOG.md\"\u003e@​eslint-react/eslint-plugin's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev5.8.5 (2026-05-24)\u003c/h2\u003e\n\u003ch3\u003e📝 Documentation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdded rule implementation patterns guide (\u003ccode\u003edocs/rule-implementation-patterns.md\u003c/code\u003e) and term-based rule patterns guide (\u003ccode\u003edocs/term-based-rule-patterns.md\u003c/code\u003e).\u003c/li\u003e\n\u003cli\u003eLowered minimum TypeScript version requirement from \u003ccode\u003e5.1.0\u003c/code\u003e to \u003ccode\u003e5.0.0\u003c/code\u003e across README and documentation.\u003c/li\u003e\n\u003cli\u003eFixed textlint war-metaphor warnings and refined \u003ccode\u003e.textlintrc.json\u003c/code\u003e patterns.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🏗️ Internal\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdjusted formatting across configuration and script files (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1795\"\u003e#1795\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFixed a typo in the CI test workflow step.\u003c/li\u003e\n\u003cli\u003eAdded regression tests for oxc issues compatibility verification (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1796\"\u003e#1796\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eBumped dependencies across workspace packages:\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e@effect/language-service\u003c/code\u003e to \u003ccode\u003e^0.86.2\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@takumi-rs/image-response\u003c/code\u003e to \u003ccode\u003e^1.3.0\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@tsconfig/vite-react\u003c/code\u003e to \u003ccode\u003e^8.0.6\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@types/node\u003c/code\u003e to \u003ccode\u003e^25.9.1\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@types/react\u003c/code\u003e to \u003ccode\u003e^19.2.15\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eeslint-plugin-package-json\u003c/code\u003e to \u003ccode\u003e^1.1.0\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003efumadocs-core\u003c/code\u003e to \u003ccode\u003e^16.9.0\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003efumadocs-mdx\u003c/code\u003e to \u003ccode\u003e^15.0.7\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003efumadocs-ui\u003c/code\u003e to \u003ccode\u003e^16.9.0\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003elru-cache\u003c/code\u003e to \u003ccode\u003e11.5.0\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003enx\u003c/code\u003e to \u003ccode\u003e^22.7.3\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003epostcss\u003c/code\u003e to \u003ccode\u003e^8.5.15\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003evite\u003c/code\u003e to \u003ccode\u003e^8.0.14\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003evitest\u003c/code\u003e to \u003ccode\u003e^4.1.7\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003epnpm\u003c/code\u003e to \u003ccode\u003e11.2.1\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev5.8.4 (2026-05-22)\u003c/h2\u003e\n\u003ch3\u003e📝 Documentation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eWebsite\u003c/strong\u003e: Restructured the FAQ page from an accordion layout to standard headings for better SEO, accessibility, and direct anchor linking.\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eWebsite\u003c/strong\u003e: Replaced the homepage \u003ccode\u003eHint\u003c/code\u003e popover with a direct link to the FAQ anchor explaining the project's human/LLM collaboration policy.\u003c/li\u003e\n\u003cli\u003eAdded a new \u003cstrong\u003e\u0026quot;What does 90% human-written mean?\u0026quot;\u003c/strong\u003e section to the FAQ.\u003c/li\u003e\n\u003cli\u003eUpdated documentation for \u003ccode\u003eisClassComponent\u003c/code\u003e and \u003ccode\u003eJsxConfig\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003eRemoved outdated documentation files.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🏗️ Internal\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003e\u003ccode\u003ecore\u003c/code\u003e\u003c/strong\u003e: Simplified \u003ccode\u003eisClassComponent\u003c/code\u003e by removing the \u003ccode\u003econtext\u003c/code\u003e parameter and replacing \u003ccode\u003eisClassComponentLoose\u003c/code\u003e with the simplified function.\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003e\u003ccode\u003eeslint-plugin-react-x\u003c/code\u003e\u003c/strong\u003e: Removed unnecessary optional chaining across multiple rules (\u003ccode\u003eimmutability\u003c/code\u003e, \u003ccode\u003eno-unused-state\u003c/code\u003e, \u003ccode\u003epurity\u003c/code\u003e, \u003ccode\u003erefs\u003c/code\u003e, \u003ccode\u003eset-state-in-effect\u003c/code\u003e, \u003ccode\u003estatic-components\u003c/code\u003e, \u003ccode\u003euse-memo\u003c/code\u003e, etc.) and expanded test coverage for edge cases (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1792\"\u003e#1792\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdded automated GitHub Release workflow and fixed \u003ccode\u003eactions/setup-node\u003c/code\u003e cache parameter error.\u003c/li\u003e\n\u003cli\u003eAdded null-safety boundary tests for rules affected by PR \u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1792\"\u003e#1792\u003c/a\u003e (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1794\"\u003e#1794\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eBumped dependencies across workspace packages: \u003ccode\u003e@takumi-rs/image-response\u003c/code\u003e to 1.2.1, \u003ccode\u003efumadocs-mdx\u003c/code\u003e to 15.0.6, \u003ccode\u003eimport-integrity-lint\u003c/code\u003e to 1.1.1, \u003ccode\u003epreact\u003c/code\u003e to 10.29.2, \u003ccode\u003etsx\u003c/code\u003e to 4.22.1, \u003ccode\u003e@typescript-eslint\u003c/code\u003e to \u003ccode\u003e^8.59.4\u003c/code\u003e, \u003ccode\u003e@types/node\u003c/code\u003e to \u003ccode\u003e^25.9.0\u003c/code\u003e, \u003ccode\u003edompurify\u003c/code\u003e to \u003ccode\u003e^3.4.5\u003c/code\u003e, \u003ccode\u003epnpm\u003c/code\u003e to \u003ccode\u003e11.1.3\u003c/code\u003e, \u003ccode\u003etextlint\u003c/code\u003e to 15.7.1, and dprint TypeScript plugin to 0.96.1.\u003c/li\u003e\n\u003cli\u003eCleaned up stray empty string in \u003ccode\u003etsl.config.ts\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003eCleaned up type and lint errors across the workspace (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1793\"\u003e#1793\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eDowngraded TypeScript override in \u003ccode\u003epnpm-workspace.yaml\u003c/code\u003e from \u003ccode\u003e^6.0.3\u003c/code\u003e to \u003ccode\u003e5.9.3\u003c/code\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/8410851f436a8e1553484c95faecc64b3f8adbb1\"\u003e\u003ccode\u003e8410851\u003c/code\u003e\u003c/a\u003e release: 5.8.5\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/dccf9baf4c4f35919892dd61cee348ea1046d8fc\"\u003e\u003ccode\u003edccf9ba\u003c/code\u003e\u003c/a\u003e release: 5.8.5-beta.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/65edd43b61302e39af37fe00940f3903c52d5d0b\"\u003e\u003ccode\u003e65edd43\u003c/code\u003e\u003c/a\u003e release: 5.8.5-next.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/0393cd198aabafffeb4cf316856726b60834acd6\"\u003e\u003ccode\u003e0393cd1\u003c/code\u003e\u003c/a\u003e docs: lower minimum TypeScript version to 5.0.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/ceeeb663e4041cdabf41c75d8b68802006e86341\"\u003e\u003ccode\u003eceeeb66\u003c/code\u003e\u003c/a\u003e chore(deps): bump \u003ccode\u003e@​types/react\u003c/code\u003e, \u003ccode\u003e@​types/node\u003c/code\u003e, postcss, and fumadocs\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/39f2a0fe43a792ee4e1cf3ebf36e2b178e39324a\"\u003e\u003ccode\u003e39f2a0f\u003c/code\u003e\u003c/a\u003e release: 5.8.4\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/f7fa04ec446ffafcc5b04ac48b9a0a8c7421f5d7\"\u003e\u003ccode\u003ef7fa04e\u003c/code\u003e\u003c/a\u003e release: 5.8.4-beta.5\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/dbbd3298b136a649b4242b36d70929f0e8d6ecc7\"\u003e\u003ccode\u003edbbd329\u003c/code\u003e\u003c/a\u003e release: 5.8.4-beta.4\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/e3d9585a91caf57f3d0c69652a2a89664e70b5fd\"\u003e\u003ccode\u003ee3d9585\u003c/code\u003e\u003c/a\u003e release: 5.8.4-beta.3\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/1bae3a59500bde45ed7769521f1b1dc145ea92c1\"\u003e\u003ccode\u003e1bae3a5\u003c/code\u003e\u003c/a\u003e Link 90% human-written claim to FAQ\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/Rel1cx/eslint-react/commits/v5.8.5/plugins/eslint-plugin\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@eslint/js` from 9.39.2 to 10.0.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/eslint/eslint/releases\"\u003e@​eslint/js's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev10.0.1\u003c/h2\u003e\n\u003ch2\u003eBug Fixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/c87d5bded54c5cf491eb04c24c9d09bbbd42c23e\"\u003e\u003ccode\u003ec87d5bd\u003c/code\u003e\u003c/a\u003e fix: update eslint (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20531\"\u003e#20531\u003c/a\u003e) (renovate[bot])\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/d84100115c14691691058f00779c94e74fca946a\"\u003e\u003ccode\u003ed841001\u003c/code\u003e\u003c/a\u003e fix: update \u003ccode\u003eminimatch\u003c/code\u003e to \u003ccode\u003e10.2.1\u003c/code\u003e to address security vulnerabilities (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20519\"\u003e#20519\u003c/a\u003e) (루밀LuMir)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/04c21475b3004904948f02049f2888b401d82c78\"\u003e\u003ccode\u003e04c2147\u003c/code\u003e\u003c/a\u003e fix: update error message for unused suppressions (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20496\"\u003e#20496\u003c/a\u003e) (fnx)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/38b089c1726feac0e31a31d47941bd99e29ce003\"\u003e\u003ccode\u003e38b089c\u003c/code\u003e\u003c/a\u003e fix: update dependency \u003ccode\u003e@​eslint/config-array\u003c/code\u003e to ^0.23.1 (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20484\"\u003e#20484\u003c/a\u003e) (renovate[bot])\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eDocumentation\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/5b3dbce50a1404a9f118afe810cefeee79388a2a\"\u003e\u003ccode\u003e5b3dbce\u003c/code\u003e\u003c/a\u003e docs: add AI acknowledgement section to templates (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20431\"\u003e#20431\u003c/a\u003e) (루밀LuMir)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/6f23076037d5879f20fb3be2ef094293b1e8d38c\"\u003e\u003ccode\u003e6f23076\u003c/code\u003e\u003c/a\u003e docs: toggle nav in no-JS mode (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20476\"\u003e#20476\u003c/a\u003e) (Tanuj Kanti)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/b69cfb32a16c5d5e9986390d484fae1d21e406f9\"\u003e\u003ccode\u003eb69cfb3\u003c/code\u003e\u003c/a\u003e docs: Update README (GitHub Actions Bot)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eChores\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/e5c281ffd038a3a7a3e5364db0b9378e0ad83020\"\u003e\u003ccode\u003ee5c281f\u003c/code\u003e\u003c/a\u003e chore: updates for v9.39.3 release (Jenkins)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/8c3832adb77cd993b4a24891900d5eeaaf093cdc\"\u003e\u003ccode\u003e8c3832a\u003c/code\u003e\u003c/a\u003e chore: update \u003ccode\u003e@​typescript-eslint/parser\u003c/code\u003e to ^8.56.0 (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20514\"\u003e#20514\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/8330d238ae6adb68bb6a1c9381e38cfedd990d94\"\u003e\u003ccode\u003e8330d23\u003c/code\u003e\u003c/a\u003e test: add tests for config-api (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20493\"\u003e#20493\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/37d6e91e88fa6a2ca6d8726679096acff21ba6cc\"\u003e\u003ccode\u003e37d6e91\u003c/code\u003e\u003c/a\u003e chore: remove eslint v10 prereleases from eslint-config-eslint deps (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20494\"\u003e#20494\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/da7cd0e79197ad16e17052eef99df141de6dbfb1\"\u003e\u003ccode\u003eda7cd0e\u003c/code\u003e\u003c/a\u003e refactor: cleanup error message templates (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20479\"\u003e#20479\u003c/a\u003e) (Francesco Trotta)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/84fb885d49ac810e79a9491276b4828b53d913e5\"\u003e\u003ccode\u003e84fb885\u003c/code\u003e\u003c/a\u003e chore: package.json update for \u003ccode\u003e@​eslint/js\u003c/code\u003e release (Jenkins)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/1f667344b57c4c09b548d94bcfac1f91b6e5c63d\"\u003e\u003ccode\u003e1f66734\u003c/code\u003e\u003c/a\u003e chore: add \u003ccode\u003eeslint\u003c/code\u003e to \u003ccode\u003epeerDependencies\u003c/code\u003e of \u003ccode\u003e@eslint/js\u003c/code\u003e (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20467\"\u003e#20467\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev10.0.0\u003c/h2\u003e\n\u003ch2\u003eBreaking Changes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/f9e54f43a5e497cdfa179338b431093245cb787b\"\u003e\u003ccode\u003ef9e54f4\u003c/code\u003e\u003c/a\u003e feat!: estimate rule-tester failure location (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20420\"\u003e#20420\u003c/a\u003e) (ST-DDT)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/a176319d8ade1a7d9b2d7fb8f038f55a2662325f\"\u003e\u003ccode\u003ea176319\u003c/code\u003e\u003c/a\u003e feat!: replace \u003ccode\u003echalk\u003c/code\u003e with \u003ccode\u003estyleText\u003c/code\u003e and add \u003ccode\u003ecolor\u003c/code\u003e to \u003ccode\u003eResultsMeta\u003c/code\u003e (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20227\"\u003e#20227\u003c/a\u003e) (루밀LuMir)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/c7046e6c1e03c4ca0eee4888a1f2eba4c6454f84\"\u003e\u003ccode\u003ec7046e6\u003c/code\u003e\u003c/a\u003e feat!: enable JSX reference tracking (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20152\"\u003e#20152\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/fa31a608901684fbcd9906d1907e66561d16e5aa\"\u003e\u003ccode\u003efa31a60\u003c/code\u003e\u003c/a\u003e feat!: add \u003ccode\u003ename\u003c/code\u003e to configs (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20015\"\u003e#20015\u003c/a\u003e) (Kirk Waiblinger)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/3383e7ec9028166cafc8ea7986c2f7498d0049f0\"\u003e\u003ccode\u003e3383e7e\u003c/code\u003e\u003c/a\u003e fix!: remove deprecated \u003ccode\u003eSourceCode\u003c/code\u003e methods (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20137\"\u003e#20137\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/501abd0e916a35554c58b7c0365537f1fa3880ce\"\u003e\u003ccode\u003e501abd0\u003c/code\u003e\u003c/a\u003e feat!: update dependency minimatch to v10 (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20246\"\u003e#20246\u003c/a\u003e) (renovate[bot])\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/ca4d3b40085de47561f89656a2207d09946ed45e\"\u003e\u003ccode\u003eca4d3b4\u003c/code\u003e\u003c/a\u003e fix!: stricter rule tester assertions for valid test cases (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20125\"\u003e#20125\u003c/a\u003e) (唯然)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/96512a66c86402fb0538cdcb6cd30b9073f6bf3b\"\u003e\u003ccode\u003e96512a6\u003c/code\u003e\u003c/a\u003e fix!: Remove deprecated rule context methods (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20086\"\u003e#20086\u003c/a\u003e) (Nicholas C. Zakas)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/c69fdacdb2e886b9d965568a397aa8220db3fe90\"\u003e\u003ccode\u003ec69fdac\u003c/code\u003e\u003c/a\u003e feat!: remove eslintrc support (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20037\"\u003e#20037\u003c/a\u003e) (Francesco Trotta)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/208b5cc34a8374ff81412b5bec2e0800eebfbd04\"\u003e\u003ccode\u003e208b5cc\u003c/code\u003e\u003c/a\u003e feat!: Use \u003ccode\u003eScopeManager#addGlobals()\u003c/code\u003e (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20132\"\u003e#20132\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/a2ee188ea7a38a0c6155f3d39e2b00e1d0f36e14\"\u003e\u003ccode\u003ea2ee188\u003c/code\u003e\u003c/a\u003e fix!: add \u003ccode\u003euniqueItems: true\u003c/code\u003e in \u003ccode\u003eno-invalid-regexp\u003c/code\u003e option (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20155\"\u003e#20155\u003c/a\u003e) (Tanuj Kanti)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/a89059dbf2832d417dd493ee81483227ec44e4ab\"\u003e\u003ccode\u003ea89059d\u003c/code\u003e\u003c/a\u003e feat!: Program range span entire source text (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20133\"\u003e#20133\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/39a6424373d915fa9de0d7b0caba9a4dc3da9b53\"\u003e\u003ccode\u003e39a6424\u003c/code\u003e\u003c/a\u003e fix!: assert 'text' is a string across all RuleFixer methods (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20082\"\u003e#20082\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/f28fbf846244e043c92b355b224d121b06140b44\"\u003e\u003ccode\u003ef28fbf8\u003c/code\u003e\u003c/a\u003e fix!: Deprecate \u003ccode\u003e\u0026quot;always\u0026quot;\u003c/code\u003e and \u003ccode\u003e\u0026quot;as-needed\u0026quot;\u003c/code\u003e options of the \u003ccode\u003eradix\u003c/code\u003e rule (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20223\"\u003e#20223\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/aa3fb2b233e929b37220be940575f42c280e0b98\"\u003e\u003ccode\u003eaa3fb2b\u003c/code\u003e\u003c/a\u003e fix!: tighten \u003ccode\u003efunc-names\u003c/code\u003e schema (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20119\"\u003e#20119\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/f6c0ed0311dcfee853367d5068c765d066e6b756\"\u003e\u003ccode\u003ef6c0ed0\u003c/code\u003e\u003c/a\u003e feat!: report \u003ccode\u003eeslint-env\u003c/code\u003e comments as errors (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20128\"\u003e#20128\u003c/a\u003e) (Francesco Trotta)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/4bf739fb533e59f7f0a66b65f7bc80be0f37d8db\"\u003e\u003ccode\u003e4bf739f\u003c/code\u003e\u003c/a\u003e fix!: remove deprecated \u003ccode\u003eLintMessage#nodeType\u003c/code\u003e and \u003ccode\u003eTestCaseError#type\u003c/code\u003e (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20096\"\u003e#20096\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/523c076866400670fb2192a3f55dbf7ad3469247\"\u003e\u003ccode\u003e523c076\u003c/code\u003e\u003c/a\u003e feat!: drop support for jiti \u0026lt; 2.2.0 (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20016\"\u003e#20016\u003c/a\u003e) (michael faith)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/454a292c95f34dad232411ddac06408e6383bb64\"\u003e\u003ccode\u003e454a292\u003c/code\u003e\u003c/a\u003e feat!: update \u003ccode\u003eeslint:recommended\u003c/code\u003e configuration (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20210\"\u003e#20210\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/4f880ee02992e1bf0e96ebaba679985e2d1295f1\"\u003e\u003ccode\u003e4f880ee\u003c/code\u003e\u003c/a\u003e feat!: remove \u003ccode\u003ev10_*\u003c/code\u003e and inactive \u003ccode\u003eunstable_*\u003c/code\u003e flags (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20225\"\u003e#20225\u003c/a\u003e) (sethamus)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/f18115c363a4ac7671a4c7f30ee13d57ebba330f\"\u003e\u003ccode\u003ef18115c\u003c/code\u003e\u003c/a\u003e feat!: \u003ccode\u003eno-shadow-restricted-names\u003c/code\u003e report \u003ccode\u003eglobalThis\u003c/code\u003e by default (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20027\"\u003e#20027\u003c/a\u003e) (sethamus)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/c6358c31fbd3937b92d89be2618ffdf5a774604e\"\u003e\u003ccode\u003ec6358c3\u003c/code\u003e\u003c/a\u003e feat!: Require Node.js \u003ccode\u003e^20.19.0 || ^22.13.0 || \u0026gt;=24\u003c/code\u003e (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20160\"\u003e#20160\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eFeatures\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/bff9091927811497dbf066b0e3b85ecb37d43822\"\u003e\u003ccode\u003ebff9091\u003c/code\u003e\u003c/a\u003e feat: handle \u003ccode\u003eArray.fromAsync\u003c/code\u003e in \u003ccode\u003earray-callback-return\u003c/code\u003e (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20457\"\u003e#20457\u003c/a\u003e) (Francesco Trotta)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/290c594bb50c439fb71bc75521ee5360daa8c222\"\u003e\u003ccode\u003e290c594\u003c/code\u003e\u003c/a\u003e feat: add \u003ccode\u003eself\u003c/code\u003e to \u003ccode\u003eno-implied-eval\u003c/code\u003e rule (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20468\"\u003e#20468\u003c/a\u003e) (sethamus)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/43677de07ebd6e14bfac40a46ad749ba783c45f2\"\u003e\u003ccode\u003e43677de\u003c/code\u003e\u003c/a\u003e feat: fix handling of function and class expression names in \u003ccode\u003eno-shadow\u003c/code\u003e (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20432\"\u003e#20432\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/84fb885d49ac810e79a9491276b4828b53d913e5\"\u003e\u003ccode\u003e84fb885\u003c/code\u003e\u003c/a\u003e chore: package.json update for \u003ccode\u003e@​eslint/js\u003c/code\u003e release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/1f667344b57c4c09b548d94bcfac1f91b6e5c63d\"\u003e\u003ccode\u003e1f66734\u003c/code\u003e\u003c/a\u003e chore: add \u003ccode\u003eeslint\u003c/code\u003e to \u003ccode\u003epeerDependencies\u003c/code\u003e of \u003ccode\u003e@eslint/js\u003c/code\u003e (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20467\"\u003e#20467\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/f3fbc2f60cbe2c718364feb8c3fc0452c0df3c56\"\u003e\u003ccode\u003ef3fbc2f\u003c/code\u003e\u003c/a\u003e chore: set \u003ccode\u003e@eslint/js\u003c/code\u003e version to 10.0.0 to skip releasing it (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20466\"\u003e#20466\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/b4b3127f8542c599ce2dea804b6582ebc40c993d\"\u003e\u003ccode\u003eb4b3127\u003c/code\u003e\u003c/a\u003e chore: package.json update for \u003ccode\u003e@​eslint/js\u003c/code\u003e release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/0b14059491d830a49b3577931f4f68fbcfce6be5\"\u003e\u003ccode\u003e0b14059\u003c/code\u003e\u003c/a\u003e chore: package.json update for \u003ccode\u003e@​eslint/js\u003c/code\u003e release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/fa31a608901684fbcd9906d1907e66561d16e5aa\"\u003e\u003ccode\u003efa31a60\u003c/code\u003e\u003c/a\u003e feat!: add \u003ccode\u003ename\u003c/code\u003e to configs (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20015\"\u003e#20015\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/1e2cad5f6fa47ed6ed89d2a29798dda926d50990\"\u003e\u003ccode\u003e1e2cad5\u003c/code\u003e\u003c/a\u003e chore: package.json update for \u003ccode\u003e@​eslint/js\u003c/code\u003e release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/454a292c95f34dad232411ddac06408e6383bb64\"\u003e\u003ccode\u003e454a292\u003c/code\u003e\u003c/a\u003e feat!: update \u003ccode\u003eeslint:recommended\u003c/code\u003e configuration (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20210\"\u003e#20210\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/c6358c31fbd3937b92d89be2618ffdf5a774604e\"\u003e\u003ccode\u003ec6358c3\u003c/code\u003e\u003c/a\u003e feat!: Require Node.js \u003ccode\u003e^20.19.0 || ^22.13.0 || \u0026gt;=24\u003c/code\u003e (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20160\"\u003e#20160\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/eslint/eslint/commits/v10.0.1/packages/js\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@typescript-eslint/eslint-plugin` from 8.56.0 to 8.59.4\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases\"\u003e@​typescript-eslint/eslint-plugin's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev8.59.4\u003c/h2\u003e\n\u003ch2\u003e8.59.4 (2026-05-18)\u003c/h2\u003e\n\u003ch3\u003e🩹 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-floating-promises] stack overflow when using recursive types (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12294\"\u003e#12294\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eproject-service:\u003c/strong\u003e throw error cause in \u003ccode\u003egetParsedConfigFileFromTSServer\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12321\"\u003e#12321\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003etypescript-eslint:\u003c/strong\u003e export Compatible* types from typescript-eslint to resolve pnpm TS error (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12340\"\u003e#12340\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e❤️ Thank You\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eEvyatar Daud \u003ca href=\"https://github.com/StyleShit\"\u003e\u003ccode\u003e@​StyleShit\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eKirk Waiblinger \u003ca href=\"https://github.com/kirkwaiblinger\"\u003e\u003ccode\u003e@​kirkwaiblinger\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003elumir\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.4\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003ev8.59.3\u003c/h2\u003e\n\u003ch2\u003e8.59.3 (2026-05-11)\u003c/h2\u003e\n\u003cp\u003eThis was a version bump only, there were no code changes.\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.3\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003ev8.59.2\u003c/h2\u003e\n\u003ch2\u003e8.59.2 (2026-05-04)\u003c/h2\u003e\n\u003ch3\u003e🩹 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unsafe-type-assertion] handle crash on recursive template literal types (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12150\"\u003e#12150\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-deprecated] object destructuring values should be treated as declarations (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12292\"\u003e#12292\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003erule-tester:\u003c/strong\u003e add TypeScript as a peer dependency (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12288\"\u003e#12288\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e❤️ Thank You\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eDariusz Czajkowski\u003c/li\u003e\n\u003cli\u003eDima Barabash\u003c/li\u003e\n\u003cli\u003eKirk Waiblinger \u003ca href=\"https://github.com/kirkwaiblinger\"\u003e\u003ccode\u003e@​kirkwaiblinger\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.2\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003ev8.59.1\u003c/h2\u003e\n\u003ch2\u003e8.59.1 (2026-04-27)\u003c/h2\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/CHANGELOG.md\"\u003e@​typescript-eslint/eslint-plugin's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e8.59.4 (2026-05-18)\u003c/h2\u003e\n\u003ch3\u003e🩹 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-floating-promises] stack overflow when using recursive types (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12294\"\u003e#12294\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e❤️ Thank You\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eEvyatar Daud \u003ca href=\"https://github.com/StyleShit\"\u003e\u003ccode\u003e@​StyleShit\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.4\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003e8.59.3 (2026-05-11)\u003c/h2\u003e\n\u003cp\u003eThis was a version bump only for eslint-plugin to align it with other projects, there were no code changes.\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.3\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003e8.59.2 (2026-05-04)\u003c/h2\u003e\n\u003ch3\u003e🩹 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-deprecated] object destructuring values should be treated as declarations (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12292\"\u003e#12292\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unsafe-type-assertion] handle crash on recursive template literal types (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12150\"\u003e#12150\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e❤️ Thank You\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eDima Barabash\u003c/li\u003e\n\u003cli\u003eKirk Waiblinger \u003ca href=\"https://github.com/kirkwaiblinger\"\u003e\u003ccode\u003e@​kirkwaiblinger\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.2\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003e8.59.1 (2026-04-27)\u003c/h2\u003e\n\u003ch3\u003e🩹 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-condition] treat void as nullish in no-unnecessary-condition (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12241\"\u003e#12241\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-type-arguments] handle instantiation expressions (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12220\"\u003e#12220\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-type-assertion] avoid false positive in logical assignment assertions (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12278\"\u003e#12278\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-type-assertion] preserve phantom type arguments in generic inference (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12269\"\u003e#12269\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-type-assertion] preserve index signatures in undefined unions (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12257\"\u003e#12257\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-type-assertion] fix crash \u0026quot;TypeError: checker.getTypeArguments is not a function\u0026quot; (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12246\"\u003e#12246\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e❤️ Thank You\u003c/h3\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/ca6ca1431b6d18235297a7e29feb5d98f012dff2\"\u003e\u003ccode\u003eca6ca14\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.59.4\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/4302433ae6bf93d4ddc35264ad1b951254758566\"\u003e\u003ccode\u003e4302433\u003c/code\u003e\u003c/a\u003e fix(eslint-plugin): [no-floating-promises] stack overflow when using recursiv...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/10b79f1ba8e98610a3af85152a1b3b406f91e633\"\u003e\u003ccode\u003e10b79f1\u003c/code\u003e\u003c/a\u003e chore(deps): update dependency eslint to v10.4.0 (\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin/issues/12339\"\u003e#12339\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/2a6765d9628dc776f8127c96f088bb807c0bcab2\"\u003e\u003ccode\u003e2a6765d\u003c/code\u003e\u003c/a\u003e chore: clenaup \u003ccode\u003egetAwaitedType\u003c/code\u003e from \u003ccode\u003etypescript.d.ts\u003c/code\u003e (\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin/issues/12302\"\u003e#12302\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/48e13c0261e3cb1bf4f4dfaa462cdb3a56ef7383\"\u003e\u003ccode\u003e48e13c0\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.59.3\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/e26dc8003ababf078aad4df17765ee4cea30644c\"\u003e\u003ccode\u003ee26dc80\u003c/code\u003e\u003c/a\u003e docs: update stale links to latest (\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin/issues/12313\"\u003e#12313\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/44f9625336841a8ee3eb01a9e02e49b1d7b12648\"\u003e\u003ccode\u003e44f9625\u003c/code\u003e\u003c/a\u003e chore(deps): update vitest monorepo to v4.1.5 (\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin/issues/12307\"\u003e#12307\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/2ec35f1760aade4df4c631d76d78c7ed5e136333\"\u003e\u003ccode\u003e2ec35f1\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.59.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/ec3ef25390f7daf5a9ff33a60282bdbbb49ab0f3\"\u003e\u003ccode\u003eec3ef25\u003c/code\u003e\u003c/a\u003e test: make no-useless-empty-export tests fully static (\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin/issues/12260\"\u003e#12260\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/60d0a513870d833617374ff8ea256d86ca3cbbbb\"\u003e\u003ccode\u003e60d0a51\u003c/code\u003e\u003c/a\u003e chore(eslint-plugin): switch auto-generated test cases to hand-written in no-...\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commits/v8.59.4/packages/eslint-plugin\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@typescript-eslint/parser` from 8.56.0 to 8.59.4\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases\"\u003e@​typescript-eslint/parser's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev8.59.4\u003c/h2\u003e\n\u003ch2\u003e8.59.4 (2026-05-18)\u003c/h2\u003e\n\u003ch3\u003e🩹 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-floating-promises] stack overflow when using recursive types (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12294\"\u003e#12294\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eproject-service:\u003c/strong\u003e throw error cause in \u003ccode\u003egetParsedConfigFileFromTSServer\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12321\"\u003e#12321\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003etypescript-eslint:\u003c/strong\u003e export Compatible* types from typescript-eslint to resolve pnpm TS error (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12340\"\u003e#12340\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e❤️ Thank You\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eEvyatar Daud \u003ca href=\"https://github.com/StyleShit\"\u003e\u003ccode\u003e@​StyleShit\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eKirk Waiblinger \u003ca href=\"https://github.com/kirkwaiblinger\"\u003e\u003ccode\u003e@​kirkwaiblinger\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003elumir\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.4\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003ev8.59.3\u003c/h2\u003e\n\u003ch2\u003e8.59.3 (2026-05-11)\u003c/h2\u003e\n\u003cp\u003eThis was a version bump only, there were no code changes.\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.3\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003ev8.59.2\u003c/h2\u003e\n\u003ch2\u003e8.59.2 (2026-05-04)\u003c/h2\u003e\n\u003ch3\u003e🩹 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unsafe-type-assertion] handle crash on recursive template literal types (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12150\"\u003e#12150\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-deprecated] object destructuring values should be treated as declarations (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12292\"\u003e#12292\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003erule-tester:\u003c/strong\u003e add TypeScript as a peer dependency (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12288\"\u003e#12288\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e❤️ Thank You\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eDariusz Czajkowski\u003c/li\u003e\n\u003cli\u003eDima Barabash\u003c/li\u003e\n\u003cli\u003eKirk Waiblinger \u003ca href=\"https://github.com/kirkwaiblinger\"\u003e\u003ccode\u003e@​kirkwaiblinger\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.2\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003ev8.59.1\u003c/h2\u003e\n\u003ch2\u003e8.59.1 (2026-04-27)\u003c/h2\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/parser/CHANGELOG.md\"\u003e@​typescript-eslint/parser's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e8.59.4 (2026-05-18)\u003c/h2\u003e\n\u003cp\u003eThis was a version bump only for parser to align it with other projects, there were no code changes.\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.4\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003e8.59.3 (2026-05-11)\u003c/h2\u003e\n\u003cp\u003eThis was a version bump only for parser to align it with other projects, there were no code changes.\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.3\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003e8.59.2 (2026-05-04)\u003c/h2\u003e\n\u003cp\u003eThis was a version bump only for parser to align it with other projects, there were no code changes.\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.2\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003e8.59.1 (2026-04-27)\u003c/h2\u003e\n\u003cp\u003eThis was a version bump only for parser to align it with other projects, there were no code changes.\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.1\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003e8.59.0 (2026-04-20)\u003c/h2\u003e\n\u003cp\u003eThis was a version bump only for parser to align it with other projects, there were no code changes.\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.0\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003e8.58.2 (2026-04-13)\u003c/h2\u003e\n\u003ch3\u003e🩹 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eremove tsbuildinfo cache file from published packages (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12187\"\u003e#12187\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e❤️ Thank You\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAbhijeet Singh \u003ca href=\"https://github.com/cseas\"\u003e\u003ccode\u003e@​cseas\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/ca6ca1431b6d18235297a7e29feb5d98f012dff2\"\u003e\u003ccode\u003eca6ca14\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.59.4\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/48e13c0261e3cb1bf4f4dfaa462cdb3a56ef7383\"\u003e\u003ccode\u003e48e13c0\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.59.3\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/44f9625336841a8ee3eb01a9e02e49b1d7b12648\"\u003e\u003ccode\u003e44f9625\u003c/code\u003e\u003c/a\u003e chore(deps): update vitest monorepo to v4.1.5 (\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/parser/issues/12307\"\u003e#12307\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/2ec35f1760aade4df4c631d76d78c7ed5e136333\"\u003e\u003ccode\u003e2ec35f1\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.59.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/52457932e5507b5ca01e720a541f3f8d01e09b9d\"\u003e\u003ccode\u003e5245793\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.59.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/ea9ae4f8817873480e3501145059f63e39e8d8a1\"\u003e\u003ccode\u003eea9ae4f\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.59.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/90c2803a4c250e0343598d41e973f95e743bf4ce\"\u003e\u003ccode\u003e90c2803\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.58.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/be6b49a02d68db9bdc8985e7e9e1598700fda2fa\"\u003e\u003ccode\u003ebe6b49a\u003c/code\u003e\u003c/a\u003e fix: remove tsbuildinfo cache file from published packages (\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/parser/issues/12187\"\u003e#12187\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/5311ed312eadf4e238324f2726ae0b1f3f2206e6\"\u003e\u003ccode\u003e5311ed3\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.58.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/493341709fe7d1d6433332b7bd2724e3332c7cdf\"\u003e\u003ccode\u003e4933417\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.58.0\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commits/v8.59.4/packages/parser\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `eslint` from 9.39.2 to 10.4.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/eslint/eslint/releases\"\u003eeslint's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev10.4.0\u003c/h2\u003e\n\u003ch2\u003eFeatures\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/1a45ec596af1dd5f880e6874cb8f24dafb6a7ecf\"\u003e\u003ccode\u003e1a45ec5\u003c/code\u003e\u003c/a\u003e feat: check sequence expressions in \u003ccode\u003efor-direction\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20701\"\u003e#20701\u003c/a\u003e) (kuldeep kumar)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/450040bd89b989b3531824c6be45feb5fe3d936b\"\u003e\u003ccode\u003e450040b\u003c/code\u003e\u003c/a\u003e feat: add \u003ccode\u003eincludeIgnoreFile()\u003c/code\u003e to \u003ccode\u003eeslint/config\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20735\"\u003e#20735\u003c/a\u003e) (Kirk Waiblinger)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eBug Fixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/544c0c3da589166ad8e5d634f35d3d06701c57be\"\u003e\u003ccode\u003e544c0c3\u003c/code\u003e\u003c/a\u003e fix: escape code path DOT labels in debug output (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20866\"\u003e#20866\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/6799431203f2579632d0870f98ba132067f4040c\"\u003e\u003ccode\u003e6799431\u003c/code\u003e\u003c/a\u003e fix: update dependency \u003ccode\u003e@​eslint/config-helpers\u003c/code\u003e to ^0.6.0 (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20850\"\u003e#20850\u003c/a\u003e) (renovate[bot])\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/f078fef5005dceb14fc162aab7c7200e027688dd\"\u003e\u003ccode\u003ef078fef\u003c/code\u003e\u003c/a\u003e fix: handle non-array deprecated rule replacements (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20825\"\u003e#20825\u003c/a\u003e) (xbinaryx)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eDocumentation\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/7e52a7151fb92eec0e0f67fe4e5ddbd1ccce796f\"\u003e\u003ccode\u003e7e52a71\u003c/code\u003e\u003c/a\u003e docs: add mention of \u003ccode\u003e@eslint-react/eslint-plugin\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20869\"\u003e#20869\u003c/a\u003e) (Pavel)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/db3468ba746407d7f286f18f7ea9db6df0e3bc08\"\u003e\u003ccode\u003edb3468b\u003c/code\u003e\u003c/a\u003e docs: tweak wording around ambiguous CJS-vs-ESM config (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20865\"\u003e#20865\u003c/a\u003e) (Kirk Waiblinger)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/90846643ec6e97d447ae0d831fabe6d17b0a998a\"\u003e\u003ccode\u003e9084664\u003c/code\u003e\u003c/a\u003e docs: Update README (GitHub Actions Bot)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/9cc73875046e3c4b8313644cbb1e99e26b36bd3f\"\u003e\u003ccode\u003e9cc7387\u003c/code\u003e\u003c/a\u003e docs: Update README (GitHub Actions Bot)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/3d7b5484407403817aa9071a394d336d8ea96eb5\"\u003e\u003ccode\u003e3d7b548\u003c/code\u003e\u003c/a\u003e docs: Update README (GitHub Actions Bot)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/191ec3c0a3f94ce0f110df761f0b2b8949011ccb\"\u003e\u003ccode\u003e191ec3c\u003c/code\u003e\u003c/a\u003e docs: Update README (GitHub Actions Bot)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eChores\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/6616856f28fa514a30f87b5539fc100d739a94bf\"\u003e\u003ccode\u003e6616856\u003c/code\u003e\u003c/a\u003e chore: upgrade knip to v6 (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20875\"\u003e#20875\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/d13b084a3ad02f926e9addaa35fc383759ea5554\"\u003e\u003ccode\u003ed13b084\u003c/code\u003e\u003c/a\u003e ci: ensure auto-created PRs run CI (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20860\"\u003e#20860\u003c/a\u003e) (lumir)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/e71c7af86dce9acc1d18cb12d2184309f6841594\"\u003e\u003ccode\u003ee71c7af\u003c/code\u003e\u003c/a\u003e ci: bump pnpm/action-setup from 6.0.5 to 6.0.7 (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20862\"\u003e#20862\u003c/a\u003e) (dependabot[bot])\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/d84393dea170f54191fd20c8268b52c81c0ccd99\"\u003e\u003ccode\u003ed84393d\u003c/code\u003e\u003c/a\u003e test: add unit tests for SuppressionsService.applySuppressions() (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20863\"\u003e#20863\u003c/a\u003e) (kuldeep kumar)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/24db8cb8e6f07fba667121777a15b1785486be94\"\u003e\u003ccode\u003e24db8cb\u003c/code\u003e\u003c/a\u003e test: add tests for SuppressionsService.save() (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20802\"\u003e#20802\u003c/a\u003e) (kuldeep kumar)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/2ef0549cac4a9537e4c3a26b9f3edd4c99476bf6\"\u003e\u003ccode\u003e2ef0549\u003c/code\u003e\u003c/a\u003e chore: update ecosystem plugins (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20857\"\u003e#20857\u003c/a\u003e) (github-actions[bot])\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/a4297918d264d229a06cd96051ef9b91c7b86732\"\u003e\u003ccode\u003ea429791\u003c/code\u003e\u003c/a\u003e ci: remove \u003ccode\u003eeslint-webpack-plugin\u003c/code\u003e types integration test (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20668\"\u003e#20668\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/9e37386aa7f2ce220b2ef74a6afbac5f6b3527c5\"\u003e\u003ccode\u003e9e37386\u003c/code\u003e\u003c/a\u003e chore: replace \u003ccode\u003erecast\u003c/code\u003e with range approach in code-sample-minimizer (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20682\"\u003e#20682\u003c/a\u003e) (Copilot)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/0dd1f9ffc9a07704d46e2a4c8d4ccc0d0908b0c0\"\u003e\u003ccode\u003e0dd1f9f\u003c/code\u003e\u003c/a\u003e test: disable warning for \u003ccode\u003evm.constants.USE_MAIN_CONTEXT_DEFAULT_LOADER\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20845\"\u003e#20845\u003c/a\u003e) (Francesco Trotta)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/9da3c7bc92d9579f8db19ecb56e718538d09db2b\"\u003e\u003ccode\u003e9da3c7b\u003c/code\u003e\u003c/a\u003e refactor: remove deprecated \u003ccode\u003emeta.language\u003c/code\u003e and migrate \u003ccode\u003emeta.dialects\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20716\"\u003e#20716\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/2099ed12a0a74c3d7f0808514362af2499b4fe2b\"\u003e\u003ccode\u003e2099ed1\u003c/code\u003e\u003c/a\u003e refactor: add \u003ccode\u003emeta.defaultOptions\u003c/code\u003e to more rules, enable linting (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20800\"\u003e#20800\u003c/a\u003e) (xbinaryx)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/f1dfbc9ca57196de7092e1888cc99427bd6fe06e\"\u003e\u003ccode\u003ef1dfbc9\u003c/code\u003e\u003c/a\u003e chore: update ecosystem plugins (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20836\"\u003e#20836\u003c/a\u003e) (github-actions[bot])\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/c75941390c14728806cd4baef4f6072f6de78318\"\u003e\u003ccode\u003ec759413\u003c/code\u003e\u003c/a\u003e ci: bump pnpm/action-setup from 6.0.3 to 6.0.5 (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20843\"\u003e#20843\u003c/a\u003e) (dependabot[bot])\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/5b817d6fdc9ae2c35b528dc662b2eca8f40f64aa\"\u003e\u003ccode\u003e5b817d6\u003c/code\u003e\u003c/a\u003e test: add unit tests for lib/shared/ast-utils (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20838\"\u003e#20838\u003c/a\u003e) (kuldeep kumar)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/1c13ae3934c198c494e5958fa3a68b33244ff06a\"\u003e\u003ccode\u003e1c13ae3\u003c/code\u003e\u003c/a\u003e test: add unit tests for lib/shared/severity (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20835\"\u003e#20835\u003c/a\u003e) (kuldeep kumar)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev10.3.0\u003c/h2\u003e\n\u003ch2\u003eFeatures\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/379571a975f2b24d88037b9de2e72ec61d004130\"\u003e\u003ccode\u003e379571a\u003c/code\u003e\u003c/a\u003e feat: add suggestions for no-unused-private-class-members (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20773\"\u003e#20773\u003c/a\u003e) (sethamus)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eBug Fixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/b6ae5cf07b9b51802367539cb24b245b61eaa37c\"\u003e\u003ccode\u003eb6ae5cf\u003c/code\u003e\u003c/a\u003e fix: handle unavailable require cache (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20812\"\u003e#20812\u003c/a\u003e) (Simon Podlipsky)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/6fb3685bcbe9a6f72fd7dfb9129686b6fb96b0bd\"\u003e\u003ccode\u003e6fb3685\u003c/code\u003e\u003c/a\u003e fix: rule suggestions cause continuation in class body (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20787\"\u003e#20787\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eDocumentation\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/32cc7ab4ec653ce89da92deb5c40a9f4fc707fe5\"\u003e\u003ccode\u003e32cc7ab\u003c/code\u003e\u003c/a\u003e docs: fix typos in docs and comments (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20809\"\u003e#20809\u003c/a\u003e) (Tanuj Kanti)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/7f479376a2fa463d823ab762db6bb37ce8d2ee8f\"\u003e\u003ccode\u003e7f47937\u003c/code\u003e\u003c/a\u003e docs: Update README (GitHub Actions Bot)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eChores\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/d32235ec19ceea211fa86452afa383ca05f5c2f9\"\u003e\u003ccode\u003ed32235e\u003c/code\u003e\u003c/a\u003e ci: use pnpm in \u003ccode\u003eeslint-flat-config-utils\u003c/code\u003e type integration test (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20826\"\u003e#20826\u003c/a\u003e) (Francesco Trotta)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/3ffb14ea517de750ed1181579ef844af342e4096\"\u003e\u003ccode\u003e3ffb14e\u003c/code\u003e\u003c/a\u003e chore: clean up typos in comments and JSDoc (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20821\"\u003e#20821\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/452c4010c07dc2e36fe6ec6a8c48298878e86887\"\u003e\u003ccode\u003e452c401\u003c/code\u003e\u003c/a\u003e 10.4.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/b6417e8b55c9525070d6e168b485ce6ff21688ed\"\u003e\u003ccode\u003eb6417e8\u003c/code\u003e\u003c/a\u003e Build: changelog update for 10.4.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/6616856f28fa514a30f87b5539fc100d739a94bf\"\u003e\u003ccode\u003e6616856\u003c/code\u003e\u003c/a\u003e chore: upgrade knip to v6 (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20875\"\u003e#20875\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/d13b084a3ad02f926e9addaa35fc383759ea5554\"\u003e\u003ccode\u003ed13b084\u003c/code\u003e\u003c/a\u003e ci: ensure auto-created PRs run CI (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20860\"\u003e#20860\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/7e52a7151fb92eec0e0f67fe4e5ddbd1ccce796f\"\u003e\u003ccode\u003e7e52a71\u003c/code\u003e\u003c/a\u003e docs: add mention of \u003ccode\u003e@eslint-react/eslint-plugin\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20869\"\u003e#20869\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/e71c7af86dce9acc1d18cb12d2184309f6841594\"\u003e\u003ccode\u003ee71c7af\u003c/code\u003e\u003c/a\u003e ci: bump pnpm/action-setup from 6.0.5 to 6.0.7 (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20862\"\u003e#20862\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/544c0c3da589166ad8e5d634f35d3d06701c57be\"\u003e\u003ccode\u003e544c0c3\u003c/code\u003e\u003c/a\u003e fix: escape code path DOT labels in debug output (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20866\"\u003e#20866\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/db3468ba746407d7f286f18f7ea9db6df0e3bc08\"\u003e\u003ccode\u003edb3468b\u003c/code\u003e\u003c/a\u003e docs: tweak wording around ambiguous CJS-vs-ESM config (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20865\"\u003e#20865\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/d84393dea170f54191fd20c8268b52c81c0ccd99\"\u003e\u003ccode\u003ed84393d\u003c/code\u003e\u003c/a\u003e test: add unit tests for SuppressionsService.applySuppressions() (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20863\"\u003e#20863\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/90846643ec6e97d447ae0d831fabe6d17b0a998a\"\u003e\u003ccode\u003e9084664\u003c/code\u003e\u003c/a\u003e docs: Update README\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/eslint/eslint/compare/v9.39.2...v10.4.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `eslint-plugin-react-hooks` from 7.0.1 to 7.1.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/facebook/react/releases\"\u003eeslint-plugin-react-hooks's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eeslint-plugin-react-hooks@7.1.1 (April 17, 2026)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eNote:\u003c/strong\u003e 7.1.0 accidentally removed the \u003ccode\u003ecomponent-hook-factories\u003c/code\u003e rule, causing errors for users who referenced it in their ESLint config. This is now fixed.\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdd deprecated no-op \u003ccode\u003ecomponent-hook-factories\u003c/code\u003e rule for backwards compatibility. (\u003ca href=\"https://github.com/mofeiZ\"\u003e\u003ccode\u003e@​mofeiZ\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/36307\"\u003e#36307\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eeslint-plugin-react-hooks@7.1.0 (April 16, 2026)\u003c/h2\u003e\n\u003cp\u003eThis release adds ESLint v10 support, improves performance by skipping compilation for non-React files, and includes compiler lint improvements including better \u003ccode\u003eset-state-in-effect\u003c/code\u003e detection, improved ref validation, and more helpful error reporting.\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdd ESLint v10 support. (\u003ca href=\"https://github.com/azat-io\"\u003e\u003ccode\u003e@​azat-io\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/35720\"\u003e#35720\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSkip compilation for non-React files to improve performance. (\u003ca href=\"https://github.com/josephsavona\"\u003e\u003ccode\u003e@​josephsavona\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/35589\"\u003e#35589\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix exhaustive deps bug with Flow type casting. (\u003ca href=\"https://github.com/jorge-cab\"\u003e\u003ccode\u003e@​jorge-cab\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/35691\"\u003e#35691\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix \u003ccode\u003euseEffectEvent\u003c/code\u003e checks in component syntax. (\u003ca href=\"https://github.com/jbrown215\"\u003e\u003ccode\u003e@​jbrown215\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/35041\"\u003e#35041\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eImproved \u003ccode\u003eset-state-in-effect\u003c/code\u003e validation with fewer false negatives. (\u003ca href=\"https://github.com/jorge-cab\"\u003e\u003ccode\u003e@​jorge-cab\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/35134\"\u003e#35134\u003c/a\u003e, \u003ca href=\"https://github.com/josephsavona\"\u003e\u003ccode\u003e@​josephsavona\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/35147\"\u003e#35147\u003c/a\u003e, \u003ca href=\"https://github.com/jackpope\"\u003e\u003ccode\u003e@​jackpope\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/35214\"\u003e#35214\u003c/a\u003e, \u003ca href=\"https://github.com/chesnokov-tony\"\u003e\u003ccode\u003e@​chesnokov-tony\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/35419\"\u003e#35419\u003c/a\u003e, \u003ca href=\"https://github.com/jsleitor\"\u003e\u003ccode\u003e@​jsleitor\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/36107\"\u003e#36107\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eImproved ref validation for non-mutating functions and event handler props. (\u003ca href=\"https://github.com/josephsavona\"\u003e\u003ccode\u003e@​josephsavona\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/35893\"\u003e#35893\u003c/a\u003e, \u003ca href=\"https://github.com/kolvian\"\u003e\u003ccode\u003e@​kolvian\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/35062\"\u003e#35062\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCompiler now reports all errors instead of stopping at the first. (\u003ca href=\"https://github.com/josephsavona\"\u003e\u003ccode\u003e@​josephsavona\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/35873\"\u003e#35873\u003c/a\u003e–\u003ca href=\"https://redirect.github.com/facebook/react/pull/35884\"\u003e#35884\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eImproved source locations and error display in compiler diagnostics. (\u003ca href=\"https://github.com/nathanmarks\"\u003e\u003ccode\u003e@​nathanmarks\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/35348\"\u003e#35348\u003c/a\u003e, \u003ca href=\"https://github.com/josephsavona\"\u003e\u003ccode\u003e@​josephsavona\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/34963\"\u003e#34963\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/facebook/react/blob/main/packages/eslint-plugin-react-hooks/CHANGELOG.md\"\u003eeslint-plugin-react-hooks's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e7.1.1\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eNote:\u003c/strong\u003e 7.1.0 accidentally removed the \u003ccode\u003ecomponent-hook-factories\u003c/code\u003e rule, causing errors for users who referenced it in their ESLint config. This is now fixed.\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdd deprecated no-op \u003ccode\u003ecomponent-hook-factories\u003c/code\u003e rule for backwards compatibility. (\u003ca href=\"https://github.com/mofeiZ\"\u003e\u003ccode\u003e@​mofeiZ\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/36307\"\u003e#36307\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e7.1.0\u003c/h2\u003e\n\u003cp\u003eThis release adds ESLint v10 support, improves performance by skipping compilation for non-React files, and includes compiler lint improvements including better \u003ccode\u003eset-state-in-effect\u003c/code\u003e detection, improved ref validation, and more helpful error reporting.\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdd ESLint v10 support. (\u003ca href=\"https://github.com/azat-io\"\u003e\u003ccode\u003e@​azat-io\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/35720\"\u003e#35720\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSkip compilation for non-React files to improve performance. (\u003ca href=\"https://github.com/josephsavona\"\u003e\u003ccode\u003e@​josephsavona\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redire...\n\n_Description has been truncated_","html_url":"https://github.com/mr-ElAmine/test-1/pull/8","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/mr-ElAmine%2Ftest-1/issues/8","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/8/packages"}},{"old_version":"5.1.3","new_version":"5.3.0","update_type":"minor","path":null,"pr_created_at":"2026-05-25T05:20:24.000Z","version_change":"5.1.3 → 5.3.0","issue":{"uuid":"4514467552","node_id":"PR_kwDORiBhSM7e6i26","number":12,"state":"open","title":"deps(deps): bump the all-dependencies group across 1 directory with 65 updates","user":"dependabot[bot]","labels":[],"assignees":[],"locked":false,"comments_count":1,"pull_request":true,"closed_at":null,"author_association":null,"state_reason":null,"created_at":"2026-05-25T05:20:24.000Z","updated_at":"2026-05-25T05:20:25.000Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"deps(deps): bump","group_name":"all-dependencies","update_count":65,"packages":[{"name":"@eslint-react/eslint-plugin","old_version":"2.13.0","new_version":"5.8.5","repository_url":"https://github.com/Rel1cx/eslint-react"},{"name":"@typescript-eslint/eslint-plugin","old_version":"8.56.1","new_version":"8.59.4","repository_url":"https://github.com/typescript-eslint/typescript-eslint"},{"name":"@typescript-eslint/parser","old_version":"8.56.1","new_version":"8.59.4","repository_url":"https://github.com/typescript-eslint/typescript-eslint"},{"name":"eslint","old_version":"10.0.3","new_version":"10.4.0","repository_url":"https://github.com/eslint/eslint"},{"name":"eslint-plugin-react-hooks","old_version":"7.0.1","new_version":"7.1.1","repository_url":"https://github.com/facebook/react"},{"name":"globals","old_version":"17.4.0","new_version":"17.6.0","repository_url":"https://github.com/sindresorhus/globals"},{"name":"graphql","old_version":"16.13.1","new_version":"16.14.0","repository_url":"https://github.com/graphql/graphql-js"},{"name":"happy-dom","old_version":"20.8.3","new_version":"20.9.0","repository_url":"https://github.com/capricorn86/happy-dom"},{"name":"jiti","old_version":"2.6.1","new_version":"2.7.0","repository_url":"https://github.com/unjs/jiti"},{"name":"lint-staged","old_version":"16.3.2","new_version":"17.0.5","repository_url":"https://github.com/lint-staged/lint-staged"},{"name":"mermaid","old_version":"11.12.3","new_version":"11.15.0","repository_url":"https://github.com/mermaid-js/mermaid"},{"name":"prettier","old_version":"3.8.1","new_version":"3.8.3","repository_url":"https://github.com/prettier/prettier"},{"name":"react","old_version":"19.2.4","new_version":"19.2.6","repository_url":"https://github.com/facebook/react"},{"name":"@types/react","old_version":"19.2.14","new_version":"19.2.15","repository_url":"https://github.com/DefinitelyTyped/DefinitelyTyped"},{"name":"typescript","old_version":"5.9.3","new_version":"6.0.3","repository_url":"https://github.com/microsoft/TypeScript"},{"name":"typescript-eslint","old_version":"8.56.1","new_version":"8.59.4","repository_url":"https://github.com/typescript-eslint/typescript-eslint"},{"name":"typescript-language-server","old_version":"5.1.3","new_version":"5.3.0","repository_url":"https://github.com/typescript-language-server/typescript-language-server"},{"name":"vite","old_version":"7.3.1","new_version":"8.0.14","repository_url":"https://github.com/vitejs/vite"},{"name":"vitepress","old_version":"2.0.0-alpha.16","new_version":"2.0.0-alpha.17","repository_url":"https://github.com/vuejs/vitepress"},{"name":"vitepress-plugin-llms","old_version":"1.11.0","new_version":"1.13.0","repository_url":"https://github.com/okineadev/vitepress-plugin-llms"},{"name":"vitest","old_version":"4.0.18","new_version":"4.1.7","repository_url":"https://github.com/vitest-dev/vitest"},{"name":"wrangler","old_version":"4.71.0","new_version":"4.94.0","repository_url":"https://github.com/cloudflare/workers-sdk"},{"name":"@anthropic-ai/sdk","old_version":"0.52.0","new_version":"0.98.0","repository_url":"https://github.com/anthropics/anthropic-sdk-typescript"},{"name":"@trpc/server","old_version":"11.12.0","new_version":"11.17.0","repository_url":"https://github.com/trpc/trpc"},{"name":"better-auth","old_version":"1.5.4","new_version":"1.6.11","repository_url":"https://github.com/better-auth/better-auth"},{"name":"drizzle-orm","old_version":"0.45.1","new_version":"0.45.2","repository_url":"https://github.com/drizzle-team/drizzle-orm"},{"name":"postgres","old_version":"3.4.8","new_version":"3.4.9","repository_url":"https://github.com/porsager/postgres"},{"name":"resend","old_version":"6.9.3","new_version":"6.12.3","repository_url":"https://github.com/resend/resend-node"},{"name":"@cloudflare/workers-types","old_version":"4.20260307.1","new_version":"4.20260525.1","repository_url":"https://github.com/cloudflare/workerd"},{"name":"@types/bun","old_version":"1.3.10","new_version":"1.3.14","repository_url":"https://github.com/DefinitelyTyped/DefinitelyTyped"},{"name":"hono","old_version":"4.12.5","new_version":"4.12.23","repository_url":"https://github.com/honojs/hono"},{"name":"@tanstack/react-query","old_version":"5.90.21","new_version":"5.100.14","repository_url":"https://github.com/TanStack/query"},{"name":"@tanstack/react-router","old_version":"1.166.3","new_version":"1.170.8","repository_url":"https://github.com/TanStack/router"},{"name":"@trpc/client","old_version":"11.12.0","new_version":"11.17.0","repository_url":"https://github.com/trpc/trpc"},{"name":"@trpc/tanstack-react-query","old_version":"11.12.0","new_version":"11.17.0","repository_url":"https://github.com/trpc/trpc"},{"name":"jotai","old_version":"2.18.0","new_version":"2.20.0","repository_url":"https://github.com/pmndrs/jotai"},{"name":"jotai-effect","old_version":"2.2.3","new_version":"2.3.1","repository_url":"https://github.com/jotaijs/jotai-effect"},{"name":"lucide-react","old_version":"0.577.0","new_version":"1.16.0","repository_url":"https://github.com/lucide-icons/lucide"},{"name":"motion","old_version":"12.35.2","new_version":"12.40.0","repository_url":"https://github.com/motiondivision/motion"},{"name":"react-dom","old_version":"19.2.4","new_version":"19.2.6","repository_url":"https://github.com/facebook/react"},{"name":"react-error-boundary","old_version":"6.1.1","new_version":"6.1.2","repository_url":"https://github.com/bvaughn/react-error-boundary"},{"name":"recharts","old_version":"2.15.4","new_version":"3.8.1","repository_url":"https://github.com/recharts/recharts"},{"name":"tailwind-merge","old_version":"3.5.0","new_version":"3.6.0","repository_url":"https://github.com/dcastil/tailwind-merge"},{"name":"@tailwindcss/postcss","old_version":"4.2.1","new_version":"4.3.0","repository_url":"https://github.com/tailwindlabs/tailwindcss"},{"name":"@tanstack/react-query-devtools","old_version":"5.91.3","new_version":"5.100.14","repository_url":"https://github.com/TanStack/query"},{"name":"@tanstack/react-router-devtools","old_version":"1.166.3","new_version":"1.167.0","repository_url":"https://github.com/TanStack/router"},{"name":"@tanstack/router-plugin","old_version":"1.166.3","new_version":"1.168.11","repository_url":"https://github.com/TanStack/router"},{"name":"@types/node","old_version":"25.3.5","new_version":"25.9.1","repository_url":"https://github.com/DefinitelyTyped/DefinitelyTyped"},{"name":"@vitejs/plugin-react","old_version":"5.1.4","new_version":"6.0.2","repository_url":"https://github.com/vitejs/vite-plugin-react"},{"name":"@vitejs/plugin-react-swc","old_version":"4.2.3","new_version":"4.3.1","repository_url":"https://github.com/vitejs/vite-plugin-react"},{"name":"autoprefixer","old_version":"10.4.27","new_version":"10.5.0","repository_url":"https://github.com/postcss/autoprefixer"},{"name":"globby","old_version":"16.1.1","new_version":"16.2.0","repository_url":"https://github.com/sindresorhus/globby"},{"name":"@react-email/components","old_version":"1.0.8","new_version":"1.0.12","repository_url":"https://github.com/resend/react-email"},{"name":"@react-email/render","old_version":"2.0.4","new_version":"2.0.8","repository_url":"https://github.com/resend/react-email"},{"name":"@react-email/preview-server","old_version":"5.2.9","new_version":"5.2.10","repository_url":"https://github.com/resend/react-email"},{"name":"react-email","old_version":"5.2.9","new_version":"6.3.2","repository_url":"https://github.com/resend/react-email"},{"name":"@astrojs/react","old_version":"4.4.2","new_version":"5.0.5","repository_url":"https://github.com/withastro/astro"},{"name":"astro","old_version":"5.18.0","new_version":"6.3.7","repository_url":"https://github.com/withastro/astro"},{"name":"dotenv","old_version":"17.3.1","new_version":"17.4.2","repository_url":"https://github.com/motdotla/dotenv"},{"name":"drizzle-kit","old_version":"0.31.9","new_version":"0.31.10","repository_url":"https://github.com/drizzle-team/drizzle-orm"},{"name":"@modelcontextprotocol/sdk","old_version":"1.27.1","new_version":"1.29.0","repository_url":"https://github.com/modelcontextprotocol/typescript-sdk"},{"name":"got","old_version":"14.6.6","new_version":"15.0.5","repository_url":"https://github.com/sindresorhus/got"}],"path":null,"ecosystem":"npm"},"body":"Bumps the all-dependencies group with 62 updates in the / directory:\n\n| Package | From | To |\n| --- | --- | --- |\n| [@eslint-react/eslint-plugin](https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin) | `2.13.0` | `5.8.5` |\n| [@typescript-eslint/eslint-plugin](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin) | `8.56.1` | `8.59.4` |\n| [@typescript-eslint/parser](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/parser) | `8.56.1` | `8.59.4` |\n| [eslint](https://github.com/eslint/eslint) | `10.0.3` | `10.4.0` |\n| [eslint-plugin-react-hooks](https://github.com/facebook/react/tree/HEAD/packages/eslint-plugin-react-hooks) | `7.0.1` | `7.1.1` |\n| [globals](https://github.com/sindresorhus/globals) | `17.4.0` | `17.6.0` |\n| [graphql](https://github.com/graphql/graphql-js) | `16.13.1` | `16.14.0` |\n| [happy-dom](https://github.com/capricorn86/happy-dom) | `20.8.3` | `20.9.0` |\n| [jiti](https://github.com/unjs/jiti) | `2.6.1` | `2.7.0` |\n| [lint-staged](https://github.com/lint-staged/lint-staged) | `16.3.2` | `17.0.5` |\n| [mermaid](https://github.com/mermaid-js/mermaid) | `11.12.3` | `11.15.0` |\n| [prettier](https://github.com/prettier/prettier) | `3.8.1` | `3.8.3` |\n| [react](https://github.com/facebook/react/tree/HEAD/packages/react) | `19.2.4` | `19.2.6` |\n| [@types/react](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/react) | `19.2.14` | `19.2.15` |\n| [typescript](https://github.com/microsoft/TypeScript) | `5.9.3` | `6.0.3` |\n| [typescript-eslint](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/typescript-eslint) | `8.56.1` | `8.59.4` |\n| [typescript-language-server](https://github.com/typescript-language-server/typescript-language-server) | `5.1.3` | `5.3.0` |\n| [vite](https://github.com/vitejs/vite/tree/HEAD/packages/vite) | `7.3.1` | `8.0.14` |\n| [vitepress](https://github.com/vuejs/vitepress) | `2.0.0-alpha.16` | `2.0.0-alpha.17` |\n| [vitepress-plugin-llms](https://github.com/okineadev/vitepress-plugin-llms) | `1.11.0` | `1.13.0` |\n| [vitest](https://github.com/vitest-dev/vitest/tree/HEAD/packages/vitest) | `4.0.18` | `4.1.7` |\n| [wrangler](https://github.com/cloudflare/workers-sdk/tree/HEAD/packages/wrangler) | `4.71.0` | `4.94.0` |\n| [@anthropic-ai/sdk](https://github.com/anthropics/anthropic-sdk-typescript) | `0.52.0` | `0.98.0` |\n| [@trpc/server](https://github.com/trpc/trpc/tree/HEAD/packages/server) | `11.12.0` | `11.17.0` |\n| [better-auth](https://github.com/better-auth/better-auth/tree/HEAD/packages/better-auth) | `1.5.4` | `1.6.11` |\n| [drizzle-orm](https://github.com/drizzle-team/drizzle-orm) | `0.45.1` | `0.45.2` |\n| [postgres](https://github.com/porsager/postgres) | `3.4.8` | `3.4.9` |\n| [resend](https://github.com/resend/resend-node) | `6.9.3` | `6.12.3` |\n| [@cloudflare/workers-types](https://github.com/cloudflare/workerd) | `4.20260307.1` | `4.20260525.1` |\n| [@types/bun](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/bun) | `1.3.10` | `1.3.14` |\n| [hono](https://github.com/honojs/hono) | `4.12.5` | `4.12.23` |\n| [@tanstack/react-query](https://github.com/TanStack/query/tree/HEAD/packages/react-query) | `5.90.21` | `5.100.14` |\n| [@tanstack/react-router](https://github.com/TanStack/router/tree/HEAD/packages/react-router) | `1.166.3` | `1.170.8` |\n| [@trpc/client](https://github.com/trpc/trpc/tree/HEAD/packages/client) | `11.12.0` | `11.17.0` |\n| [@trpc/tanstack-react-query](https://github.com/trpc/trpc/tree/HEAD/packages/tanstack-react-query) | `11.12.0` | `11.17.0` |\n| [jotai](https://github.com/pmndrs/jotai) | `2.18.0` | `2.20.0` |\n| [jotai-effect](https://github.com/jotaijs/jotai-effect) | `2.2.3` | `2.3.1` |\n| [lucide-react](https://github.com/lucide-icons/lucide/tree/HEAD/packages/lucide-react) | `0.577.0` | `1.16.0` |\n| [motion](https://github.com/motiondivision/motion) | `12.35.2` | `12.40.0` |\n| [react-dom](https://github.com/facebook/react/tree/HEAD/packages/react-dom) | `19.2.4` | `19.2.6` |\n| [react-error-boundary](https://github.com/bvaughn/react-error-boundary) | `6.1.1` | `6.1.2` |\n| [recharts](https://github.com/recharts/recharts) | `2.15.4` | `3.8.1` |\n| [tailwind-merge](https://github.com/dcastil/tailwind-merge) | `3.5.0` | `3.6.0` |\n| [@tailwindcss/postcss](https://github.com/tailwindlabs/tailwindcss/tree/HEAD/packages/@tailwindcss-postcss) | `4.2.1` | `4.3.0` |\n| [@tanstack/react-query-devtools](https://github.com/TanStack/query/tree/HEAD/packages/react-query-devtools) | `5.91.3` | `5.100.14` |\n| [@tanstack/react-router-devtools](https://github.com/TanStack/router/tree/HEAD/packages/react-router-devtools) | `1.166.3` | `1.167.0` |\n| [@tanstack/router-plugin](https://github.com/TanStack/router/tree/HEAD/packages/router-plugin) | `1.166.3` | `1.168.11` |\n| [@types/node](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/node) | `25.3.5` | `25.9.1` |\n| [@vitejs/plugin-react](https://github.com/vitejs/vite-plugin-react/tree/HEAD/packages/plugin-react) | `5.1.4` | `6.0.2` |\n| [@vitejs/plugin-react-swc](https://github.com/vitejs/vite-plugin-react/tree/HEAD/packages/plugin-react-swc) | `4.2.3` | `4.3.1` |\n| [autoprefixer](https://github.com/postcss/autoprefixer) | `10.4.27` | `10.5.0` |\n| [globby](https://github.com/sindresorhus/globby) | `16.1.1` | `16.2.0` |\n| [@react-email/components](https://github.com/resend/react-email/tree/HEAD/packages/components) | `1.0.8` | `1.0.12` |\n| [@react-email/render](https://github.com/resend/react-email/tree/HEAD/packages/render) | `2.0.4` | `2.0.8` |\n| [@react-email/preview-server](https://github.com/resend/react-email/tree/HEAD/packages/preview-server) | `5.2.9` | `5.2.10` |\n| [react-email](https://github.com/resend/react-email/tree/HEAD/packages/react-email) | `5.2.9` | `6.3.2` |\n| [@astrojs/react](https://github.com/withastro/astro/tree/HEAD/packages/integrations/react) | `4.4.2` | `5.0.5` |\n| [astro](https://github.com/withastro/astro/tree/HEAD/packages/astro) | `5.18.0` | `6.3.7` |\n| [dotenv](https://github.com/motdotla/dotenv) | `17.3.1` | `17.4.2` |\n| [drizzle-kit](https://github.com/drizzle-team/drizzle-orm) | `0.31.9` | `0.31.10` |\n| [@modelcontextprotocol/sdk](https://github.com/modelcontextprotocol/typescript-sdk) | `1.27.1` | `1.29.0` |\n| [got](https://github.com/sindresorhus/got) | `14.6.6` | `15.0.5` |\n\n\nUpdates `@eslint-react/eslint-plugin` from 2.13.0 to 5.8.5\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/Rel1cx/eslint-react/releases\"\u003e@​eslint-react/eslint-plugin's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev5.8.5 (2026-05-24)\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003ch3\u003e📝 Documentation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdded rule implementation patterns guide (\u003ccode\u003edocs/rule-implementation-patterns.md\u003c/code\u003e) and term-based rule patterns guide (\u003ccode\u003edocs/term-based-rule-patterns.md\u003c/code\u003e).\u003c/li\u003e\n\u003cli\u003eLowered minimum TypeScript version requirement from \u003ccode\u003e5.1.0\u003c/code\u003e to \u003ccode\u003e5.0.0\u003c/code\u003e across README and documentation.\u003c/li\u003e\n\u003cli\u003eFixed textlint war-metaphor warnings and refined \u003ccode\u003e.textlintrc.json\u003c/code\u003e patterns.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🏗️ Internal\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdjusted formatting across configuration and script files (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1795\"\u003e#1795\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFixed a typo in the CI test workflow step.\u003c/li\u003e\n\u003cli\u003eAdded regression tests for oxc issues compatibility verification (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1796\"\u003e#1796\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eBumped dependencies across workspace packages:\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e@effect/language-service\u003c/code\u003e to \u003ccode\u003e^0.86.2\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@takumi-rs/image-response\u003c/code\u003e to \u003ccode\u003e^1.3.0\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@tsconfig/vite-react\u003c/code\u003e to \u003ccode\u003e^8.0.6\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@types/node\u003c/code\u003e to \u003ccode\u003e^25.9.1\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@types/react\u003c/code\u003e to \u003ccode\u003e^19.2.15\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eeslint-plugin-package-json\u003c/code\u003e to \u003ccode\u003e^1.1.0\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003efumadocs-core\u003c/code\u003e to \u003ccode\u003e^16.9.0\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003efumadocs-mdx\u003c/code\u003e to \u003ccode\u003e^15.0.7\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003efumadocs-ui\u003c/code\u003e to \u003ccode\u003e^16.9.0\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003elru-cache\u003c/code\u003e to \u003ccode\u003e11.5.0\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003enx\u003c/code\u003e to \u003ccode\u003e^22.7.3\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003epostcss\u003c/code\u003e to \u003ccode\u003e^8.5.15\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003evite\u003c/code\u003e to \u003ccode\u003e^8.0.14\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003evitest\u003c/code\u003e to \u003ccode\u003e^4.1.7\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003epnpm\u003c/code\u003e to \u003ccode\u003e11.2.1\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eAttestation\u003c/h2\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/attestations/28553042\"\u003ehttps://github.com/Rel1cx/eslint-react/attestations/28553042\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev5.8.4 (2026-05-22)\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003ch3\u003e📝 Documentation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eWebsite\u003c/strong\u003e: Restructured the FAQ page from an accordion layout to standard headings for better SEO, accessibility, and direct anchor linking.\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eWebsite\u003c/strong\u003e: Replaced the homepage \u003ccode\u003eHint\u003c/code\u003e popover with a direct link to the FAQ anchor explaining the project's human/LLM collaboration policy.\u003c/li\u003e\n\u003cli\u003eAdded a new \u003cstrong\u003e\u0026quot;What does 90% human-written mean?\u0026quot;\u003c/strong\u003e section to the FAQ.\u003c/li\u003e\n\u003cli\u003eUpdated documentation for \u003ccode\u003eisClassComponent\u003c/code\u003e and \u003ccode\u003eJsxConfig\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003eRemoved outdated documentation files.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🏗️ Internal\u003c/h3\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/Rel1cx/eslint-react/blob/main/CHANGELOG.md\"\u003e@​eslint-react/eslint-plugin's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev5.8.5 (2026-05-24)\u003c/h2\u003e\n\u003ch3\u003e📝 Documentation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdded rule implementation patterns guide (\u003ccode\u003edocs/rule-implementation-patterns.md\u003c/code\u003e) and term-based rule patterns guide (\u003ccode\u003edocs/term-based-rule-patterns.md\u003c/code\u003e).\u003c/li\u003e\n\u003cli\u003eLowered minimum TypeScript version requirement from \u003ccode\u003e5.1.0\u003c/code\u003e to \u003ccode\u003e5.0.0\u003c/code\u003e across README and documentation.\u003c/li\u003e\n\u003cli\u003eFixed textlint war-metaphor warnings and refined \u003ccode\u003e.textlintrc.json\u003c/code\u003e patterns.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🏗️ Internal\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdjusted formatting across configuration and script files (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1795\"\u003e#1795\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFixed a typo in the CI test workflow step.\u003c/li\u003e\n\u003cli\u003eAdded regression tests for oxc issues compatibility verification (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1796\"\u003e#1796\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eBumped dependencies across workspace packages:\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e@effect/language-service\u003c/code\u003e to \u003ccode\u003e^0.86.2\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@takumi-rs/image-response\u003c/code\u003e to \u003ccode\u003e^1.3.0\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@tsconfig/vite-react\u003c/code\u003e to \u003ccode\u003e^8.0.6\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@types/node\u003c/code\u003e to \u003ccode\u003e^25.9.1\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@types/react\u003c/code\u003e to \u003ccode\u003e^19.2.15\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eeslint-plugin-package-json\u003c/code\u003e to \u003ccode\u003e^1.1.0\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003efumadocs-core\u003c/code\u003e to \u003ccode\u003e^16.9.0\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003efumadocs-mdx\u003c/code\u003e to \u003ccode\u003e^15.0.7\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003efumadocs-ui\u003c/code\u003e to \u003ccode\u003e^16.9.0\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003elru-cache\u003c/code\u003e to \u003ccode\u003e11.5.0\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003enx\u003c/code\u003e to \u003ccode\u003e^22.7.3\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003epostcss\u003c/code\u003e to \u003ccode\u003e^8.5.15\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003evite\u003c/code\u003e to \u003ccode\u003e^8.0.14\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003evitest\u003c/code\u003e to \u003ccode\u003e^4.1.7\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003epnpm\u003c/code\u003e to \u003ccode\u003e11.2.1\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev5.8.4 (2026-05-22)\u003c/h2\u003e\n\u003ch3\u003e📝 Documentation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eWebsite\u003c/strong\u003e: Restructured the FAQ page from an accordion layout to standard headings for better SEO, accessibility, and direct anchor linking.\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eWebsite\u003c/strong\u003e: Replaced the homepage \u003ccode\u003eHint\u003c/code\u003e popover with a direct link to the FAQ anchor explaining the project's human/LLM collaboration policy.\u003c/li\u003e\n\u003cli\u003eAdded a new \u003cstrong\u003e\u0026quot;What does 90% human-written mean?\u0026quot;\u003c/strong\u003e section to the FAQ.\u003c/li\u003e\n\u003cli\u003eUpdated documentation for \u003ccode\u003eisClassComponent\u003c/code\u003e and \u003ccode\u003eJsxConfig\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003eRemoved outdated documentation files.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🏗️ Internal\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003e\u003ccode\u003ecore\u003c/code\u003e\u003c/strong\u003e: Simplified \u003ccode\u003eisClassComponent\u003c/code\u003e by removing the \u003ccode\u003econtext\u003c/code\u003e parameter and replacing \u003ccode\u003eisClassComponentLoose\u003c/code\u003e with the simplified function.\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003e\u003ccode\u003eeslint-plugin-react-x\u003c/code\u003e\u003c/strong\u003e: Removed unnecessary optional chaining across multiple rules (\u003ccode\u003eimmutability\u003c/code\u003e, \u003ccode\u003eno-unused-state\u003c/code\u003e, \u003ccode\u003epurity\u003c/code\u003e, \u003ccode\u003erefs\u003c/code\u003e, \u003ccode\u003eset-state-in-effect\u003c/code\u003e, \u003ccode\u003estatic-components\u003c/code\u003e, \u003ccode\u003euse-memo\u003c/code\u003e, etc.) and expanded test coverage for edge cases (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1792\"\u003e#1792\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdded automated GitHub Release workflow and fixed \u003ccode\u003eactions/setup-node\u003c/code\u003e cache parameter error.\u003c/li\u003e\n\u003cli\u003eAdded null-safety boundary tests for rules affected by PR \u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1792\"\u003e#1792\u003c/a\u003e (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1794\"\u003e#1794\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eBumped dependencies across workspace packages: \u003ccode\u003e@takumi-rs/image-response\u003c/code\u003e to 1.2.1, \u003ccode\u003efumadocs-mdx\u003c/code\u003e to 15.0.6, \u003ccode\u003eimport-integrity-lint\u003c/code\u003e to 1.1.1, \u003ccode\u003epreact\u003c/code\u003e to 10.29.2, \u003ccode\u003etsx\u003c/code\u003e to 4.22.1, \u003ccode\u003e@typescript-eslint\u003c/code\u003e to \u003ccode\u003e^8.59.4\u003c/code\u003e, \u003ccode\u003e@types/node\u003c/code\u003e to \u003ccode\u003e^25.9.0\u003c/code\u003e, \u003ccode\u003edompurify\u003c/code\u003e to \u003ccode\u003e^3.4.5\u003c/code\u003e, \u003ccode\u003epnpm\u003c/code\u003e to \u003ccode\u003e11.1.3\u003c/code\u003e, \u003ccode\u003etextlint\u003c/code\u003e to 15.7.1, and dprint TypeScript plugin to 0.96.1.\u003c/li\u003e\n\u003cli\u003eCleaned up stray empty string in \u003ccode\u003etsl.config.ts\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003eCleaned up type and lint errors across the workspace (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1793\"\u003e#1793\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eDowngraded TypeScript override in \u003ccode\u003epnpm-workspace.yaml\u003c/code\u003e from \u003ccode\u003e^6.0.3\u003c/code\u003e to \u003ccode\u003e5.9.3\u003c/code\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/8410851f436a8e1553484c95faecc64b3f8adbb1\"\u003e\u003ccode\u003e8410851\u003c/code\u003e\u003c/a\u003e release: 5.8.5\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/dccf9baf4c4f35919892dd61cee348ea1046d8fc\"\u003e\u003ccode\u003edccf9ba\u003c/code\u003e\u003c/a\u003e release: 5.8.5-beta.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/65edd43b61302e39af37fe00940f3903c52d5d0b\"\u003e\u003ccode\u003e65edd43\u003c/code\u003e\u003c/a\u003e release: 5.8.5-next.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/0393cd198aabafffeb4cf316856726b60834acd6\"\u003e\u003ccode\u003e0393cd1\u003c/code\u003e\u003c/a\u003e docs: lower minimum TypeScript version to 5.0.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/ceeeb663e4041cdabf41c75d8b68802006e86341\"\u003e\u003ccode\u003eceeeb66\u003c/code\u003e\u003c/a\u003e chore(deps): bump \u003ccode\u003e@​types/react\u003c/code\u003e, \u003ccode\u003e@​types/node\u003c/code\u003e, postcss, and fumadocs\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/39f2a0fe43a792ee4e1cf3ebf36e2b178e39324a\"\u003e\u003ccode\u003e39f2a0f\u003c/code\u003e\u003c/a\u003e release: 5.8.4\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/f7fa04ec446ffafcc5b04ac48b9a0a8c7421f5d7\"\u003e\u003ccode\u003ef7fa04e\u003c/code\u003e\u003c/a\u003e release: 5.8.4-beta.5\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/dbbd3298b136a649b4242b36d70929f0e8d6ecc7\"\u003e\u003ccode\u003edbbd329\u003c/code\u003e\u003c/a\u003e release: 5.8.4-beta.4\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/e3d9585a91caf57f3d0c69652a2a89664e70b5fd\"\u003e\u003ccode\u003ee3d9585\u003c/code\u003e\u003c/a\u003e release: 5.8.4-beta.3\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/1bae3a59500bde45ed7769521f1b1dc145ea92c1\"\u003e\u003ccode\u003e1bae3a5\u003c/code\u003e\u003c/a\u003e Link 90% human-written claim to FAQ\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/Rel1cx/eslint-react/commits/v5.8.5/plugins/eslint-plugin\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@typescript-eslint/eslint-plugin` from 8.56.1 to 8.59.4\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases\"\u003e@​typescript-eslint/eslint-plugin's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev8.59.4\u003c/h2\u003e\n\u003ch2\u003e8.59.4 (2026-05-18)\u003c/h2\u003e\n\u003ch3\u003e🩹 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-floating-promises] stack overflow when using recursive types (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12294\"\u003e#12294\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eproject-service:\u003c/strong\u003e throw error cause in \u003ccode\u003egetParsedConfigFileFromTSServer\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12321\"\u003e#12321\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003etypescript-eslint:\u003c/strong\u003e export Compatible* types from typescript-eslint to resolve pnpm TS error (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12340\"\u003e#12340\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e❤️ Thank You\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eEvyatar Daud \u003ca href=\"https://github.com/StyleShit\"\u003e\u003ccode\u003e@​StyleShit\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eKirk Waiblinger \u003ca href=\"https://github.com/kirkwaiblinger\"\u003e\u003ccode\u003e@​kirkwaiblinger\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003elumir\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.4\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003ev8.59.3\u003c/h2\u003e\n\u003ch2\u003e8.59.3 (2026-05-11)\u003c/h2\u003e\n\u003cp\u003eThis was a version bump only, there were no code changes.\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.3\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003ev8.59.2\u003c/h2\u003e\n\u003ch2\u003e8.59.2 (2026-05-04)\u003c/h2\u003e\n\u003ch3\u003e🩹 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unsafe-type-assertion] handle crash on recursive template literal types (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12150\"\u003e#12150\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-deprecated] object destructuring values should be treated as declarations (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12292\"\u003e#12292\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003erule-tester:\u003c/strong\u003e add TypeScript as a peer dependency (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12288\"\u003e#12288\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e❤️ Thank You\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eDariusz Czajkowski\u003c/li\u003e\n\u003cli\u003eDima Barabash\u003c/li\u003e\n\u003cli\u003eKirk Waiblinger \u003ca href=\"https://github.com/kirkwaiblinger\"\u003e\u003ccode\u003e@​kirkwaiblinger\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.2\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003ev8.59.1\u003c/h2\u003e\n\u003ch2\u003e8.59.1 (2026-04-27)\u003c/h2\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/CHANGELOG.md\"\u003e@​typescript-eslint/eslint-plugin's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e8.59.4 (2026-05-18)\u003c/h2\u003e\n\u003ch3\u003e🩹 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-floating-promises] stack overflow when using recursive types (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12294\"\u003e#12294\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e❤️ Thank You\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eEvyatar Daud \u003ca href=\"https://github.com/StyleShit\"\u003e\u003ccode\u003e@​StyleShit\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.4\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003e8.59.3 (2026-05-11)\u003c/h2\u003e\n\u003cp\u003eThis was a version bump only for eslint-plugin to align it with other projects, there were no code changes.\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.3\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003e8.59.2 (2026-05-04)\u003c/h2\u003e\n\u003ch3\u003e🩹 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-deprecated] object destructuring values should be treated as declarations (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12292\"\u003e#12292\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unsafe-type-assertion] handle crash on recursive template literal types (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12150\"\u003e#12150\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e❤️ Thank You\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eDima Barabash\u003c/li\u003e\n\u003cli\u003eKirk Waiblinger \u003ca href=\"https://github.com/kirkwaiblinger\"\u003e\u003ccode\u003e@​kirkwaiblinger\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.2\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003e8.59.1 (2026-04-27)\u003c/h2\u003e\n\u003ch3\u003e🩹 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-condition] treat void as nullish in no-unnecessary-condition (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12241\"\u003e#12241\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-type-arguments] handle instantiation expressions (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12220\"\u003e#12220\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-type-assertion] avoid false positive in logical assignment assertions (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12278\"\u003e#12278\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-type-assertion] preserve phantom type arguments in generic inference (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12269\"\u003e#12269\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-type-assertion] preserve index signatures in undefined unions (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12257\"\u003e#12257\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-type-assertion] fix crash \u0026quot;TypeError: checker.getTypeArguments is not a function\u0026quot; (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12246\"\u003e#12246\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e❤️ Thank You\u003c/h3\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/ca6ca1431b6d18235297a7e29feb5d98f012dff2\"\u003e\u003ccode\u003eca6ca14\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.59.4\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/4302433ae6bf93d4ddc35264ad1b951254758566\"\u003e\u003ccode\u003e4302433\u003c/code\u003e\u003c/a\u003e fix(eslint-plugin): [no-floating-promises] stack overflow when using recursiv...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/10b79f1ba8e98610a3af85152a1b3b406f91e633\"\u003e\u003ccode\u003e10b79f1\u003c/code\u003e\u003c/a\u003e chore(deps): update dependency eslint to v10.4.0 (\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin/issues/12339\"\u003e#12339\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/2a6765d9628dc776f8127c96f088bb807c0bcab2\"\u003e\u003ccode\u003e2a6765d\u003c/code\u003e\u003c/a\u003e chore: clenaup \u003ccode\u003egetAwaitedType\u003c/code\u003e from \u003ccode\u003etypescript.d.ts\u003c/code\u003e (\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin/issues/12302\"\u003e#12302\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/48e13c0261e3cb1bf4f4dfaa462cdb3a56ef7383\"\u003e\u003ccode\u003e48e13c0\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.59.3\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/e26dc8003ababf078aad4df17765ee4cea30644c\"\u003e\u003ccode\u003ee26dc80\u003c/code\u003e\u003c/a\u003e docs: update stale links to latest (\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin/issues/12313\"\u003e#12313\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/44f9625336841a8ee3eb01a9e02e49b1d7b12648\"\u003e\u003ccode\u003e44f9625\u003c/code\u003e\u003c/a\u003e chore(deps): update vitest monorepo to v4.1.5 (\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin/issues/12307\"\u003e#12307\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/2ec35f1760aade4df4c631d76d78c7ed5e136333\"\u003e\u003ccode\u003e2ec35f1\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.59.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/ec3ef25390f7daf5a9ff33a60282bdbbb49ab0f3\"\u003e\u003ccode\u003eec3ef25\u003c/code\u003e\u003c/a\u003e test: make no-useless-empty-export tests fully static (\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin/issues/12260\"\u003e#12260\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/60d0a513870d833617374ff8ea256d86ca3cbbbb\"\u003e\u003ccode\u003e60d0a51\u003c/code\u003e\u003c/a\u003e chore(eslint-plugin): switch auto-generated test cases to hand-written in no-...\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commits/v8.59.4/packages/eslint-plugin\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@typescript-eslint/parser` from 8.56.1 to 8.59.4\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases\"\u003e@​typescript-eslint/parser's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev8.59.4\u003c/h2\u003e\n\u003ch2\u003e8.59.4 (2026-05-18)\u003c/h2\u003e\n\u003ch3\u003e🩹 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-floating-promises] stack overflow when using recursive types (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12294\"\u003e#12294\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eproject-service:\u003c/strong\u003e throw error cause in \u003ccode\u003egetParsedConfigFileFromTSServer\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12321\"\u003e#12321\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003etypescript-eslint:\u003c/strong\u003e export Compatible* types from typescript-eslint to resolve pnpm TS error (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12340\"\u003e#12340\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e❤️ Thank You\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eEvyatar Daud \u003ca href=\"https://github.com/StyleShit\"\u003e\u003ccode\u003e@​StyleShit\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eKirk Waiblinger \u003ca href=\"https://github.com/kirkwaiblinger\"\u003e\u003ccode\u003e@​kirkwaiblinger\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003elumir\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.4\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003ev8.59.3\u003c/h2\u003e\n\u003ch2\u003e8.59.3 (2026-05-11)\u003c/h2\u003e\n\u003cp\u003eThis was a version bump only, there were no code changes.\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.3\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003ev8.59.2\u003c/h2\u003e\n\u003ch2\u003e8.59.2 (2026-05-04)\u003c/h2\u003e\n\u003ch3\u003e🩹 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unsafe-type-assertion] handle crash on recursive template literal types (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12150\"\u003e#12150\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-deprecated] object destructuring values should be treated as declarations (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12292\"\u003e#12292\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003erule-tester:\u003c/strong\u003e add TypeScript as a peer dependency (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12288\"\u003e#12288\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e❤️ Thank You\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eDariusz Czajkowski\u003c/li\u003e\n\u003cli\u003eDima Barabash\u003c/li\u003e\n\u003cli\u003eKirk Waiblinger \u003ca href=\"https://github.com/kirkwaiblinger\"\u003e\u003ccode\u003e@​kirkwaiblinger\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.2\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003ev8.59.1\u003c/h2\u003e\n\u003ch2\u003e8.59.1 (2026-04-27)\u003c/h2\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/parser/CHANGELOG.md\"\u003e@​typescript-eslint/parser's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e8.59.4 (2026-05-18)\u003c/h2\u003e\n\u003cp\u003eThis was a version bump only for parser to align it with other projects, there were no code changes.\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.4\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003e8.59.3 (2026-05-11)\u003c/h2\u003e\n\u003cp\u003eThis was a version bump only for parser to align it with other projects, there were no code changes.\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.3\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003e8.59.2 (2026-05-04)\u003c/h2\u003e\n\u003cp\u003eThis was a version bump only for parser to align it with other projects, there were no code changes.\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.2\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003e8.59.1 (2026-04-27)\u003c/h2\u003e\n\u003cp\u003eThis was a version bump only for parser to align it with other projects, there were no code changes.\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.1\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003e8.59.0 (2026-04-20)\u003c/h2\u003e\n\u003cp\u003eThis was a version bump only for parser to align it with other projects, there were no code changes.\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.0\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003e8.58.2 (2026-04-13)\u003c/h2\u003e\n\u003ch3\u003e🩹 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eremove tsbuildinfo cache file from published packages (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12187\"\u003e#12187\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e❤️ Thank You\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAbhijeet Singh \u003ca href=\"https://github.com/cseas\"\u003e\u003ccode\u003e@​cseas\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/ca6ca1431b6d18235297a7e29feb5d98f012dff2\"\u003e\u003ccode\u003eca6ca14\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.59.4\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/48e13c0261e3cb1bf4f4dfaa462cdb3a56ef7383\"\u003e\u003ccode\u003e48e13c0\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.59.3\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/44f9625336841a8ee3eb01a9e02e49b1d7b12648\"\u003e\u003ccode\u003e44f9625\u003c/code\u003e\u003c/a\u003e chore(deps): update vitest monorepo to v4.1.5 (\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/parser/issues/12307\"\u003e#12307\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/2ec35f1760aade4df4c631d76d78c7ed5e136333\"\u003e\u003ccode\u003e2ec35f1\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.59.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/52457932e5507b5ca01e720a541f3f8d01e09b9d\"\u003e\u003ccode\u003e5245793\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.59.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/ea9ae4f8817873480e3501145059f63e39e8d8a1\"\u003e\u003ccode\u003eea9ae4f\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.59.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/90c2803a4c250e0343598d41e973f95e743bf4ce\"\u003e\u003ccode\u003e90c2803\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.58.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/be6b49a02d68db9bdc8985e7e9e1598700fda2fa\"\u003e\u003ccode\u003ebe6b49a\u003c/code\u003e\u003c/a\u003e fix: remove tsbuildinfo cache file from published packages (\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/parser/issues/12187\"\u003e#12187\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/5311ed312eadf4e238324f2726ae0b1f3f2206e6\"\u003e\u003ccode\u003e5311ed3\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.58.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/493341709fe7d1d6433332b7bd2724e3332c7cdf\"\u003e\u003ccode\u003e4933417\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.58.0\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commits/v8.59.4/packages/parser\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `eslint` from 10.0.3 to 10.4.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/eslint/eslint/releases\"\u003eeslint's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev10.4.0\u003c/h2\u003e\n\u003ch2\u003eFeatures\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/1a45ec596af1dd5f880e6874cb8f24dafb6a7ecf\"\u003e\u003ccode\u003e1a45ec5\u003c/code\u003e\u003c/a\u003e feat: check sequence expressions in \u003ccode\u003efor-direction\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20701\"\u003e#20701\u003c/a\u003e) (kuldeep kumar)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/450040bd89b989b3531824c6be45feb5fe3d936b\"\u003e\u003ccode\u003e450040b\u003c/code\u003e\u003c/a\u003e feat: add \u003ccode\u003eincludeIgnoreFile()\u003c/code\u003e to \u003ccode\u003eeslint/config\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20735\"\u003e#20735\u003c/a\u003e) (Kirk Waiblinger)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eBug Fixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/544c0c3da589166ad8e5d634f35d3d06701c57be\"\u003e\u003ccode\u003e544c0c3\u003c/code\u003e\u003c/a\u003e fix: escape code path DOT labels in debug output (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20866\"\u003e#20866\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/6799431203f2579632d0870f98ba132067f4040c\"\u003e\u003ccode\u003e6799431\u003c/code\u003e\u003c/a\u003e fix: update dependency \u003ccode\u003e@​eslint/config-helpers\u003c/code\u003e to ^0.6.0 (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20850\"\u003e#20850\u003c/a\u003e) (renovate[bot])\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/f078fef5005dceb14fc162aab7c7200e027688dd\"\u003e\u003ccode\u003ef078fef\u003c/code\u003e\u003c/a\u003e fix: handle non-array deprecated rule replacements (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20825\"\u003e#20825\u003c/a\u003e) (xbinaryx)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eDocumentation\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/7e52a7151fb92eec0e0f67fe4e5ddbd1ccce796f\"\u003e\u003ccode\u003e7e52a71\u003c/code\u003e\u003c/a\u003e docs: add mention of \u003ccode\u003e@eslint-react/eslint-plugin\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20869\"\u003e#20869\u003c/a\u003e) (Pavel)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/db3468ba746407d7f286f18f7ea9db6df0e3bc08\"\u003e\u003ccode\u003edb3468b\u003c/code\u003e\u003c/a\u003e docs: tweak wording around ambiguous CJS-vs-ESM config (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20865\"\u003e#20865\u003c/a\u003e) (Kirk Waiblinger)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/90846643ec6e97d447ae0d831fabe6d17b0a998a\"\u003e\u003ccode\u003e9084664\u003c/code\u003e\u003c/a\u003e docs: Update README (GitHub Actions Bot)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/9cc73875046e3c4b8313644cbb1e99e26b36bd3f\"\u003e\u003ccode\u003e9cc7387\u003c/code\u003e\u003c/a\u003e docs: Update README (GitHub Actions Bot)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/3d7b5484407403817aa9071a394d336d8ea96eb5\"\u003e\u003ccode\u003e3d7b548\u003c/code\u003e\u003c/a\u003e docs: Update README (GitHub Actions Bot)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/191ec3c0a3f94ce0f110df761f0b2b8949011ccb\"\u003e\u003ccode\u003e191ec3c\u003c/code\u003e\u003c/a\u003e docs: Update README (GitHub Actions Bot)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eChores\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/6616856f28fa514a30f87b5539fc100d739a94bf\"\u003e\u003ccode\u003e6616856\u003c/code\u003e\u003c/a\u003e chore: upgrade knip to v6 (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20875\"\u003e#20875\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/d13b084a3ad02f926e9addaa35fc383759ea5554\"\u003e\u003ccode\u003ed13b084\u003c/code\u003e\u003c/a\u003e ci: ensure auto-created PRs run CI (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20860\"\u003e#20860\u003c/a\u003e) (lumir)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/e71c7af86dce9acc1d18cb12d2184309f6841594\"\u003e\u003ccode\u003ee71c7af\u003c/code\u003e\u003c/a\u003e ci: bump pnpm/action-setup from 6.0.5 to 6.0.7 (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20862\"\u003e#20862\u003c/a\u003e) (dependabot[bot])\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/d84393dea170f54191fd20c8268b52c81c0ccd99\"\u003e\u003ccode\u003ed84393d\u003c/code\u003e\u003c/a\u003e test: add unit tests for SuppressionsService.applySuppressions() (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20863\"\u003e#20863\u003c/a\u003e) (kuldeep kumar)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/24db8cb8e6f07fba667121777a15b1785486be94\"\u003e\u003ccode\u003e24db8cb\u003c/code\u003e\u003c/a\u003e test: add tests for SuppressionsService.save() (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20802\"\u003e#20802\u003c/a\u003e) (kuldeep kumar)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/2ef0549cac4a9537e4c3a26b9f3edd4c99476bf6\"\u003e\u003ccode\u003e2ef0549\u003c/code\u003e\u003c/a\u003e chore: update ecosystem plugins (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20857\"\u003e#20857\u003c/a\u003e) (github-actions[bot])\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/a4297918d264d229a06cd96051ef9b91c7b86732\"\u003e\u003ccode\u003ea429791\u003c/code\u003e\u003c/a\u003e ci: remove \u003ccode\u003eeslint-webpack-plugin\u003c/code\u003e types integration test (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20668\"\u003e#20668\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/9e37386aa7f2ce220b2ef74a6afbac5f6b3527c5\"\u003e\u003ccode\u003e9e37386\u003c/code\u003e\u003c/a\u003e chore: replace \u003ccode\u003erecast\u003c/code\u003e with range approach in code-sample-minimizer (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20682\"\u003e#20682\u003c/a\u003e) (Copilot)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/0dd1f9ffc9a07704d46e2a4c8d4ccc0d0908b0c0\"\u003e\u003ccode\u003e0dd1f9f\u003c/code\u003e\u003c/a\u003e test: disable warning for \u003ccode\u003evm.constants.USE_MAIN_CONTEXT_DEFAULT_LOADER\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20845\"\u003e#20845\u003c/a\u003e) (Francesco Trotta)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/9da3c7bc92d9579f8db19ecb56e718538d09db2b\"\u003e\u003ccode\u003e9da3c7b\u003c/code\u003e\u003c/a\u003e refactor: remove deprecated \u003ccode\u003emeta.language\u003c/code\u003e and migrate \u003ccode\u003emeta.dialects\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20716\"\u003e#20716\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/2099ed12a0a74c3d7f0808514362af2499b4fe2b\"\u003e\u003ccode\u003e2099ed1\u003c/code\u003e\u003c/a\u003e refactor: add \u003ccode\u003emeta.defaultOptions\u003c/code\u003e to more rules, enable linting (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20800\"\u003e#20800\u003c/a\u003e) (xbinaryx)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/f1dfbc9ca57196de7092e1888cc99427bd6fe06e\"\u003e\u003ccode\u003ef1dfbc9\u003c/code\u003e\u003c/a\u003e chore: update ecosystem plugins (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20836\"\u003e#20836\u003c/a\u003e) (github-actions[bot])\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/c75941390c14728806cd4baef4f6072f6de78318\"\u003e\u003ccode\u003ec759413\u003c/code\u003e\u003c/a\u003e ci: bump pnpm/action-setup from 6.0.3 to 6.0.5 (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20843\"\u003e#20843\u003c/a\u003e) (dependabot[bot])\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/5b817d6fdc9ae2c35b528dc662b2eca8f40f64aa\"\u003e\u003ccode\u003e5b817d6\u003c/code\u003e\u003c/a\u003e test: add unit tests for lib/shared/ast-utils (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20838\"\u003e#20838\u003c/a\u003e) (kuldeep kumar)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/1c13ae3934c198c494e5958fa3a68b33244ff06a\"\u003e\u003ccode\u003e1c13ae3\u003c/code\u003e\u003c/a\u003e test: add unit tests for lib/shared/severity (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20835\"\u003e#20835\u003c/a\u003e) (kuldeep kumar)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev10.3.0\u003c/h2\u003e\n\u003ch2\u003eFeatures\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/379571a975f2b24d88037b9de2e72ec61d004130\"\u003e\u003ccode\u003e379571a\u003c/code\u003e\u003c/a\u003e feat: add suggestions for no-unused-private-class-members (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20773\"\u003e#20773\u003c/a\u003e) (sethamus)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eBug Fixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/b6ae5cf07b9b51802367539cb24b245b61eaa37c\"\u003e\u003ccode\u003eb6ae5cf\u003c/code\u003e\u003c/a\u003e fix: handle unavailable require cache (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20812\"\u003e#20812\u003c/a\u003e) (Simon Podlipsky)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/6fb3685bcbe9a6f72fd7dfb9129686b6fb96b0bd\"\u003e\u003ccode\u003e6fb3685\u003c/code\u003e\u003c/a\u003e fix: rule suggestions cause continuation in class body (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20787\"\u003e#20787\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eDocumentation\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/32cc7ab4ec653ce89da92deb5c40a9f4fc707fe5\"\u003e\u003ccode\u003e32cc7ab\u003c/code\u003e\u003c/a\u003e docs: fix typos in docs and comments (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20809\"\u003e#20809\u003c/a\u003e) (Tanuj Kanti)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/7f479376a2fa463d823ab762db6bb37ce8d2ee8f\"\u003e\u003ccode\u003e7f47937\u003c/code\u003e\u003c/a\u003e docs: Update README (GitHub Actions Bot)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eChores\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/d32235ec19ceea211fa86452afa383ca05f5c2f9\"\u003e\u003ccode\u003ed32235e\u003c/code\u003e\u003c/a\u003e ci: use pnpm in \u003ccode\u003eeslint-flat-config-utils\u003c/code\u003e type integration test (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20826\"\u003e#20826\u003c/a\u003e) (Francesco Trotta)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/3ffb14ea517de750ed1181579ef844af342e4096\"\u003e\u003ccode\u003e3ffb14e\u003c/code\u003e\u003c/a\u003e chore: clean up typos in comments and JSDoc (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20821\"\u003e#20821\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/452c4010c07dc2e36fe6ec6a8c48298878e86887\"\u003e\u003ccode\u003e452c401\u003c/code\u003e\u003c/a\u003e 10.4.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/b6417e8b55c9525070d6e168b485ce6ff21688ed\"\u003e\u003ccode\u003eb6417e8\u003c/code\u003e\u003c/a\u003e Build: changelog update for 10.4.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/6616856f28fa514a30f87b5539fc100d739a94bf\"\u003e\u003ccode\u003e6616856\u003c/code\u003e\u003c/a\u003e chore: upgrade knip to v6 (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20875\"\u003e#20875\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/d13b084a3ad02f926e9addaa35fc383759ea5554\"\u003e\u003ccode\u003ed13b084\u003c/code\u003e\u003c/a\u003e ci: ensure auto-created PRs run CI (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20860\"\u003e#20860\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/7e52a7151fb92eec0e0f67fe4e5ddbd1ccce796f\"\u003e\u003ccode\u003e7e52a71\u003c/code\u003e\u003c/a\u003e docs: add mention of \u003ccode\u003e@eslint-react/eslint-plugin\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20869\"\u003e#20869\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/e71c7af86dce9acc1d18cb12d2184309f6841594\"\u003e\u003ccode\u003ee71c7af\u003c/code\u003e\u003c/a\u003e ci: bump pnpm/action-setup from 6.0.5 to 6.0.7 (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20862\"\u003e#20862\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/544c0c3da589166ad8e5d634f35d3d06701c57be\"\u003e\u003ccode\u003e544c0c3\u003c/code\u003e\u003c/a\u003e fix: escape code path DOT labels in debug output (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20866\"\u003e#20866\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/db3468ba746407d7f286f18f7ea9db6df0e3bc08\"\u003e\u003ccode\u003edb3468b\u003c/code\u003e\u003c/a\u003e docs: tweak wording around ambiguous CJS-vs-ESM config (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20865\"\u003e#20865\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/d84393dea170f54191fd20c8268b52c81c0ccd99\"\u003e\u003ccode\u003ed84393d\u003c/code\u003e\u003c/a\u003e test: add unit tests for SuppressionsService.applySuppressions() (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20863\"\u003e#20863\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/90846643ec6e97d447ae0d831fabe6d17b0a998a\"\u003e\u003ccode\u003e9084664\u003c/code\u003e\u003c/a\u003e docs: Update README\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/eslint/eslint/compare/v10.0.3...v10.4.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `eslint-plugin-react-hooks` from 7.0.1 to 7.1.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/facebook/react/releases\"\u003eeslint-plugin-react-hooks's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eeslint-plugin-react-hooks@7.1.1 (April 17, 2026)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eNote:\u003c/strong\u003e 7.1.0 accidentally removed the \u003ccode\u003ecomponent-hook-factories\u003c/code\u003e rule, causing errors for users who referenced it in their ESLint config. This is now fixed.\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdd deprecated no-op \u003ccode\u003ecomponent-hook-factories\u003c/code\u003e rule for backwards compatibility. (\u003ca href=\"https://github.com/mofeiZ\"\u003e\u003ccode\u003e@​mofeiZ\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/36307\"\u003e#36307\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eeslint-plugin-react-hooks@7.1.0 (April 16, 2026)\u003c/h2\u003e\n\u003cp\u003eThis release adds ESLint v10 support, improves performance by skipping compilation for non-React files, and includes compiler lint improvements including better \u003ccode\u003eset-state-in-effect\u003c/code\u003e detection, improved ref validation, and more helpful error reporting.\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdd ESLint v10 support. (\u003ca href=\"https://github.com/azat-io\"\u003e\u003ccode\u003e@​azat-io\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/35720\"\u003e#35720\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSkip compilation for non-React files to improve performance. (\u003ca href=\"https://github.com/josephsavona\"\u003e\u003ccode\u003e@​josephsavona\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/35589\"\u003e#35589\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix exhaustive deps bug with Flow type casting. (\u003ca href=\"https://github.com/jorge-cab\"\u003e\u003ccode\u003e@​jorge-cab\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/35691\"\u003e#35691\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix \u003ccode\u003euseEffectEvent\u003c/code\u003e checks in component syntax. (\u003ca href=\"https://github.com/jbrown215\"\u003e\u003ccode\u003e@​jbrown215\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/35041\"\u003e#35041\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eImproved \u003ccode\u003eset-state-in-effect\u003c/code\u003e validation with fewer false negatives. (\u003ca href=\"https://github.com/jorge-cab\"\u003e\u003ccode\u003e@​jorge-cab\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/35134\"\u003e#35134\u003c/a\u003e, \u003ca href=\"https://github.com/josephsavona\"\u003e\u003ccode\u003e@​josephsavona\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/35147\"\u003e#35147\u003c/a\u003e, \u003ca href=\"https://github.com/jackpope\"\u003e\u003ccode\u003e@​jackpope\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/35214\"\u003e#35214\u003c/a\u003e, \u003ca href=\"https://github.com/chesnokov-tony\"\u003e\u003ccode\u003e@​chesnokov-tony\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/35419\"\u003e#35419\u003c/a\u003e, \u003ca href=\"https://github.com/jsleitor\"\u003e\u003ccode\u003e@​jsleitor\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/36107\"\u003e#36107\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eImproved ref validation for non-mutating functions and event handler props. (\u003ca href=\"https://github.com/josephsavona\"\u003e\u003ccode\u003e@​josephsavona\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/35893\"\u003e#35893\u003c/a\u003e, \u003ca href=\"https://github.com/kolvian\"\u003e\u003ccode\u003e@​kolvian\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/35062\"\u003e#35062\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCompiler now reports all errors instead of stopping at the first. (\u003ca href=\"https://github.com/josephsavona\"\u003e\u003ccode\u003e@​josephsavona\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/35873\"\u003e#35873\u003c/a\u003e–\u003ca href=\"https://redirect.github.com/facebook/react/pull/35884\"\u003e#35884\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eImproved source locations and error display in compiler diagnostics. (\u003ca href=\"https://github.com/nathanmarks\"\u003e\u003ccode\u003e@​nathanmarks\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/35348\"\u003e#35348\u003c/a\u003e, \u003ca href=\"https://github.com/josephsavona\"\u003e\u003ccode\u003e@​josephsavona\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/34963\"\u003e#34963\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/facebook/react/blob/main/packages/eslint-plugin-react-hooks/CHANGELOG.md\"\u003eeslint-plugin-react-hooks's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e7.1.1\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eNote:\u003c/strong\u003e 7.1.0 accidentally removed the \u003ccode\u003ecomponent-hook-factories\u003c/code\u003e rule, causing errors for users who referenced it in their ESLint config. This is now fixed.\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdd deprecated no-op \u003ccode\u003ecomponent-hook-factories\u003c/code\u003e rule for backwards compatibility. (\u003ca href=\"https://github.com/mofeiZ\"\u003e\u003ccode\u003e@​mofeiZ\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/36307\"\u003e#36307\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e7.1.0\u003c/h2\u003e\n\u003cp\u003eThis release adds ESLint v10 support, improves performance by skipping compilation for non-React files, and includes compiler lint improvements including better \u003ccode\u003eset-state-in-effect\u003c/code\u003e detection, improved ref validation, and more helpful error reporting.\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdd ESLint v10 support. (\u003ca href=\"https://github.com/azat-io\"\u003e\u003ccode\u003e@​azat-io\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/35720\"\u003e#35720\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSkip compilation for non-React files to improve performance. (\u003ca href=\"https://github.com/josephsavona\"\u003e\u003ccode\u003e@​josephsavona\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/35589\"\u003e#35589\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix exhaustive deps bug with Flow type casting. (\u003ca href=\"https://github.com/jorge-cab\"\u003e\u003ccode\u003e@​jorge-cab\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/35691\"\u003e#35691\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix \u003ccode\u003euseEffectEvent\u003c/code\u003e checks in component syntax. (\u003ca href=\"https://github.com/jbrown215\"\u003e\u003ccode\u003e@​jbrown215\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/35041\"\u003e#35041\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eImproved \u003ccode\u003eset-state-in-effect\u003c/code\u003e validation with fewer false negatives. (\u003ca href=\"https://github.com/jorge-cab\"\u003e\u003ccode\u003e@​jorge-cab\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/35134\"\u003e#35134\u003c/a\u003e, \u003ca href=\"https://github.com/josephsavona\"\u003e\u003ccode\u003e@​josephsavona\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/35147\"\u003e#35147\u003c/a\u003e, \u003ca href=\"https://github.com/jackpope\"\u003e\u003ccode\u003e@​jackpope\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/35214\"\u003e#35214\u003c/a\u003e, \u003ca href=\"https://github.com/chesnokov-tony\"\u003e\u003ccode\u003e@​chesnokov-tony\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/35419\"\u003e#35419\u003c/a\u003e, \u003ca href=\"https://github.com/jsleitor\"\u003e\u003ccode\u003e@​jsleitor\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/36107\"\u003e#36107\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eImproved ref validation for non-mutating functions and event handler props. (\u003ca href=\"https://github.com/josephsavona\"\u003e\u003ccode\u003e@​josephsavona\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/35893\"\u003e#35893\u003c/a\u003e, \u003ca href=\"https://github.com/kolvian\"\u003e\u003ccode\u003e@​kolvian\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/35062\"\u003e#35062\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCompiler now reports all errors instead of stopping at the first. (\u003ca href=\"https://github.com/josephsavona\"\u003e\u003ccode\u003e@​josephsavona\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/35873\"\u003e#35873\u003c/a\u003e–\u003ca href=\"https://redirect.github.com/facebook/react/pull/35884\"\u003e#35884\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eImproved source locations and error display in compiler diagnostics. (\u003ca href=\"https://github.com/nathanmarks\"\u003e\u003ccode\u003e@​nathanmarks\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/35348\"\u003e#35348\u003c/a\u003e, \u003ca href=\"https://github.com/josephsavona\"\u003e\u003ccode\u003e@​josephsavona\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/34963\"\u003e#34963\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/facebook/react/commits/eslint-plugin-react-hooks@7.1.1/packages/eslint-plugin-react-hooks\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `globals` from 17.4.0 to 17.6.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/sindresorhus/globals/releases\"\u003eglobals's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev17.6.0\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eUpdate globals (2026-05-01) (\u003ca href=\"https://redirect.github.com/sindresorhus/globals/issues/343\"\u003e#343\u003c/a\u003e)  00a4dd9\u003c/li\u003e\n\u003c/ul\u003e\n\u003chr /\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/sindresorhus/globals/compare/v17.5.0...v17.6.0\"\u003ehttps://github.com/sindresorhus/globals/compare/v17.5.0...v17.6.0\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev17.5.0\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eUpdate globals (2026-04-12) (\u003ca href=\"https://redirect.github.com/sindresorhus/globals/issues/342\"\u003e#342\u003c/a\u003e)  5d84602\u003c/li\u003e\n\u003c/ul\u003e\n\u003chr /\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/sindresorhus/globals/compare/v17.4.0...v17.5.0\"\u003ehttps://github.com/sindresorhus/globals/compare/v17.4.0...v17.5.0\u003c/a\u003e\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sindresorhus/globals/commit/6b15870f1c08b60b5b57afe45a703d9ed0be39bc\"\u003e\u003ccode\u003e6b15870\u003c/code\u003e\u003c/a\u003e 17.6.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sindresorhus/globals/commit/00a4dd9821830a9b044798120e86b1bb1a54648d\"\u003e\u003ccode\u003e00a4dd9\u003c/code\u003e\u003c/a\u003e Update globals (2026-05-01) (\u003ca href=\"https://redirect.github.com/sindresorhus/globals/issues/343\"\u003e#343\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sindresorhus/globals/commit/b8170c8e1d648291b613c5b39a69652c796fa36c\"\u003e\u003ccode\u003eb8170c8\u003c/code\u003e\u003c/a\u003e 17.5.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sindresorhus/globals/commit/5d846029679832931f38ced6381cc95bcb9abd80\"\u003e\u003ccode\u003e5d84602\u003c/code\u003e\u003c/a\u003e Update globals (2026-04-12) (\u003ca href=\"https://redirect.github.com/sindresorhus/globals/issues/342\"\u003e#342\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sindresorhus/globals/commit/1b727e5f4cc39121b8e77b9f27574a8ca27391fc\"\u003e\u003ccode\u003e1b727e5\u003c/code\u003e\u003c/a\u003e Fix build script for ES globals (\u003ca href=\"https://redirect.github.com/sindresorhus/globals/issues/341\"\u003e#341\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/sindresorhus/globals/compare/v17.4.0...v17.6.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `graphql` from 16.13.1 to 16.14.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/graphql/graphql-js/releases\"\u003egraphql's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev16.14.0 (2026-05-03)\u003c/h2\u003e\n\u003ch4\u003eNew Feature 🚀\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/graphql/graphql-js/pull/4317\"\u003e#4317\u003c/a\u003e Allow configuration of the \u003ccode\u003eofType\u003c/code\u003e introspection depth (\u003ca href=\"https://github.com/Nols1000\"\u003e\u003ccode\u003e@​Nols1000\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/graphql/graphql-js/pull/4521\"\u003e#4521\u003c/a\u003e Add experimental support for directives on directive definitions (\u003ca href=\"https://github.com/BoD\"\u003e\u003ccode\u003e@​BoD\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch4\u003eBug Fix 🐞\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/graphql/graphql-js/pull/4652\"\u003e#4652\u003c/a\u003e Fix valueFromAST variable own-property checks\n(\u003ca href=\"https://github.com/abishekgiri\"\u003e\u003ccode\u003e@​abishekgiri\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch4\u003eDocs 📝\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/graphql/graphql-js/pull/4706\"\u003e#4706\u003c/a\u003e Fix mistake in GraphQLError guidance (\u003ca href=\"https://github.com/benjie\"\u003e\u003ccode\u003e@​benjie\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch4\u003eCommitters: 4\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003eAbishek Kumar Giri(\u003ca href=\"https://github.com/abishekgiri\"\u003e\u003ccode\u003e@​abishekgiri\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eBenjie(\u003ca href=\"https://github.com/benjie\"\u003e\u003ccode\u003e@​benjie\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eBenoit 'BoD' Lubek(\u003ca href=\"https://github.com/BoD\"\u003e\u003ccode\u003e@​BoD\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNils-Börge Margotti(\u003ca href=\"https://github.com/Nols1000\"\u003e\u003ccode\u003e@​Nols1000\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev16.13.2 (2026-03-24)\u003c/h2\u003e\n\u003ch4\u003eDocs 📝\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/graphql/graphql-js/pull/4611\"\u003e#4611\u003c/a\u003e add dev mode docs (\u003ca href=\"https://github.com/yaacovCR\"\u003e\u003ccode\u003e@​yaacovCR\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch4\u003ePolish 💅\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/graphql/graphql-js/pull/4631\"\u003e#4631\u003c/a\u003e Use \u003ccode\u003eObject.create(null)\u003c/code\u003e over \u003ccode\u003e{}\u003c/code\u003e to avoid prototype issues - v16 (\u003ca href=\"https://github.com/benjie\"\u003e\u003ccode\u003e@​benjie\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch4\u003eInternal 🏠\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/graphql/graphql-js/pull/4626\"\u003e#4626\u003c/a\u003e backport: internal: streamline release process (\u003ca href=\"https://redirect.github.com/graphql/graphql-js/issues/4615\"\u003e#4615\u003c/a\u003e) (\u003ca href=\"https://github.com/yaacovCR\"\u003e\u003ccode\u003e@​yaacovCR\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch4\u003eCommitters: 2\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003eBenjie(\u003ca href=\"https://github.com/benjie\"\u003e\u003ccode\u003e@​benjie\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eYaacov Rydzinski (\u003ca href=\"https://github.com/yaacovCR\"\u003e\u003ccode\u003e@​yaacovCR\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/graphql/graphql-js/commit/57b385b288150960acd09337adf2fc778abb32ab\"\u003e\u003ccode\u003e57b385b\u003c/code\u003e\u003c/a\u003e chore(release): v16.14.0 (\u003ca href=\"https://redirect.github.com/graphql/graphql-js/issues/4720\"\u003e#4720\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/graphql/graphql-js/commit/85700ed6382d57c76d47935adbee6943b29ffd75\"\u003e\u003ccode\u003e85700ed\u003c/code\u003e\u003c/a\u003e Fix mistake in GraphQLError guidance (\u003ca href=\"https://redirect.github.com/graphql/graphql-js/issues/4706\"\u003e#4706\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/graphql/graphql-js/commit/8eb6383ae7447514343457abb2063c40e5dc81bc\"\u003e\u003ccode\u003e8eb6383\u003c/code\u003e\u003c/a\u003e Allow configuration of the \u003ccode\u003eofType\u003c/code\u003e introspection depth (\u003ca href=\"https://redirect.github.com/graphql/graphql-js/issues/4317\"\u003e#4317\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/graphql/graphql-js/commit/ad9c519428ae9d95547af07f68c7559bda0d4053\"\u003e\u003ccode\u003ead9c519\u003c/code\u003e\u003c/a\u003e Add support for directives on directive definitions (\u003ca href=\"https://redirect.github.com/graphql/graphql-js/issues/4521\"\u003e#4521\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/graphql/graphql-js/commit/db2987cb63fffc372f413e780437ea022a649274\"\u003e\u003ccode\u003edb2987c\u003c/code\u003e\u003c/a\u003e fix(valueFromAST): restore variable own-property checks (\u003ca href=\"https://redirect.github.com/graphql/graphql-js/issues/4652\"\u003e#4652\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/graphql/graphql-js/commit/123e958de1362eef098c30e917b51981c484729e\"\u003e\u003ccode\u003e123e958\u003c/code\u003e\u003c/a\u003e chore(release): v16.13.2 (\u003ca href=\"https://redirect.github.com/graphql/graphql-js/issues/4632\"\u003e#4632\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/graphql/graphql-js/commit/13f130d229311cfaf3accff12d3b7134e8d43a8c\"\u003e\u003ccode\u003e13f130d\u003c/code\u003e\u003c/a\u003e Use \u003ccode\u003eObject.create(null)\u003c/code\u003e over \u003ccode\u003e{}\u003c/code\u003e to avoid prototype issues - v16 (\u003ca href=\"https://redirect.github.com/graphql/graphql-js/issues/4631\"\u003e#4631\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/graphql/graphql-js/commit/6ca59e128fe6cf26f1335fbd81d2f4a30bf9fce1\"\u003e\u003ccode\u003e6ca59e1\u003c/code\u003e\u003c/a\u003e backport: internal: streamline release process (\u003ca href=\"https://redirect.github.com/graphql/graphql-js/issues/4615\"\u003e#4615\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/graphql/graphql-js/issues/4626\"\u003e#4626\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/graphql/graphql-js/commit/df8c53f5157b9d8312160b1d5baf1f7029213097\"\u003e\u003ccode\u003edf8c53f\u003c/code\u003e\u003c/a\u003e docs: dev mode for v17 (\u003ca href=\"https://redirect.github.com/graphql/graphql-js/issues/4611\"\u003e#4611\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/graphql/graphql-js/compare/v16.13.1...v16.14.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `happy-dom` from 20.8.3 to 20.9.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/capricorn86/happy-dom/releases\"\u003ehappy-dom's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev20.9.0\u003c/h2\u003e\n\u003ch3\u003e:art: Features\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdds support for event listener properties on Window (e.g. \u003ccode\u003eWindow.onkeydown\u003c/code\u003e) - By \u003cstrong\u003e\u003ca href=\"https://github.com/capricorn86\"\u003e\u003ccode\u003e@​capricorn86\u003c/code\u003e\u003c/a\u003e\u003c/strong\u003e in task \u003ca href=\"https://redirect.github.com/capricorn86/happy-dom/issues/2131\"\u003e#2131\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev20.8.9\u003c/h2\u003e\n\u003ch3\u003e:construction_worker_man: Patch fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFixes issue where cookies from the current origin was being forwarded to the target origin in fetch requests - By \u003cstrong\u003e\u003ca href=\"https://github.com/capricorn86\"\u003e\u003ccode\u003e@​capricorn86\u003c/code\u003e\u003c/a\u003e\u003c/strong\u003e in task \u003ca href=\"https://redirect.github.com/capricorn86/happy-dom/issues/2117\"\u003e#2117\u003c/a\u003e\n\u003cul\u003e\n\u003cli\u003eA security advisory (\u003ca href=\"https://github.com/capricorn86/happy-dom/security/advisories/GHSA-w4gp-fjgq-3q4g\"\u003eGHSA-w4gp-fjgq-3q4g\u003c/a\u003e) was reported for this security vulnerability. Big thanks to \u003ca href=\"https://github.com/r74tech\"\u003e\u003ccode\u003e@​r74tech\u003c/code\u003e\u003c/a\u003e for reporting this!\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev20.8.8\u003c/h2\u003e\n\u003ch3\u003e:construction_worker_man: Patch fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFixes issue where export names can be interpolated as executable code in ESM - By \u003cstrong\u003e\u003ca href=\"https://github.com/capricorn86\"\u003e\u003ccode\u003e@​capricorn86\u003c/code\u003e\u003c/a\u003e\u003c/strong\u003e in task \u003ca href=\"https://redirect.github.com/capricorn86/happy-dom/issues/2113\"\u003e#2113\u003c/a\u003e\n\u003cul\u003e\n\u003cli\u003eA security advisory (\u003ca href=\"https://github.com/capricorn86/happy-dom/security/advisories/GHSA-6q6h-j7hj-3r64\"\u003eGHSA-6q6h-j7hj-3r64\u003c/a\u003e) has been reported that shows a security vulnerability where it may be possible to escape the VM context and get access to process level functionality in unsafe environments using CommonJS. Big thanks to \u003ca href=\"https://github.com/tndud042713\"\u003e\u003ccode\u003e@​tndud042713\u003c/code\u003e\u003c/a\u003e for reporting this!\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev20.8.7\u003c/h2\u003e\n\u003ch3\u003e:construction_worker_man: Patch fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eReplace implementing Node.js \u003ccode\u003eConsole\u003c/code\u003e with common \u003ccode\u003eIConsole\u003c/code\u003e interface to support latest version of Bun - By \u003cstrong\u003e\u003ca href=\"https://github.com/YevheniiKotyrlo\"\u003e\u003ccode\u003e@​YevheniiKotyrlo\u003c/code\u003e\u003c/a\u003e\u003c/strong\u003e in task \u003ca href=\"https://redirect.github.com/capricorn86/happy-dom/issues/1845\"\u003e#1845\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev20.8.6\u003c/h2\u003e\n\u003ch3\u003e:construction_worker_man: Patch fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eRequest.formData()\u003c/code\u003e should honor \u0026quot;Content-Type\u0026quot; header - By \u003cstrong\u003e\u003ca href=\"https://github.com/brianhelba\"\u003e\u003ccode\u003e@​brianhelba\u003c/code\u003e\u003c/a\u003e\u003c/strong\u003e in task \u003ca href=\"https://redirect.github.com/capricorn86/happy-dom/issues/2106\"\u003e#2106\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev20.8.5\u003c/h2\u003e\n\u003ch3\u003e:construction_worker_man: Patch fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFixes error thrown when modifying DOM structure in \u003ccode\u003econnectedCallback()\u003c/code\u003e - By \u003cstrong\u003e\u003ca href=\"https://github.com/capricorn86\"\u003e\u003ccode\u003e@​capricorn86\u003c/code\u003e\u003c/a\u003e\u003c/strong\u003e in task \u003ca href=\"https://redirect.github.com/capricorn86/happy-dom/issues/2110\"\u003e#2110\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev20.8.4\u003c/h2\u003e\n\u003ch3\u003e:construction_worker_man: Patch fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eReplace ConsoleConstructor import with indexed access type - By \u003cstrong\u003e\u003ca href=\"https://github.com/YevheniiKotyrlo\"\u003e\u003ccode\u003e@​YevheniiKotyrlo\u003c/code\u003e\u003c/a\u003e\u003c/strong\u003e in task \u003ca href=\"https://redirect.github.com/capricorn86/happy-dom/issues/1845\"\u003e#1845\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/capricorn86/happy-dom/commit/4090adefaf116143ebabf3226581c1261c09e877\"\u003e\u003ccode\u003e4090ade\u003c/code\u003e\u003c/a\u003e fix: \u003ca href=\"https://redirect.github.com/capricorn86/happy-dom/issues/0\"\u003e#0\u003c/a\u003e Fix github release workflow (\u003ca href=\"https://redirect.github.com/capricorn86/happy-dom/issues/2140\"\u003e#2140\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/capricorn86/happy-dom/commit/c7c2bb506377f2b38218486b166b89a9b0e5b174\"\u003e\u003ccode\u003ec7c2bb5\u003c/code\u003e\u003c/a\u003e fix: \u003ca href=\"https://redirect.github.com/capricorn86/happy-dom/issues/0\"\u003e#0\u003c/a\u003e Fix github release workflow (\u003ca href=\"https://redirect.github.com/capricorn86/happy-dom/issues/2139\"\u003e#2139\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/capricorn86/happy-dom/commit/d541143d69e6593422e32c7c3853213ee04af545\"\u003e\u003ccode\u003ed541143\u003c/code\u003e\u003c/a\u003e fix: \u003ca href=\"...\n\n_Description has been truncated_","html_url":"https://github.com/jetmobsol/serene/pull/12","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/jetmobsol%2Fserene/issues/12","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/12/packages"}},{"old_version":"5.1.3","new_version":"5.2.0","update_type":"minor","path":null,"pr_created_at":"2026-05-18T05:42:52.000Z","version_change":"5.1.3 → 5.2.0","issue":{"uuid":"4466565468","node_id":"PR_kwDOSVtFqM7chS2S","number":3,"state":"open","title":"deps(deps): bump the all-dependencies group across 1 directory with 66 updates","user":"dependabot[bot]","labels":[],"assignees":[],"locked":false,"comments_count":1,"pull_request":true,"closed_at":null,"author_association":null,"state_reason":null,"created_at":"2026-05-18T05:42:52.000Z","updated_at":"2026-05-18T05:42:53.000Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"deps(deps): bump","group_name":"all-dependencies","update_count":66,"packages":[{"name":"@eslint-react/eslint-plugin","old_version":"2.13.0","new_version":"5.8.1","repository_url":"https://github.com/Rel1cx/eslint-react"},{"name":"@eslint/js","old_version":"9.39.2","new_version":"10.0.1","repository_url":"https://github.com/eslint/eslint"},{"name":"@typescript-eslint/eslint-plugin","old_version":"8.56.0","new_version":"8.59.3","repository_url":"https://github.com/typescript-eslint/typescript-eslint"},{"name":"@typescript-eslint/parser","old_version":"8.56.0","new_version":"8.59.3","repository_url":"https://github.com/typescript-eslint/typescript-eslint"},{"name":"eslint","old_version":"9.39.2","new_version":"10.4.0","repository_url":"https://github.com/eslint/eslint"},{"name":"eslint-plugin-react-hooks","old_version":"7.0.1","new_version":"7.1.1","repository_url":"https://github.com/facebook/react"},{"name":"globals","old_version":"17.3.0","new_version":"17.6.0","repository_url":"https://github.com/sindresorhus/globals"},{"name":"graphql","old_version":"16.12.0","new_version":"16.14.0","repository_url":"https://github.com/graphql/graphql-js"},{"name":"happy-dom","old_version":"20.6.2","new_version":"20.9.0","repository_url":"https://github.com/capricorn86/happy-dom"},{"name":"jiti","old_version":"2.6.1","new_version":"2.7.0","repository_url":"https://github.com/unjs/jiti"},{"name":"lint-staged","old_version":"16.2.7","new_version":"17.0.5","repository_url":"https://github.com/lint-staged/lint-staged"},{"name":"mermaid","old_version":"11.12.3","new_version":"11.15.0","repository_url":"https://github.com/mermaid-js/mermaid"},{"name":"prettier","old_version":"3.8.1","new_version":"3.8.3","repository_url":"https://github.com/prettier/prettier"},{"name":"react","old_version":"19.2.4","new_version":"19.2.6","repository_url":"https://github.com/facebook/react"},{"name":"typescript","old_version":"5.9.3","new_version":"6.0.3","repository_url":"https://github.com/microsoft/TypeScript"},{"name":"typescript-eslint","old_version":"8.56.0","new_version":"8.59.3","repository_url":"https://github.com/typescript-eslint/typescript-eslint"},{"name":"typescript-language-server","old_version":"5.1.3","new_version":"5.2.0","repository_url":"https://github.com/typescript-language-server/typescript-language-server"},{"name":"vite","old_version":"7.3.1","new_version":"8.0.13","repository_url":"https://github.com/vitejs/vite"},{"name":"vitepress","old_version":"2.0.0-alpha.16","new_version":"2.0.0-alpha.17","repository_url":"https://github.com/vuejs/vitepress"},{"name":"vitepress-plugin-llms","old_version":"1.11.0","new_version":"1.12.2","repository_url":"https://github.com/okineadev/vitepress-plugin-llms"},{"name":"vitest","old_version":"4.0.18","new_version":"4.1.6","repository_url":"https://github.com/vitest-dev/vitest"},{"name":"wrangler","old_version":"4.66.0","new_version":"4.92.0","repository_url":"https://github.com/cloudflare/workers-sdk"},{"name":"@ai-sdk/openai","old_version":"3.0.29","new_version":"3.0.64","repository_url":"https://github.com/vercel/ai"},{"name":"@better-auth/passkey","old_version":"1.4.18","new_version":"1.6.11","repository_url":"https://github.com/better-auth/better-auth"},{"name":"@better-auth/stripe","old_version":"1.4.18","new_version":"1.6.11","repository_url":"https://github.com/better-auth/better-auth"},{"name":"@trpc/server","old_version":"11.10.0","new_version":"11.17.0","repository_url":"https://github.com/trpc/trpc"},{"name":"ai","old_version":"6.0.91","new_version":"6.0.184","repository_url":"https://github.com/vercel/ai"},{"name":"better-auth","old_version":"1.4.18","new_version":"1.6.11","repository_url":"https://github.com/better-auth/better-auth"},{"name":"drizzle-orm","old_version":"0.45.1","new_version":"0.45.2","repository_url":"https://github.com/drizzle-team/drizzle-orm"},{"name":"postgres","old_version":"3.4.8","new_version":"3.4.9","repository_url":"https://github.com/porsager/postgres"},{"name":"resend","old_version":"6.9.2","new_version":"6.12.3","repository_url":"https://github.com/resend/resend-node"},{"name":"stripe","old_version":"20.3.1","new_version":"22.1.1","repository_url":"https://github.com/stripe/stripe-node"},{"name":"@cloudflare/workers-types","old_version":"4.20260218.0","new_version":"4.20260518.1","repository_url":"https://github.com/cloudflare/workerd"},{"name":"@types/bun","old_version":"1.3.9","new_version":"1.3.14","repository_url":"https://github.com/DefinitelyTyped/DefinitelyTyped"},{"name":"hono","old_version":"4.11.10","new_version":"4.12.19","repository_url":"https://github.com/honojs/hono"},{"name":"@tanstack/react-query","old_version":"5.90.21","new_version":"5.100.10","repository_url":"https://github.com/TanStack/query"},{"name":"@tanstack/react-router","old_version":"1.161.1","new_version":"1.170.4","repository_url":"https://github.com/TanStack/router"},{"name":"@trpc/client","old_version":"11.10.0","new_version":"11.17.0","repository_url":"https://github.com/trpc/trpc"},{"name":"@trpc/tanstack-react-query","old_version":"11.10.0","new_version":"11.17.0","repository_url":"https://github.com/trpc/trpc"},{"name":"jotai","old_version":"2.17.1","new_version":"2.20.0","repository_url":"https://github.com/pmndrs/jotai"},{"name":"jotai-effect","old_version":"2.2.3","new_version":"2.3.1","repository_url":"https://github.com/jotaijs/jotai-effect"},{"name":"lucide-react","old_version":"0.574.0","new_version":"1.16.0","repository_url":"https://github.com/lucide-icons/lucide"},{"name":"react-dom","old_version":"19.2.4","new_version":"19.2.6","repository_url":"https://github.com/facebook/react"},{"name":"tailwind-merge","old_version":"3.4.1","new_version":"3.6.0","repository_url":"https://github.com/dcastil/tailwind-merge"},{"name":"@tailwindcss/postcss","old_version":"4.2.0","new_version":"4.3.0","repository_url":"https://github.com/tailwindlabs/tailwindcss"},{"name":"@tanstack/react-query-devtools","old_version":"5.91.3","new_version":"5.100.10","repository_url":"https://github.com/TanStack/query"},{"name":"@tanstack/react-router-devtools","old_version":"1.161.1","new_version":"1.167.0","repository_url":"https://github.com/TanStack/router"},{"name":"@tanstack/router-plugin","old_version":"1.161.1","new_version":"1.168.6","repository_url":"https://github.com/TanStack/router"},{"name":"@types/node","old_version":"25.2.3","new_version":"25.8.0","repository_url":"https://github.com/DefinitelyTyped/DefinitelyTyped"},{"name":"@vitejs/plugin-react","old_version":"5.1.4","new_version":"6.0.2","repository_url":"https://github.com/vitejs/vite-plugin-react"},{"name":"@vitejs/plugin-react-swc","old_version":"4.2.3","new_version":"4.3.1","repository_url":"https://github.com/vitejs/vite-plugin-react"},{"name":"autoprefixer","old_version":"10.4.24","new_version":"10.5.0","repository_url":"https://github.com/postcss/autoprefixer"},{"name":"globby","old_version":"16.1.1","new_version":"16.2.0","repository_url":"https://github.com/sindresorhus/globby"},{"name":"@react-email/components","old_version":"1.0.8","new_version":"1.0.12","repository_url":"https://github.com/resend/react-email"},{"name":"@react-email/render","old_version":"2.0.4","new_version":"2.0.8","repository_url":"https://github.com/resend/react-email"},{"name":"@react-email/preview-server","old_version":"5.2.8","new_version":"5.2.10","repository_url":"https://github.com/resend/react-email"},{"name":"react-email","old_version":"5.2.8","new_version":"6.1.4","repository_url":"https://github.com/resend/react-email"},{"name":"@astrojs/react","old_version":"4.4.2","new_version":"5.0.5","repository_url":"https://github.com/withastro/astro"},{"name":"astro","old_version":"5.17.2","new_version":"6.3.3","repository_url":"https://github.com/withastro/astro"},{"name":"dotenv","old_version":"17.3.1","new_version":"17.4.2","repository_url":"https://github.com/motdotla/dotenv"},{"name":"drizzle-kit","old_version":"0.31.9","new_version":"0.31.10","repository_url":"https://github.com/drizzle-team/drizzle-orm"},{"name":"@modelcontextprotocol/sdk","old_version":"1.26.0","new_version":"1.29.0","repository_url":"https://github.com/modelcontextprotocol/typescript-sdk"},{"name":"got","old_version":"14.6.6","new_version":"15.0.5","repository_url":"https://github.com/sindresorhus/got"}],"path":null,"ecosystem":"npm"},"body":"Bumps the all-dependencies group with 63 updates in the / directory:\n\n| Package | From | To |\n| --- | --- | --- |\n| [@eslint-react/eslint-plugin](https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin) | `2.13.0` | `5.8.1` |\n| [@eslint/js](https://github.com/eslint/eslint/tree/HEAD/packages/js) | `9.39.2` | `10.0.1` |\n| [@typescript-eslint/eslint-plugin](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin) | `8.56.0` | `8.59.3` |\n| [@typescript-eslint/parser](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/parser) | `8.56.0` | `8.59.3` |\n| [eslint](https://github.com/eslint/eslint) | `9.39.2` | `10.4.0` |\n| [eslint-plugin-react-hooks](https://github.com/facebook/react/tree/HEAD/packages/eslint-plugin-react-hooks) | `7.0.1` | `7.1.1` |\n| [globals](https://github.com/sindresorhus/globals) | `17.3.0` | `17.6.0` |\n| [graphql](https://github.com/graphql/graphql-js) | `16.12.0` | `16.14.0` |\n| [happy-dom](https://github.com/capricorn86/happy-dom) | `20.6.2` | `20.9.0` |\n| [jiti](https://github.com/unjs/jiti) | `2.6.1` | `2.7.0` |\n| [lint-staged](https://github.com/lint-staged/lint-staged) | `16.2.7` | `17.0.5` |\n| [mermaid](https://github.com/mermaid-js/mermaid) | `11.12.3` | `11.15.0` |\n| [prettier](https://github.com/prettier/prettier) | `3.8.1` | `3.8.3` |\n| [react](https://github.com/facebook/react/tree/HEAD/packages/react) | `19.2.4` | `19.2.6` |\n| [typescript](https://github.com/microsoft/TypeScript) | `5.9.3` | `6.0.3` |\n| [typescript-eslint](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/typescript-eslint) | `8.56.0` | `8.59.3` |\n| [typescript-language-server](https://github.com/typescript-language-server/typescript-language-server) | `5.1.3` | `5.2.0` |\n| [vite](https://github.com/vitejs/vite/tree/HEAD/packages/vite) | `7.3.1` | `8.0.13` |\n| [vitepress](https://github.com/vuejs/vitepress) | `2.0.0-alpha.16` | `2.0.0-alpha.17` |\n| [vitepress-plugin-llms](https://github.com/okineadev/vitepress-plugin-llms) | `1.11.0` | `1.12.2` |\n| [vitest](https://github.com/vitest-dev/vitest/tree/HEAD/packages/vitest) | `4.0.18` | `4.1.6` |\n| [wrangler](https://github.com/cloudflare/workers-sdk/tree/HEAD/packages/wrangler) | `4.66.0` | `4.92.0` |\n| [@ai-sdk/openai](https://github.com/vercel/ai/tree/HEAD/packages/openai) | `3.0.29` | `3.0.64` |\n| [@better-auth/passkey](https://github.com/better-auth/better-auth/tree/HEAD/packages/passkey) | `1.4.18` | `1.6.11` |\n| [@better-auth/stripe](https://github.com/better-auth/better-auth/tree/HEAD/packages/stripe) | `1.4.18` | `1.6.11` |\n| [@trpc/server](https://github.com/trpc/trpc/tree/HEAD/packages/server) | `11.10.0` | `11.17.0` |\n| [ai](https://github.com/vercel/ai/tree/HEAD/packages/ai) | `6.0.91` | `6.0.184` |\n| [better-auth](https://github.com/better-auth/better-auth/tree/HEAD/packages/better-auth) | `1.4.18` | `1.6.11` |\n| [drizzle-orm](https://github.com/drizzle-team/drizzle-orm) | `0.45.1` | `0.45.2` |\n| [postgres](https://github.com/porsager/postgres) | `3.4.8` | `3.4.9` |\n| [resend](https://github.com/resend/resend-node) | `6.9.2` | `6.12.3` |\n| [stripe](https://github.com/stripe/stripe-node) | `20.3.1` | `22.1.1` |\n| [@cloudflare/workers-types](https://github.com/cloudflare/workerd) | `4.20260218.0` | `4.20260518.1` |\n| [@types/bun](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/bun) | `1.3.9` | `1.3.14` |\n| [hono](https://github.com/honojs/hono) | `4.11.10` | `4.12.19` |\n| [@tanstack/react-query](https://github.com/TanStack/query/tree/HEAD/packages/react-query) | `5.90.21` | `5.100.10` |\n| [@tanstack/react-router](https://github.com/TanStack/router/tree/HEAD/packages/react-router) | `1.161.1` | `1.170.4` |\n| [@trpc/client](https://github.com/trpc/trpc/tree/HEAD/packages/client) | `11.10.0` | `11.17.0` |\n| [@trpc/tanstack-react-query](https://github.com/trpc/trpc/tree/HEAD/packages/tanstack-react-query) | `11.10.0` | `11.17.0` |\n| [jotai](https://github.com/pmndrs/jotai) | `2.17.1` | `2.20.0` |\n| [jotai-effect](https://github.com/jotaijs/jotai-effect) | `2.2.3` | `2.3.1` |\n| [lucide-react](https://github.com/lucide-icons/lucide/tree/HEAD/packages/lucide-react) | `0.574.0` | `1.16.0` |\n| [react-dom](https://github.com/facebook/react/tree/HEAD/packages/react-dom) | `19.2.4` | `19.2.6` |\n| [tailwind-merge](https://github.com/dcastil/tailwind-merge) | `3.4.1` | `3.6.0` |\n| [@tailwindcss/postcss](https://github.com/tailwindlabs/tailwindcss/tree/HEAD/packages/@tailwindcss-postcss) | `4.2.0` | `4.3.0` |\n| [@tanstack/react-query-devtools](https://github.com/TanStack/query/tree/HEAD/packages/react-query-devtools) | `5.91.3` | `5.100.10` |\n| [@tanstack/react-router-devtools](https://github.com/TanStack/router/tree/HEAD/packages/react-router-devtools) | `1.161.1` | `1.167.0` |\n| [@tanstack/router-plugin](https://github.com/TanStack/router/tree/HEAD/packages/router-plugin) | `1.161.1` | `1.168.6` |\n| [@types/node](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/node) | `25.2.3` | `25.8.0` |\n| [@vitejs/plugin-react](https://github.com/vitejs/vite-plugin-react/tree/HEAD/packages/plugin-react) | `5.1.4` | `6.0.2` |\n| [@vitejs/plugin-react-swc](https://github.com/vitejs/vite-plugin-react/tree/HEAD/packages/plugin-react-swc) | `4.2.3` | `4.3.1` |\n| [autoprefixer](https://github.com/postcss/autoprefixer) | `10.4.24` | `10.5.0` |\n| [globby](https://github.com/sindresorhus/globby) | `16.1.1` | `16.2.0` |\n| [@react-email/components](https://github.com/resend/react-email/tree/HEAD/packages/components) | `1.0.8` | `1.0.12` |\n| [@react-email/render](https://github.com/resend/react-email/tree/HEAD/packages/render) | `2.0.4` | `2.0.8` |\n| [@react-email/preview-server](https://github.com/resend/react-email/tree/HEAD/packages/preview-server) | `5.2.8` | `5.2.10` |\n| [react-email](https://github.com/resend/react-email/tree/HEAD/packages/react-email) | `5.2.8` | `6.1.4` |\n| [@astrojs/react](https://github.com/withastro/astro/tree/HEAD/packages/integrations/react) | `4.4.2` | `5.0.5` |\n| [astro](https://github.com/withastro/astro/tree/HEAD/packages/astro) | `5.17.2` | `6.3.3` |\n| [dotenv](https://github.com/motdotla/dotenv) | `17.3.1` | `17.4.2` |\n| [drizzle-kit](https://github.com/drizzle-team/drizzle-orm) | `0.31.9` | `0.31.10` |\n| [@modelcontextprotocol/sdk](https://github.com/modelcontextprotocol/typescript-sdk) | `1.26.0` | `1.29.0` |\n| [got](https://github.com/sindresorhus/got) | `14.6.6` | `15.0.5` |\n\n\nUpdates `@eslint-react/eslint-plugin` from 2.13.0 to 5.8.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/Rel1cx/eslint-react/releases\"\u003e@​eslint-react/eslint-plugin's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev5.8.1 (2026-05-18)\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003ch3\u003e📝 Documentation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eRestructured rule documentation across all plugins from the \u003ccode\u003eCommon Violations / Invalid / Valid\u003c/code\u003e format to the new \u003ccode\u003eExamples / scenario-based / Troubleshooting / Further Reading\u003c/code\u003e format (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1784\"\u003e#1784\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eUpdated README tagline and description, removed the Benchmark section, and fixed migration guide links (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1783\"\u003e#1783\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eUpdated website recipe docs, FAQ, and third-party plugins page (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1783\"\u003e#1783\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🏗️ Internal\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpdated \u003ccode\u003escripts/scaffold-rule.ts\u003c/code\u003e and the rule request issue template to match the new documentation structure (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1782\"\u003e#1782\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/Rel1cx/eslint-react/compare/v5.8.0...v5.8.1\"\u003ehttps://github.com/Rel1cx/eslint-react/compare/v5.8.0...v5.8.1\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev5.8.0 (2026-05-17)\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003ch3\u003e🪄 Improvements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003e\u003ccode\u003ereact-jsx/no-children-prop\u003c/code\u003e\u003c/strong\u003e, \u003cstrong\u003e\u003ccode\u003ereact-jsx/no-children-prop-with-children\u003c/code\u003e\u003c/strong\u003e: Added support for \u003ccode\u003ecreateElement\u003c/code\u003e calls in addition to JSX elements (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1780\"\u003e#1780\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e📝 Documentation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdded \u003ccode\u003eeslint-plugin-perfectionist\u003c/code\u003e to the third-party plugins documentation page (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1778\"\u003e#1778\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🏗️ Internal\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eBumped \u003ccode\u003eimport-integrity-lint\u003c/code\u003e to 1.0.1.\u003c/li\u003e\n\u003cli\u003eFixed multiple versions of \u003ccode\u003etypescript-eslint\u003c/code\u003e and \u003ccode\u003eimport-integrity-lint\u003c/code\u003e in the workspace (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1776\"\u003e#1776\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eIncreased pnpm \u003ccode\u003eminimumReleaseAge\u003c/code\u003e to 3 days and updated lockfile (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1779\"\u003e#1779\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eRemoved \u003ccode\u003e.repos\u003c/code\u003e directory references from config files (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1773\"\u003e#1773\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eRemoved obsolete maintenance scripts (\u003ccode\u003ecreate-spec-alignment-issues.sh\u003c/code\u003e, \u003ccode\u003emigrate-labels.sh\u003c/code\u003e) (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1777\"\u003e#1777\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eReplaced \u003ccode\u003eeslint-plugin-fast-import\u003c/code\u003e with \u003ccode\u003eimport-integrity-lint\u003c/code\u003e (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1774\"\u003e#1774\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eSimplified the publish CI workflow by skipping install scripts and removing the lint step (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1775\"\u003e#1775\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/Rel1cx/eslint-react/compare/v5.7.10...v5.8.0\"\u003ehttps://github.com/Rel1cx/eslint-react/compare/v5.7.10...v5.8.0\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev5.7.10 (2026-05-16)\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003ch3\u003e🐞 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003e\u003ccode\u003ereact-x/no-leaked-conditional-rendering\u003c/code\u003e\u003c/strong\u003e, \u003cstrong\u003e\u003ccode\u003ereact-x/set-state-in-effect\u003c/code\u003e\u003c/strong\u003e: Added cycle detection to prevent stack overflow in recursive function analysis (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1769\"\u003e#1769\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e📝 Documentation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdded \u003ccode\u003ethird-party-plugins.mdx\u003c/code\u003e documentation page.\u003c/li\u003e\n\u003cli\u003eAdded spec diff and compiler test fixtures for \u003ccode\u003ereact-x/globals\u003c/code\u003e rule.\u003c/li\u003e\n\u003cli\u003eUpdated ESLint Stylistic link to rules anchor.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/Rel1cx/eslint-react/blob/main/CHANGELOG.md\"\u003e@​eslint-react/eslint-plugin's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev5.8.1 (2026-05-18)\u003c/h2\u003e\n\u003ch3\u003e📝 Documentation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eRestructured rule documentation across all plugins (\u003ccode\u003eeslint-plugin-react-x\u003c/code\u003e, \u003ccode\u003eeslint-plugin-react-dom\u003c/code\u003e, \u003ccode\u003eeslint-plugin-react-jsx\u003c/code\u003e, \u003ccode\u003eeslint-plugin-react-web-api\u003c/code\u003e, \u003ccode\u003eeslint-plugin-react-naming-convention\u003c/code\u003e, \u003ccode\u003eeslint-plugin-react-debug\u003c/code\u003e, \u003ccode\u003eeslint-plugin-react-rsc\u003c/code\u003e) from the \u003ccode\u003eCommon Violations / Invalid / Valid\u003c/code\u003e format to the new \u003ccode\u003eExamples / scenario-based / Troubleshooting / Further Reading\u003c/code\u003e format (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1784\"\u003e#1784\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eUpdated README tagline and description, removed the Benchmark section, and fixed migration guide links (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1783\"\u003e#1783\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eUpdated website recipe docs, FAQ, and third-party plugins page (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1783\"\u003e#1783\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🏗️ Internal\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpdated \u003ccode\u003escripts/scaffold-rule.ts\u003c/code\u003e and the rule request issue template to match the new documentation structure (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1782\"\u003e#1782\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/Rel1cx/eslint-react/compare/v5.8.0...v5.8.1\"\u003ehttps://github.com/Rel1cx/eslint-react/compare/v5.8.0...v5.8.1\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev5.8.0 (2026-05-17)\u003c/h2\u003e\n\u003ch3\u003e🪄 Improvements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003e\u003ccode\u003ereact-jsx/no-children-prop\u003c/code\u003e\u003c/strong\u003e, \u003cstrong\u003e\u003ccode\u003ereact-jsx/no-children-prop-with-children\u003c/code\u003e\u003c/strong\u003e: Added support for \u003ccode\u003ecreateElement\u003c/code\u003e calls in addition to JSX elements (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1780\"\u003e#1780\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e📝 Documentation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdded \u003ccode\u003eeslint-plugin-perfectionist\u003c/code\u003e to the third-party plugins documentation page (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1778\"\u003e#1778\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🏗️ Internal\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eBumped \u003ccode\u003eimport-integrity-lint\u003c/code\u003e to 1.0.1.\u003c/li\u003e\n\u003cli\u003eFixed multiple versions of \u003ccode\u003etypescript-eslint\u003c/code\u003e and \u003ccode\u003eimport-integrity-lint\u003c/code\u003e in the workspace (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1776\"\u003e#1776\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eIncreased pnpm \u003ccode\u003eminimumReleaseAge\u003c/code\u003e to 3 days and updated lockfile (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1779\"\u003e#1779\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eRemoved \u003ccode\u003e.repos\u003c/code\u003e directory references from config files (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1773\"\u003e#1773\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eRemoved obsolete maintenance scripts (\u003ccode\u003ecreate-spec-alignment-issues.sh\u003c/code\u003e, \u003ccode\u003emigrate-labels.sh\u003c/code\u003e) (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1777\"\u003e#1777\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eReplaced \u003ccode\u003eeslint-plugin-fast-import\u003c/code\u003e with \u003ccode\u003eimport-integrity-lint\u003c/code\u003e (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1774\"\u003e#1774\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eSimplified the publish CI workflow by skipping install scripts and removing the lint step (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1775\"\u003e#1775\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/Rel1cx/eslint-react/compare/v5.7.10...v5.8.0\"\u003ehttps://github.com/Rel1cx/eslint-react/compare/v5.7.10...v5.8.0\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev5.7.10 (2026-05-16)\u003c/h2\u003e\n\u003ch3\u003e🐞 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003e\u003ccode\u003ereact-x/no-leaked-conditional-rendering\u003c/code\u003e\u003c/strong\u003e, \u003cstrong\u003e\u003ccode\u003ereact-x/set-state-in-effect\u003c/code\u003e\u003c/strong\u003e: Added cycle detection to prevent stack overflow in recursive function analysis (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1769\"\u003e#1769\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e📝 Documentation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdded \u003ccode\u003ethird-party-plugins.mdx\u003c/code\u003e documentation page.\u003c/li\u003e\n\u003cli\u003eAdded spec diff and compiler test fixtures for \u003ccode\u003ereact-x/globals\u003c/code\u003e rule.\u003c/li\u003e\n\u003cli\u003eUpdated ESLint Stylistic link to rules anchor.\u003c/li\u003e\n\u003cli\u003eUpdated community projects (added Obsidian Copilot).\u003c/li\u003e\n\u003cli\u003eAdded redirects and simplified removed docs page.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/94549a1e3496d2ef3dff60b6332f17656469b2f0\"\u003e\u003ccode\u003e94549a1\u003c/code\u003e\u003c/a\u003e release: 5.8.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/2821bb11803f5ef8c8021d3deed84183ce136a24\"\u003e\u003ccode\u003e2821bb1\u003c/code\u003e\u003c/a\u003e docs: restructure rule documentation to new Examples-based format (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1784\"\u003e#1784\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/4317c311d29c5d0c9aa8b48d335172f60b4d4487\"\u003e\u003ccode\u003e4317c31\u003c/code\u003e\u003c/a\u003e release: 5.8.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/e060debd13fc873a83ed9ac143d559bf5e0c3fac\"\u003e\u003ccode\u003ee060deb\u003c/code\u003e\u003c/a\u003e release: 5.7.10\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/752585a5125e2d53c7ced0df2e58fe8960d3cbd2\"\u003e\u003ccode\u003e752585a\u003c/code\u003e\u003c/a\u003e release: 5.7.10-beta.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/24a9443a01f832ba3b960a3f67fbf38a3de490ca\"\u003e\u003ccode\u003e24a9443\u003c/code\u003e\u003c/a\u003e release: 5.7.10-next.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/50d7dc0bcfc01cfc9bf9d5190db218fb9719a869\"\u003e\u003ccode\u003e50d7dc0\u003c/code\u003e\u003c/a\u003e release: 5.7.8\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/be9e7865cac798b3111840ced8c81d38ec660f4d\"\u003e\u003ccode\u003ebe9e786\u003c/code\u003e\u003c/a\u003e release: 5.7.8-beta.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/e14aabca9a1ed01e08fdd3dd55627cb05f9c1c1f\"\u003e\u003ccode\u003ee14aabc\u003c/code\u003e\u003c/a\u003e release: 5.7.8-next.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/7be40890022163dfa1b8a40b5a1ac25354d2e7db\"\u003e\u003ccode\u003e7be4089\u003c/code\u003e\u003c/a\u003e release: 5.7.7\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/Rel1cx/eslint-react/commits/v5.8.1/plugins/eslint-plugin\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@eslint/js` from 9.39.2 to 10.0.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/eslint/eslint/releases\"\u003e@​eslint/js's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev10.0.1\u003c/h2\u003e\n\u003ch2\u003eBug Fixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/c87d5bded54c5cf491eb04c24c9d09bbbd42c23e\"\u003e\u003ccode\u003ec87d5bd\u003c/code\u003e\u003c/a\u003e fix: update eslint (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20531\"\u003e#20531\u003c/a\u003e) (renovate[bot])\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/d84100115c14691691058f00779c94e74fca946a\"\u003e\u003ccode\u003ed841001\u003c/code\u003e\u003c/a\u003e fix: update \u003ccode\u003eminimatch\u003c/code\u003e to \u003ccode\u003e10.2.1\u003c/code\u003e to address security vulnerabilities (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20519\"\u003e#20519\u003c/a\u003e) (루밀LuMir)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/04c21475b3004904948f02049f2888b401d82c78\"\u003e\u003ccode\u003e04c2147\u003c/code\u003e\u003c/a\u003e fix: update error message for unused suppressions (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20496\"\u003e#20496\u003c/a\u003e) (fnx)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/38b089c1726feac0e31a31d47941bd99e29ce003\"\u003e\u003ccode\u003e38b089c\u003c/code\u003e\u003c/a\u003e fix: update dependency \u003ccode\u003e@​eslint/config-array\u003c/code\u003e to ^0.23.1 (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20484\"\u003e#20484\u003c/a\u003e) (renovate[bot])\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eDocumentation\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/5b3dbce50a1404a9f118afe810cefeee79388a2a\"\u003e\u003ccode\u003e5b3dbce\u003c/code\u003e\u003c/a\u003e docs: add AI acknowledgement section to templates (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20431\"\u003e#20431\u003c/a\u003e) (루밀LuMir)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/6f23076037d5879f20fb3be2ef094293b1e8d38c\"\u003e\u003ccode\u003e6f23076\u003c/code\u003e\u003c/a\u003e docs: toggle nav in no-JS mode (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20476\"\u003e#20476\u003c/a\u003e) (Tanuj Kanti)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/b69cfb32a16c5d5e9986390d484fae1d21e406f9\"\u003e\u003ccode\u003eb69cfb3\u003c/code\u003e\u003c/a\u003e docs: Update README (GitHub Actions Bot)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eChores\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/e5c281ffd038a3a7a3e5364db0b9378e0ad83020\"\u003e\u003ccode\u003ee5c281f\u003c/code\u003e\u003c/a\u003e chore: updates for v9.39.3 release (Jenkins)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/8c3832adb77cd993b4a24891900d5eeaaf093cdc\"\u003e\u003ccode\u003e8c3832a\u003c/code\u003e\u003c/a\u003e chore: update \u003ccode\u003e@​typescript-eslint/parser\u003c/code\u003e to ^8.56.0 (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20514\"\u003e#20514\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/8330d238ae6adb68bb6a1c9381e38cfedd990d94\"\u003e\u003ccode\u003e8330d23\u003c/code\u003e\u003c/a\u003e test: add tests for config-api (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20493\"\u003e#20493\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/37d6e91e88fa6a2ca6d8726679096acff21ba6cc\"\u003e\u003ccode\u003e37d6e91\u003c/code\u003e\u003c/a\u003e chore: remove eslint v10 prereleases from eslint-config-eslint deps (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20494\"\u003e#20494\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/da7cd0e79197ad16e17052eef99df141de6dbfb1\"\u003e\u003ccode\u003eda7cd0e\u003c/code\u003e\u003c/a\u003e refactor: cleanup error message templates (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20479\"\u003e#20479\u003c/a\u003e) (Francesco Trotta)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/84fb885d49ac810e79a9491276b4828b53d913e5\"\u003e\u003ccode\u003e84fb885\u003c/code\u003e\u003c/a\u003e chore: package.json update for \u003ccode\u003e@​eslint/js\u003c/code\u003e release (Jenkins)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/1f667344b57c4c09b548d94bcfac1f91b6e5c63d\"\u003e\u003ccode\u003e1f66734\u003c/code\u003e\u003c/a\u003e chore: add \u003ccode\u003eeslint\u003c/code\u003e to \u003ccode\u003epeerDependencies\u003c/code\u003e of \u003ccode\u003e@eslint/js\u003c/code\u003e (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20467\"\u003e#20467\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev10.0.0\u003c/h2\u003e\n\u003ch2\u003eBreaking Changes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/f9e54f43a5e497cdfa179338b431093245cb787b\"\u003e\u003ccode\u003ef9e54f4\u003c/code\u003e\u003c/a\u003e feat!: estimate rule-tester failure location (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20420\"\u003e#20420\u003c/a\u003e) (ST-DDT)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/a176319d8ade1a7d9b2d7fb8f038f55a2662325f\"\u003e\u003ccode\u003ea176319\u003c/code\u003e\u003c/a\u003e feat!: replace \u003ccode\u003echalk\u003c/code\u003e with \u003ccode\u003estyleText\u003c/code\u003e and add \u003ccode\u003ecolor\u003c/code\u003e to \u003ccode\u003eResultsMeta\u003c/code\u003e (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20227\"\u003e#20227\u003c/a\u003e) (루밀LuMir)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/c7046e6c1e03c4ca0eee4888a1f2eba4c6454f84\"\u003e\u003ccode\u003ec7046e6\u003c/code\u003e\u003c/a\u003e feat!: enable JSX reference tracking (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20152\"\u003e#20152\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/fa31a608901684fbcd9906d1907e66561d16e5aa\"\u003e\u003ccode\u003efa31a60\u003c/code\u003e\u003c/a\u003e feat!: add \u003ccode\u003ename\u003c/code\u003e to configs (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20015\"\u003e#20015\u003c/a\u003e) (Kirk Waiblinger)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/3383e7ec9028166cafc8ea7986c2f7498d0049f0\"\u003e\u003ccode\u003e3383e7e\u003c/code\u003e\u003c/a\u003e fix!: remove deprecated \u003ccode\u003eSourceCode\u003c/code\u003e methods (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20137\"\u003e#20137\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/501abd0e916a35554c58b7c0365537f1fa3880ce\"\u003e\u003ccode\u003e501abd0\u003c/code\u003e\u003c/a\u003e feat!: update dependency minimatch to v10 (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20246\"\u003e#20246\u003c/a\u003e) (renovate[bot])\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/ca4d3b40085de47561f89656a2207d09946ed45e\"\u003e\u003ccode\u003eca4d3b4\u003c/code\u003e\u003c/a\u003e fix!: stricter rule tester assertions for valid test cases (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20125\"\u003e#20125\u003c/a\u003e) (唯然)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/96512a66c86402fb0538cdcb6cd30b9073f6bf3b\"\u003e\u003ccode\u003e96512a6\u003c/code\u003e\u003c/a\u003e fix!: Remove deprecated rule context methods (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20086\"\u003e#20086\u003c/a\u003e) (Nicholas C. Zakas)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/c69fdacdb2e886b9d965568a397aa8220db3fe90\"\u003e\u003ccode\u003ec69fdac\u003c/code\u003e\u003c/a\u003e feat!: remove eslintrc support (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20037\"\u003e#20037\u003c/a\u003e) (Francesco Trotta)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/208b5cc34a8374ff81412b5bec2e0800eebfbd04\"\u003e\u003ccode\u003e208b5cc\u003c/code\u003e\u003c/a\u003e feat!: Use \u003ccode\u003eScopeManager#addGlobals()\u003c/code\u003e (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20132\"\u003e#20132\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/a2ee188ea7a38a0c6155f3d39e2b00e1d0f36e14\"\u003e\u003ccode\u003ea2ee188\u003c/code\u003e\u003c/a\u003e fix!: add \u003ccode\u003euniqueItems: true\u003c/code\u003e in \u003ccode\u003eno-invalid-regexp\u003c/code\u003e option (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20155\"\u003e#20155\u003c/a\u003e) (Tanuj Kanti)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/a89059dbf2832d417dd493ee81483227ec44e4ab\"\u003e\u003ccode\u003ea89059d\u003c/code\u003e\u003c/a\u003e feat!: Program range span entire source text (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20133\"\u003e#20133\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/39a6424373d915fa9de0d7b0caba9a4dc3da9b53\"\u003e\u003ccode\u003e39a6424\u003c/code\u003e\u003c/a\u003e fix!: assert 'text' is a string across all RuleFixer methods (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20082\"\u003e#20082\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/f28fbf846244e043c92b355b224d121b06140b44\"\u003e\u003ccode\u003ef28fbf8\u003c/code\u003e\u003c/a\u003e fix!: Deprecate \u003ccode\u003e\u0026quot;always\u0026quot;\u003c/code\u003e and \u003ccode\u003e\u0026quot;as-needed\u0026quot;\u003c/code\u003e options of the \u003ccode\u003eradix\u003c/code\u003e rule (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20223\"\u003e#20223\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/aa3fb2b233e929b37220be940575f42c280e0b98\"\u003e\u003ccode\u003eaa3fb2b\u003c/code\u003e\u003c/a\u003e fix!: tighten \u003ccode\u003efunc-names\u003c/code\u003e schema (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20119\"\u003e#20119\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/f6c0ed0311dcfee853367d5068c765d066e6b756\"\u003e\u003ccode\u003ef6c0ed0\u003c/code\u003e\u003c/a\u003e feat!: report \u003ccode\u003eeslint-env\u003c/code\u003e comments as errors (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20128\"\u003e#20128\u003c/a\u003e) (Francesco Trotta)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/4bf739fb533e59f7f0a66b65f7bc80be0f37d8db\"\u003e\u003ccode\u003e4bf739f\u003c/code\u003e\u003c/a\u003e fix!: remove deprecated \u003ccode\u003eLintMessage#nodeType\u003c/code\u003e and \u003ccode\u003eTestCaseError#type\u003c/code\u003e (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20096\"\u003e#20096\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/523c076866400670fb2192a3f55dbf7ad3469247\"\u003e\u003ccode\u003e523c076\u003c/code\u003e\u003c/a\u003e feat!: drop support for jiti \u0026lt; 2.2.0 (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20016\"\u003e#20016\u003c/a\u003e) (michael faith)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/454a292c95f34dad232411ddac06408e6383bb64\"\u003e\u003ccode\u003e454a292\u003c/code\u003e\u003c/a\u003e feat!: update \u003ccode\u003eeslint:recommended\u003c/code\u003e configuration (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20210\"\u003e#20210\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/4f880ee02992e1bf0e96ebaba679985e2d1295f1\"\u003e\u003ccode\u003e4f880ee\u003c/code\u003e\u003c/a\u003e feat!: remove \u003ccode\u003ev10_*\u003c/code\u003e and inactive \u003ccode\u003eunstable_*\u003c/code\u003e flags (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20225\"\u003e#20225\u003c/a\u003e) (sethamus)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/f18115c363a4ac7671a4c7f30ee13d57ebba330f\"\u003e\u003ccode\u003ef18115c\u003c/code\u003e\u003c/a\u003e feat!: \u003ccode\u003eno-shadow-restricted-names\u003c/code\u003e report \u003ccode\u003eglobalThis\u003c/code\u003e by default (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20027\"\u003e#20027\u003c/a\u003e) (sethamus)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/c6358c31fbd3937b92d89be2618ffdf5a774604e\"\u003e\u003ccode\u003ec6358c3\u003c/code\u003e\u003c/a\u003e feat!: Require Node.js \u003ccode\u003e^20.19.0 || ^22.13.0 || \u0026gt;=24\u003c/code\u003e (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20160\"\u003e#20160\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eFeatures\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/bff9091927811497dbf066b0e3b85ecb37d43822\"\u003e\u003ccode\u003ebff9091\u003c/code\u003e\u003c/a\u003e feat: handle \u003ccode\u003eArray.fromAsync\u003c/code\u003e in \u003ccode\u003earray-callback-return\u003c/code\u003e (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20457\"\u003e#20457\u003c/a\u003e) (Francesco Trotta)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/290c594bb50c439fb71bc75521ee5360daa8c222\"\u003e\u003ccode\u003e290c594\u003c/code\u003e\u003c/a\u003e feat: add \u003ccode\u003eself\u003c/code\u003e to \u003ccode\u003eno-implied-eval\u003c/code\u003e rule (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20468\"\u003e#20468\u003c/a\u003e) (sethamus)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/43677de07ebd6e14bfac40a46ad749ba783c45f2\"\u003e\u003ccode\u003e43677de\u003c/code\u003e\u003c/a\u003e feat: fix handling of function and class expression names in \u003ccode\u003eno-shadow\u003c/code\u003e (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20432\"\u003e#20432\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/84fb885d49ac810e79a9491276b4828b53d913e5\"\u003e\u003ccode\u003e84fb885\u003c/code\u003e\u003c/a\u003e chore: package.json update for \u003ccode\u003e@​eslint/js\u003c/code\u003e release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/1f667344b57c4c09b548d94bcfac1f91b6e5c63d\"\u003e\u003ccode\u003e1f66734\u003c/code\u003e\u003c/a\u003e chore: add \u003ccode\u003eeslint\u003c/code\u003e to \u003ccode\u003epeerDependencies\u003c/code\u003e of \u003ccode\u003e@eslint/js\u003c/code\u003e (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20467\"\u003e#20467\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/f3fbc2f60cbe2c718364feb8c3fc0452c0df3c56\"\u003e\u003ccode\u003ef3fbc2f\u003c/code\u003e\u003c/a\u003e chore: set \u003ccode\u003e@eslint/js\u003c/code\u003e version to 10.0.0 to skip releasing it (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20466\"\u003e#20466\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/b4b3127f8542c599ce2dea804b6582ebc40c993d\"\u003e\u003ccode\u003eb4b3127\u003c/code\u003e\u003c/a\u003e chore: package.json update for \u003ccode\u003e@​eslint/js\u003c/code\u003e release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/0b14059491d830a49b3577931f4f68fbcfce6be5\"\u003e\u003ccode\u003e0b14059\u003c/code\u003e\u003c/a\u003e chore: package.json update for \u003ccode\u003e@​eslint/js\u003c/code\u003e release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/fa31a608901684fbcd9906d1907e66561d16e5aa\"\u003e\u003ccode\u003efa31a60\u003c/code\u003e\u003c/a\u003e feat!: add \u003ccode\u003ename\u003c/code\u003e to configs (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20015\"\u003e#20015\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/1e2cad5f6fa47ed6ed89d2a29798dda926d50990\"\u003e\u003ccode\u003e1e2cad5\u003c/code\u003e\u003c/a\u003e chore: package.json update for \u003ccode\u003e@​eslint/js\u003c/code\u003e release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/454a292c95f34dad232411ddac06408e6383bb64\"\u003e\u003ccode\u003e454a292\u003c/code\u003e\u003c/a\u003e feat!: update \u003ccode\u003eeslint:recommended\u003c/code\u003e configuration (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20210\"\u003e#20210\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/c6358c31fbd3937b92d89be2618ffdf5a774604e\"\u003e\u003ccode\u003ec6358c3\u003c/code\u003e\u003c/a\u003e feat!: Require Node.js \u003ccode\u003e^20.19.0 || ^22.13.0 || \u0026gt;=24\u003c/code\u003e (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20160\"\u003e#20160\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/eslint/eslint/commits/v10.0.1/packages/js\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@typescript-eslint/eslint-plugin` from 8.56.0 to 8.59.3\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases\"\u003e@​typescript-eslint/eslint-plugin's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev8.59.3\u003c/h2\u003e\n\u003ch2\u003e8.59.3 (2026-05-11)\u003c/h2\u003e\n\u003cp\u003eThis was a version bump only, there were no code changes.\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.3\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003ev8.59.2\u003c/h2\u003e\n\u003ch2\u003e8.59.2 (2026-05-04)\u003c/h2\u003e\n\u003ch3\u003e🩹 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unsafe-type-assertion] handle crash on recursive template literal types (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12150\"\u003e#12150\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-deprecated] object destructuring values should be treated as declarations (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12292\"\u003e#12292\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003erule-tester:\u003c/strong\u003e add TypeScript as a peer dependency (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12288\"\u003e#12288\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e❤️ Thank You\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eDariusz Czajkowski\u003c/li\u003e\n\u003cli\u003eDima Barabash\u003c/li\u003e\n\u003cli\u003eKirk Waiblinger \u003ca href=\"https://github.com/kirkwaiblinger\"\u003e\u003ccode\u003e@​kirkwaiblinger\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.2\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003ev8.59.1\u003c/h2\u003e\n\u003ch2\u003e8.59.1 (2026-04-27)\u003c/h2\u003e\n\u003ch3\u003e🩹 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-type-assertion] fix crash \u0026quot;TypeError: checker.getTypeArguments is not a function\u0026quot; (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12246\"\u003e#12246\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-type-assertion] preserve index signatures in undefined unions (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12257\"\u003e#12257\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-type-assertion] preserve phantom type arguments in generic inference (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12269\"\u003e#12269\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-type-assertion] avoid false positive in logical assignment assertions (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12278\"\u003e#12278\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-type-arguments] handle instantiation expressions (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12220\"\u003e#12220\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-condition] treat void as nullish in no-unnecessary-condition (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12241\"\u003e#12241\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e❤️ Thank You\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eanasm266 \u003ca href=\"https://github.com/anasm266\"\u003e\u003ccode\u003e@​anasm266\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAnshika Jain \u003ca href=\"https://github.com/Anshikakalpana\"\u003e\u003ccode\u003e@​Anshikakalpana\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUlrich Stark\u003c/li\u003e\n\u003cli\u003eyugo innami \u003ca href=\"https://github.com/nami8824\"\u003e\u003ccode\u003e@​nami8824\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.1\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/CHANGELOG.md\"\u003e@​typescript-eslint/eslint-plugin's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e8.59.3 (2026-05-11)\u003c/h2\u003e\n\u003cp\u003eThis was a version bump only for eslint-plugin to align it with other projects, there were no code changes.\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.3\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003e8.59.2 (2026-05-04)\u003c/h2\u003e\n\u003ch3\u003e🩹 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-deprecated] object destructuring values should be treated as declarations (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12292\"\u003e#12292\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unsafe-type-assertion] handle crash on recursive template literal types (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12150\"\u003e#12150\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e❤️ Thank You\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eDima Barabash\u003c/li\u003e\n\u003cli\u003eKirk Waiblinger \u003ca href=\"https://github.com/kirkwaiblinger\"\u003e\u003ccode\u003e@​kirkwaiblinger\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.2\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003e8.59.1 (2026-04-27)\u003c/h2\u003e\n\u003ch3\u003e🩹 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-condition] treat void as nullish in no-unnecessary-condition (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12241\"\u003e#12241\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-type-arguments] handle instantiation expressions (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12220\"\u003e#12220\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-type-assertion] avoid false positive in logical assignment assertions (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12278\"\u003e#12278\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-type-assertion] preserve phantom type arguments in generic inference (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12269\"\u003e#12269\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-type-assertion] preserve index signatures in undefined unions (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12257\"\u003e#12257\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-type-assertion] fix crash \u0026quot;TypeError: checker.getTypeArguments is not a function\u0026quot; (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12246\"\u003e#12246\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e❤️ Thank You\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eanasm266 \u003ca href=\"https://github.com/anasm266\"\u003e\u003ccode\u003e@​anasm266\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAnshika Jain \u003ca href=\"https://github.com/Anshikakalpana\"\u003e\u003ccode\u003e@​Anshikakalpana\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUlrich Stark\u003c/li\u003e\n\u003cli\u003eyugo innami \u003ca href=\"https://github.com/nami8824\"\u003e\u003ccode\u003e@​nami8824\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.1\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003e8.59.0 (2026-04-20)\u003c/h2\u003e\n\u003ch3\u003e🚀 Features\u003c/h3\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/48e13c0261e3cb1bf4f4dfaa462cdb3a56ef7383\"\u003e\u003ccode\u003e48e13c0\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.59.3\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/e26dc8003ababf078aad4df17765ee4cea30644c\"\u003e\u003ccode\u003ee26dc80\u003c/code\u003e\u003c/a\u003e docs: update stale links to latest (\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin/issues/12313\"\u003e#12313\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/44f9625336841a8ee3eb01a9e02e49b1d7b12648\"\u003e\u003ccode\u003e44f9625\u003c/code\u003e\u003c/a\u003e chore(deps): update vitest monorepo to v4.1.5 (\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin/issues/12307\"\u003e#12307\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/2ec35f1760aade4df4c631d76d78c7ed5e136333\"\u003e\u003ccode\u003e2ec35f1\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.59.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/ec3ef25390f7daf5a9ff33a60282bdbbb49ab0f3\"\u003e\u003ccode\u003eec3ef25\u003c/code\u003e\u003c/a\u003e test: make no-useless-empty-export tests fully static (\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin/issues/12260\"\u003e#12260\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/60d0a513870d833617374ff8ea256d86ca3cbbbb\"\u003e\u003ccode\u003e60d0a51\u003c/code\u003e\u003c/a\u003e chore(eslint-plugin): switch auto-generated test cases to hand-written in no-...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/5c53da230a70aba7d6f3d6474b5d249b430a95d0\"\u003e\u003ccode\u003e5c53da2\u003c/code\u003e\u003c/a\u003e fix(eslint-plugin): [no-deprecated] object destructuring values should be tre...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/80c28a1ada3f975a932a02587cefee632ccf6550\"\u003e\u003ccode\u003e80c28a1\u003c/code\u003e\u003c/a\u003e fix(eslint-plugin): [no-unsafe-type-assertion] handle crash on recursive temp...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/b7b2670123f76419630f88f3a807f85b7c535230\"\u003e\u003ccode\u003eb7b2670\u003c/code\u003e\u003c/a\u003e test: make no-this-alias tests fully static (\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin/issues/12258\"\u003e#12258\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/52457932e5507b5ca01e720a541f3f8d01e09b9d\"\u003e\u003ccode\u003e5245793\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.59.1\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commits/v8.59.3/packages/eslint-plugin\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@typescript-eslint/parser` from 8.56.0 to 8.59.3\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases\"\u003e@​typescript-eslint/parser's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev8.59.3\u003c/h2\u003e\n\u003ch2\u003e8.59.3 (2026-05-11)\u003c/h2\u003e\n\u003cp\u003eThis was a version bump only, there were no code changes.\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.3\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003ev8.59.2\u003c/h2\u003e\n\u003ch2\u003e8.59.2 (2026-05-04)\u003c/h2\u003e\n\u003ch3\u003e🩹 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unsafe-type-assertion] handle crash on recursive template literal types (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12150\"\u003e#12150\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-deprecated] object destructuring values should be treated as declarations (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12292\"\u003e#12292\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003erule-tester:\u003c/strong\u003e add TypeScript as a peer dependency (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12288\"\u003e#12288\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e❤️ Thank You\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eDariusz Czajkowski\u003c/li\u003e\n\u003cli\u003eDima Barabash\u003c/li\u003e\n\u003cli\u003eKirk Waiblinger \u003ca href=\"https://github.com/kirkwaiblinger\"\u003e\u003ccode\u003e@​kirkwaiblinger\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.2\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003ev8.59.1\u003c/h2\u003e\n\u003ch2\u003e8.59.1 (2026-04-27)\u003c/h2\u003e\n\u003ch3\u003e🩹 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-type-assertion] fix crash \u0026quot;TypeError: checker.getTypeArguments is not a function\u0026quot; (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12246\"\u003e#12246\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-type-assertion] preserve index signatures in undefined unions (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12257\"\u003e#12257\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-type-assertion] preserve phantom type arguments in generic inference (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12269\"\u003e#12269\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-type-assertion] avoid false positive in logical assignment assertions (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12278\"\u003e#12278\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-type-arguments] handle instantiation expressions (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12220\"\u003e#12220\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-condition] treat void as nullish in no-unnecessary-condition (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12241\"\u003e#12241\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e❤️ Thank You\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eanasm266 \u003ca href=\"https://github.com/anasm266\"\u003e\u003ccode\u003e@​anasm266\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAnshika Jain \u003ca href=\"https://github.com/Anshikakalpana\"\u003e\u003ccode\u003e@​Anshikakalpana\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUlrich Stark\u003c/li\u003e\n\u003cli\u003eyugo innami \u003ca href=\"https://github.com/nami8824\"\u003e\u003ccode\u003e@​nami8824\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.1\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/parser/CHANGELOG.md\"\u003e@​typescript-eslint/parser's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e8.59.3 (2026-05-11)\u003c/h2\u003e\n\u003cp\u003eThis was a version bump only for parser to align it with other projects, there were no code changes.\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.3\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003e8.59.2 (2026-05-04)\u003c/h2\u003e\n\u003cp\u003eThis was a version bump only for parser to align it with other projects, there were no code changes.\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.2\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003e8.59.1 (2026-04-27)\u003c/h2\u003e\n\u003cp\u003eThis was a version bump only for parser to align it with other projects, there were no code changes.\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.1\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003e8.59.0 (2026-04-20)\u003c/h2\u003e\n\u003cp\u003eThis was a version bump only for parser to align it with other projects, there were no code changes.\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.0\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003e8.58.2 (2026-04-13)\u003c/h2\u003e\n\u003ch3\u003e🩹 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eremove tsbuildinfo cache file from published packages (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12187\"\u003e#12187\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e❤️ Thank You\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAbhijeet Singh \u003ca href=\"https://github.com/cseas\"\u003e\u003ccode\u003e@​cseas\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.58.2\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003e8.58.1 (2026-04-08)\u003c/h2\u003e\n\u003cp\u003eThis was a version bump only for parser to align it with other projects, there were no code changes.\u003c/p\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/48e13c0261e3cb1bf4f4dfaa462cdb3a56ef7383\"\u003e\u003ccode\u003e48e13c0\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.59.3\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/44f9625336841a8ee3eb01a9e02e49b1d7b12648\"\u003e\u003ccode\u003e44f9625\u003c/code\u003e\u003c/a\u003e chore(deps): update vitest monorepo to v4.1.5 (\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/parser/issues/12307\"\u003e#12307\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/2ec35f1760aade4df4c631d76d78c7ed5e136333\"\u003e\u003ccode\u003e2ec35f1\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.59.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/52457932e5507b5ca01e720a541f3f8d01e09b9d\"\u003e\u003ccode\u003e5245793\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.59.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/ea9ae4f8817873480e3501145059f63e39e8d8a1\"\u003e\u003ccode\u003eea9ae4f\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.59.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/90c2803a4c250e0343598d41e973f95e743bf4ce\"\u003e\u003ccode\u003e90c2803\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.58.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/be6b49a02d68db9bdc8985e7e9e1598700fda2fa\"\u003e\u003ccode\u003ebe6b49a\u003c/code\u003e\u003c/a\u003e fix: remove tsbuildinfo cache file from published packages (\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/parser/issues/12187\"\u003e#12187\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/5311ed312eadf4e238324f2726ae0b1f3f2206e6\"\u003e\u003ccode\u003e5311ed3\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.58.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/493341709fe7d1d6433332b7bd2724e3332c7cdf\"\u003e\u003ccode\u003e4933417\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.58.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/8cde2d06fb9bc591a4c93452509ddbd600c76a35\"\u003e\u003ccode\u003e8cde2d0\u003c/code\u003e\u003c/a\u003e feat: support TypeScript 6 (\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/parser/issues/12124\"\u003e#12124\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commits/v8.59.3/packages/parser\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `eslint` from 9.39.2 to 10.4.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/eslint/eslint/releases\"\u003eeslint's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev10.4.0\u003c/h2\u003e\n\u003ch2\u003eFeatures\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/1a45ec596af1dd5f880e6874cb8f24dafb6a7ecf\"\u003e\u003ccode\u003e1a45ec5\u003c/code\u003e\u003c/a\u003e feat: check sequence expressions in \u003ccode\u003efor-direction\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20701\"\u003e#20701\u003c/a\u003e) (kuldeep kumar)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/450040bd89b989b3531824c6be45feb5fe3d936b\"\u003e\u003ccode\u003e450040b\u003c/code\u003e\u003c/a\u003e feat: add \u003ccode\u003eincludeIgnoreFile()\u003c/code\u003e to \u003ccode\u003eeslint/config\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20735\"\u003e#20735\u003c/a\u003e) (Kirk Waiblinger)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eBug Fixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/544c0c3da589166ad8e5d634f35d3d06701c57be\"\u003e\u003ccode\u003e544c0c3\u003c/code\u003e\u003c/a\u003e fix: escape code path DOT labels in debug output (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20866\"\u003e#20866\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/6799431203f2579632d0870f98ba132067f4040c\"\u003e\u003ccode\u003e6799431\u003c/code\u003e\u003c/a\u003e fix: update dependency \u003ccode\u003e@​eslint/config-helpers\u003c/code\u003e to ^0.6.0 (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20850\"\u003e#20850\u003c/a\u003e) (renovate[bot])\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/f078fef5005dceb14fc162aab7c7200e027688dd\"\u003e\u003ccode\u003ef078fef\u003c/code\u003e\u003c/a\u003e fix: handle non-array deprecated rule replacements (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20825\"\u003e#20825\u003c/a\u003e) (xbinaryx)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eDocumentation\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/7e52a7151fb92eec0e0f67fe4e5ddbd1ccce796f\"\u003e\u003ccode\u003e7e52a71\u003c/code\u003e\u003c/a\u003e docs: add mention of \u003ccode\u003e@eslint-react/eslint-plugin\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20869\"\u003e#20869\u003c/a\u003e) (Pavel)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/db3468ba746407d7f286f18f7ea9db6df0e3bc08\"\u003e\u003ccode\u003edb3468b\u003c/code\u003e\u003c/a\u003e docs: tweak wording around ambiguous CJS-vs-ESM config (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20865\"\u003e#20865\u003c/a\u003e) (Kirk Waiblinger)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/90846643ec6e97d447ae0d831fabe6d17b0a998a\"\u003e\u003ccode\u003e9084664\u003c/code\u003e\u003c/a\u003e docs: Update README (GitHub Actions Bot)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/9cc73875046e3c4b8313644cbb1e99e26b36bd3f\"\u003e\u003ccode\u003e9cc7387\u003c/code\u003e\u003c/a\u003e docs: Update README (GitHub Actions Bot)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/3d7b5484407403817aa9071a394d336d8ea96eb5\"\u003e\u003ccode\u003e3d7b548\u003c/code\u003e\u003c/a\u003e docs: Update README (GitHub Actions Bot)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/191ec3c0a3f94ce0f110df761f0b2b8949011ccb\"\u003e\u003ccode\u003e191ec3c\u003c/code\u003e\u003c/a\u003e docs: Update README (GitHub Actions Bot)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eChores\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/6616856f28fa514a30f87b5539fc100d739a94bf\"\u003e\u003ccode\u003e6616856\u003c/code\u003e\u003c/a\u003e chore: upgrade knip to v6 (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20875\"\u003e#20875\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/d13b084a3ad02f926e9addaa35fc383759ea5554\"\u003e\u003ccode\u003ed13b084\u003c/code\u003e\u003c/a\u003e ci: ensure auto-created PRs run CI (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20860\"\u003e#20860\u003c/a\u003e) (lumir)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/e71c7af86dce9acc1d18cb12d2184309f6841594\"\u003e\u003ccode\u003ee71c7af\u003c/code\u003e\u003c/a\u003e ci: bump pnpm/action-setup from 6.0.5 to 6.0.7 (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20862\"\u003e#20862\u003c/a\u003e) (dependabot[bot])\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/d84393dea170f54191fd20c8268b52c81c0ccd99\"\u003e\u003ccode\u003ed84393d\u003c/code\u003e\u003c/a\u003e test: add unit tests for SuppressionsService.applySuppressions() (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20863\"\u003e#20863\u003c/a\u003e) (kuldeep kumar)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/24db8cb8e6f07fba667121777a15b1785486be94\"\u003e\u003ccode\u003e24db8cb\u003c/code\u003e\u003c/a\u003e test: add tests for SuppressionsService.save() (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20802\"\u003e#20802\u003c/a\u003e) (kuldeep kumar)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/2ef0549cac4a9537e4c3a26b9f3edd4c99476bf6\"\u003e\u003ccode\u003e2ef0549\u003c/code\u003e\u003c/a\u003e chore: update ecosystem plugins (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20857\"\u003e#20857\u003c/a\u003e) (github-actions[bot])\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/a4297918d264d229a06cd96051ef9b91c7b86732\"\u003e\u003ccode\u003ea429791\u003c/code\u003e\u003c/a\u003e ci: remove \u003ccode\u003eeslint-webpack-plugin\u003c/code\u003e types integration test (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20668\"\u003e#20668\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/9e37386aa7f2ce220b2ef74a6afbac5f6b3527c5\"\u003e\u003ccode\u003e9e37386\u003c/code\u003e\u003c/a\u003e chore: replace \u003ccode\u003erecast\u003c/code\u003e with range approach in code-sample-minimizer (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20682\"\u003e#20682\u003c/a\u003e) (Copilot)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/0dd1f9ffc9a07704d46e2a4c8d4ccc0d0908b0c0\"\u003e\u003ccode\u003e0dd1f9f\u003c/code\u003e\u003c/a\u003e test: disable warning for \u003ccode\u003evm.constants.USE_MAIN_CONTEXT_DEFAULT_LOADER\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20845\"\u003e#20845\u003c/a\u003e) (Francesco Trotta)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/9da3c7bc92d9579f8db19ecb56e718538d09db2b\"\u003e\u003ccode\u003e9da3c7b\u003c/code\u003e\u003c/a\u003e refactor: remove deprecated \u003ccode\u003emeta.language\u003c/code\u003e and migrate \u003ccode\u003emeta.dialects\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20716\"\u003e#20716\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/2099ed12a0a74c3d7f0808514362af2499b4fe2b\"\u003e\u003ccode\u003e2099ed1\u003c/code\u003e\u003c/a\u003e refactor: add \u003ccode\u003emeta.defaultOptions\u003c/code\u003e to more rules, enable linting (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20800\"\u003e#20800\u003c/a\u003e) (xbinaryx)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/f1dfbc9ca57196de7092e1888cc99427bd6fe06e\"\u003e\u003ccode\u003ef1dfbc9\u003c/code\u003e\u003c/a\u003e chore: update ecosystem plugins (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20836\"\u003e#20836\u003c/a\u003e) (github-actions[bot])\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/c75941390c14728806cd4baef4f6072f6de78318\"\u003e\u003ccode\u003ec759413\u003c/code\u003e\u003c/a\u003e ci: bump pnpm/action-setup from 6.0.3 to 6.0.5 (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20843\"\u003e#20843\u003c/a\u003e) (dependabot[bot])\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/5b817d6fdc9ae2c35b528dc662b2eca8f40f64aa\"\u003e\u003ccode\u003e5b817d6\u003c/code\u003e\u003c/a\u003e test: add unit tests for lib/shared/ast-utils (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20838\"\u003e#20838\u003c/a\u003e) (kuldeep kumar)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/1c13ae3934c198c494e5958fa3a68b33244ff06a\"\u003e\u003ccode\u003e1c13ae3\u003c/code\u003e\u003c/a\u003e test: add unit tests for lib/shared/severity (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20835\"\u003e#20835\u003c/a\u003e) (kuldeep kumar)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev10.3.0\u003c/h2\u003e\n\u003ch2\u003eFeatures\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/379571a975f2b24d88037b9de2e72ec61d004130\"\u003e\u003ccode\u003e379571a\u003c/code\u003e\u003c/a\u003e feat: add suggestions for no-unused-private-class-members (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20773\"\u003e#20773\u003c/a\u003e) (sethamus)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eBug Fixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/b6ae5cf07b9b51802367539cb24b245b61eaa37c\"\u003e\u003ccode\u003eb6ae5cf\u003c/code\u003e\u003c/a\u003e fix: handle unavailable require cache (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20812\"\u003e#20812\u003c/a\u003e) (Simon Podlipsky)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/6fb3685bcbe9a6f72fd7dfb9129686b6fb96b0bd\"\u003e\u003ccode\u003e6fb3685\u003c/code\u003e\u003c/a\u003e fix: rule suggestions cause continuation in class body (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20787\"\u003e#20787\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eDocumentation\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/32cc7ab4ec653ce89da92deb5c40a9f4fc707fe5\"\u003e\u003ccode\u003e32cc7ab\u003c/code\u003e\u003c/a\u003e docs: fix typos in docs and comments (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20809\"\u003e#20809\u003c/a\u003e) (Tanuj Kanti)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/7f479376a2fa463d823ab762db6bb37ce8d2ee8f\"\u003e\u003ccode\u003e7f47937\u003c/code\u003e\u003c/a\u003e docs: Update README (GitHub Actions Bot)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eChores\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/d32235ec19ceea211fa86452afa383ca05f5c2f9\"\u003e\u003ccode\u003ed32235e\u003c/code\u003e\u003c/a\u003e ci: use pnpm in \u003ccode\u003eeslint-flat-config-utils\u003c/code\u003e type integration test (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20826\"\u003e#20826\u003c/a\u003e) (Francesco Trotta)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/3ffb14ea517de750ed1181579ef844af342e4096\"\u003e\u003ccode\u003e3ffb14e\u003c/code\u003e\u003c/a\u003e chore: clean up typos in comments and JSDoc (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20821\"\u003e#20821\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/452c4010c07dc2e36fe6ec6a8c48298878e86887\"\u003e\u003ccode\u003e452c401\u003c/code\u003e\u003c/a\u003e 10.4.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/b6417e8b55c9525070d6e168b485ce6ff21688ed\"\u003e\u003ccode\u003eb6417e8\u003c/code\u003e\u003c/a\u003e Build: changelog update for 10.4.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/6616856f28fa514a30f87b5539fc100d739a94bf\"\u003e\u003ccode\u003e6616856\u003c/code\u003e\u003c/a\u003e chore: upgrade knip to v6 (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20875\"\u003e#20875\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/d13b084a3ad02f926e9addaa35fc383759ea5554\"\u003e\u003ccode\u003ed13b084\u003c/code\u003e\u003c/a\u003e ci: ensure auto-created PRs run CI (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20860\"\u003e#20860\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/7e52a7151fb92eec0e0f67fe4e5ddbd1ccce796f\"\u003e\u003ccode\u003e7e52a71\u003c/code\u003e\u003c/a\u003e docs: add mention of \u003ccode\u003e@eslint-react/eslint-plugin\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20869\"\u003e#20869\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/e71c7af86dce9acc1d18cb12d2184309f6841594\"\u003e\u003ccode\u003ee71c7af\u003c/code\u003e\u003c/a\u003e ci: bump pnpm/action-setup from 6.0.5 to 6.0.7 (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20862\"\u003e#20862\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/544c0c3da589166ad8e5d634f35d3d06701c57be\"\u003e\u003ccode\u003e544c0c3\u003c/code\u003e\u003c/a\u003e fix: escape code path DOT labels in debug output (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20866\"\u003e#20866\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/db3468ba746407d7f286f18f7ea9db6df0e3bc08\"\u003e\u003ccode\u003edb3468b\u003c/code\u003e\u003c/a\u003e docs: tweak wording around ambiguous CJS-vs-ESM config (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20865\"\u003e#20865\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/d84393dea170f54191fd20c8268b52c81c0ccd99\"\u003e\u003ccode\u003ed84393d\u003c/code\u003e\u003c/a\u003e test: add unit tests for SuppressionsService.applySuppressions() (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20863\"\u003e#20863\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/90846643ec6e97d447ae0d831fabe6d17b0a998a\"\u003e\u003ccode\u003e9084664\u003c/code\u003e\u003c/a\u003e docs: Update README\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/eslint/eslint/compare/v9.39.2...v10.4.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `eslint-plugin-react-hooks` from 7.0.1 to 7.1.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/facebook/react/releases\"\u003eeslint-plugin-react-hooks's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eeslint-plugin-react-hooks@7.1.1 (April 17, 2026)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eNote:\u003c/strong\u003e 7.1.0 accidentally removed the \u003ccode\u003ecomponent-hook-factories\u003c/code\u003e rule, causing errors for users who referenced it in their ESLint config. This is now fixed.\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdd deprecated no-op \u003ccode\u003ecomponent-hook-factories\u003c/code\u003e rule for backwards compatibility. (\u003ca href=\"https://github.com/mofeiZ\"\u003e\u003ccode\u003e@​mofeiZ\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/36307\"\u003e#36307\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eeslint-plugin-react-hooks@7.1.0 (April 16, 2026)\u003c/h2\u003e\n\u003cp\u003eThis release adds ESLint v10 support, improves performance by skipping compilation for non-React files, and includes compiler lint improvements including better \u003ccode\u003eset-state-in-effect\u003c/code\u003e detection, improved ref validation, and more helpful error reporting.\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdd ESLint v10 support. (\u003ca href=\"https://github.com/azat-io\"\u003e\u003ccode\u003e@​azat-io\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/35720\"\u003e#35720\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSkip compilation for non-React files to improve performance. (\u003ca href=\"https://github.com/josephsavona\"\u003e\u003ccode\u003e@​josephsavona\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/35589\"\u003e#35589\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix exhaustive deps bug with Flow type casting. (\u003ca href=\"https://github.com/jorge-cab\"\u003e\u003ccode\u003e@​jorge-cab\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/35691\"\u003e#35691\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix \u003ccode\u003euseEffectEvent\u003c/code\u003e checks in component syntax. (\u003ca href=\"https://github.com/jbrown215\"\u003e\u003ccode\u003e@​jbrown215\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/35041\"\u003e#35041\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eImproved \u003ccode\u003eset-state-in-effect\u003c/code\u003e validation with fewer false negatives. (\u003ca href=\"https://github.com/jorge-cab\"\u003e\u003ccode\u003e@​jorge-cab\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/35134\"\u003e#35134\u003c/a\u003e, \u003ca href=\"https://github.com/josephsavona\"\u003e\u003ccode\u003e@​josephsavona\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/35147\"\u003e#35147\u003c/a\u003e, \u003ca href=\"https://github.com/jackpope\"\u003e\u003ccode\u003e@​jackpope\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/35214\"\u003e#35214\u003c/a\u003e, \u003ca href=\"https://github.com/chesnokov-tony\"\u003e\u003ccode\u003e@​chesnokov-tony\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/35419\"\u003e#35419\u003c/a\u003e, \u003ca href=\"https://github.com/jsleitor\"\u003e\u003ccode\u003e@​jsleitor\u003c/code...\n\n_Description has been truncated_","html_url":"https://github.com/nabashi404/saas-test/pull/3","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/nabashi404%2Fsaas-test/issues/3","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/3/packages"}},{"old_version":"5.1.3","new_version":"5.2.0","update_type":"minor","path":null,"pr_created_at":"2026-05-18T05:35:46.000Z","version_change":"5.1.3 → 5.2.0","issue":{"uuid":"4466534852","node_id":"PR_kwDOSAvc287chMk6","number":6,"state":"closed","title":"deps(deps): bump the all-dependencies group across 1 directory with 65 updates","user":"dependabot[bot]","labels":[],"assignees":[],"locked":false,"comments_count":2,"pull_request":true,"closed_at":"2026-05-25T05:18:46.000Z","author_association":null,"state_reason":null,"created_at":"2026-05-18T05:35:46.000Z","updated_at":"2026-05-25T05:18:48.000Z","time_to_close":603780,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"deps(deps): bump","group_name":"all-dependencies","update_count":65,"packages":[{"name":"@eslint-react/eslint-plugin","old_version":"2.13.0","new_version":"5.8.1","repository_url":"https://github.com/Rel1cx/eslint-react"},{"name":"@eslint/js","old_version":"9.39.2","new_version":"10.0.1","repository_url":"https://github.com/eslint/eslint"},{"name":"@typescript-eslint/eslint-plugin","old_version":"8.56.0","new_version":"8.59.3","repository_url":"https://github.com/typescript-eslint/typescript-eslint"},{"name":"@typescript-eslint/parser","old_version":"8.56.0","new_version":"8.59.3","repository_url":"https://github.com/typescript-eslint/typescript-eslint"},{"name":"eslint","old_version":"9.39.2","new_version":"10.4.0","repository_url":"https://github.com/eslint/eslint"},{"name":"eslint-plugin-react-hooks","old_version":"7.0.1","new_version":"7.1.1","repository_url":"https://github.com/facebook/react"},{"name":"globals","old_version":"17.3.0","new_version":"17.6.0","repository_url":"https://github.com/sindresorhus/globals"},{"name":"graphql","old_version":"16.12.0","new_version":"16.14.0","repository_url":"https://github.com/graphql/graphql-js"},{"name":"happy-dom","old_version":"20.6.2","new_version":"20.9.0","repository_url":"https://github.com/capricorn86/happy-dom"},{"name":"jiti","old_version":"2.6.1","new_version":"2.7.0","repository_url":"https://github.com/unjs/jiti"},{"name":"lint-staged","old_version":"16.2.7","new_version":"17.0.5","repository_url":"https://github.com/lint-staged/lint-staged"},{"name":"mermaid","old_version":"11.12.3","new_version":"11.15.0","repository_url":"https://github.com/mermaid-js/mermaid"},{"name":"prettier","old_version":"3.8.1","new_version":"3.8.3","repository_url":"https://github.com/prettier/prettier"},{"name":"react","old_version":"19.2.4","new_version":"19.2.6","repository_url":"https://github.com/facebook/react"},{"name":"typescript","old_version":"5.9.3","new_version":"6.0.3","repository_url":"https://github.com/microsoft/TypeScript"},{"name":"typescript-eslint","old_version":"8.56.0","new_version":"8.59.3","repository_url":"https://github.com/typescript-eslint/typescript-eslint"},{"name":"typescript-language-server","old_version":"5.1.3","new_version":"5.2.0","repository_url":"https://github.com/typescript-language-server/typescript-language-server"},{"name":"vite","old_version":"7.3.1","new_version":"8.0.13","repository_url":"https://github.com/vitejs/vite"},{"name":"vitepress","old_version":"2.0.0-alpha.16","new_version":"2.0.0-alpha.17","repository_url":"https://github.com/vuejs/vitepress"},{"name":"vitepress-plugin-llms","old_version":"1.11.0","new_version":"1.12.2","repository_url":"https://github.com/okineadev/vitepress-plugin-llms"},{"name":"vitest","old_version":"4.0.18","new_version":"4.1.6","repository_url":"https://github.com/vitest-dev/vitest"},{"name":"wrangler","old_version":"4.66.0","new_version":"4.92.0","repository_url":"https://github.com/cloudflare/workers-sdk"},{"name":"@ai-sdk/openai","old_version":"3.0.29","new_version":"3.0.64","repository_url":"https://github.com/vercel/ai"},{"name":"@better-auth/passkey","old_version":"1.4.18","new_version":"1.6.11","repository_url":"https://github.com/better-auth/better-auth"},{"name":"@better-auth/stripe","old_version":"1.4.18","new_version":"1.6.11","repository_url":"https://github.com/better-auth/better-auth"},{"name":"@trpc/server","old_version":"11.10.0","new_version":"11.17.0","repository_url":"https://github.com/trpc/trpc"},{"name":"ai","old_version":"6.0.91","new_version":"6.0.184","repository_url":"https://github.com/vercel/ai"},{"name":"better-auth","old_version":"1.4.18","new_version":"1.6.11","repository_url":"https://github.com/better-auth/better-auth"},{"name":"drizzle-orm","old_version":"0.45.1","new_version":"0.45.2","repository_url":"https://github.com/drizzle-team/drizzle-orm"},{"name":"resend","old_version":"6.9.2","new_version":"6.12.3","repository_url":"https://github.com/resend/resend-node"},{"name":"stripe","old_version":"20.3.1","new_version":"22.1.1","repository_url":"https://github.com/stripe/stripe-node"},{"name":"@cloudflare/workers-types","old_version":"4.20260218.0","new_version":"4.20260518.1","repository_url":"https://github.com/cloudflare/workerd"},{"name":"@types/bun","old_version":"1.3.9","new_version":"1.3.14","repository_url":"https://github.com/DefinitelyTyped/DefinitelyTyped"},{"name":"hono","old_version":"4.11.10","new_version":"4.12.19","repository_url":"https://github.com/honojs/hono"},{"name":"@tanstack/react-query","old_version":"5.90.21","new_version":"5.100.10","repository_url":"https://github.com/TanStack/query"},{"name":"@tanstack/react-router","old_version":"1.161.1","new_version":"1.170.4","repository_url":"https://github.com/TanStack/router"},{"name":"@trpc/client","old_version":"11.10.0","new_version":"11.17.0","repository_url":"https://github.com/trpc/trpc"},{"name":"@trpc/tanstack-react-query","old_version":"11.10.0","new_version":"11.17.0","repository_url":"https://github.com/trpc/trpc"},{"name":"jotai","old_version":"2.17.1","new_version":"2.20.0","repository_url":"https://github.com/pmndrs/jotai"},{"name":"jotai-effect","old_version":"2.2.3","new_version":"2.3.1","repository_url":"https://github.com/jotaijs/jotai-effect"},{"name":"lucide-react","old_version":"0.574.0","new_version":"1.16.0","repository_url":"https://github.com/lucide-icons/lucide"},{"name":"react-dom","old_version":"19.2.4","new_version":"19.2.6","repository_url":"https://github.com/facebook/react"},{"name":"tailwind-merge","old_version":"3.4.1","new_version":"3.6.0","repository_url":"https://github.com/dcastil/tailwind-merge"},{"name":"@tailwindcss/postcss","old_version":"4.2.0","new_version":"4.3.0","repository_url":"https://github.com/tailwindlabs/tailwindcss"},{"name":"@tanstack/react-query-devtools","old_version":"5.91.3","new_version":"5.100.10","repository_url":"https://github.com/TanStack/query"},{"name":"@tanstack/react-router-devtools","old_version":"1.161.1","new_version":"1.167.0","repository_url":"https://github.com/TanStack/router"},{"name":"@tanstack/router-plugin","old_version":"1.161.1","new_version":"1.168.6","repository_url":"https://github.com/TanStack/router"},{"name":"@types/node","old_version":"25.2.3","new_version":"25.8.0","repository_url":"https://github.com/DefinitelyTyped/DefinitelyTyped"},{"name":"@vitejs/plugin-react","old_version":"5.1.4","new_version":"6.0.2","repository_url":"https://github.com/vitejs/vite-plugin-react"},{"name":"@vitejs/plugin-react-swc","old_version":"4.2.3","new_version":"4.3.1","repository_url":"https://github.com/vitejs/vite-plugin-react"},{"name":"autoprefixer","old_version":"10.4.24","new_version":"10.5.0","repository_url":"https://github.com/postcss/autoprefixer"},{"name":"globby","old_version":"16.1.1","new_version":"16.2.0","repository_url":"https://github.com/sindresorhus/globby"},{"name":"@react-email/components","old_version":"1.0.8","new_version":"1.0.12","repository_url":"https://github.com/resend/react-email"},{"name":"@react-email/render","old_version":"2.0.4","new_version":"2.0.8","repository_url":"https://github.com/resend/react-email"},{"name":"@react-email/preview-server","old_version":"5.2.8","new_version":"5.2.10","repository_url":"https://github.com/resend/react-email"},{"name":"react-email","old_version":"5.2.8","new_version":"6.1.4","repository_url":"https://github.com/resend/react-email"},{"name":"@astrojs/react","old_version":"4.4.2","new_version":"5.0.5","repository_url":"https://github.com/withastro/astro"},{"name":"astro","old_version":"5.17.2","new_version":"6.3.3","repository_url":"https://github.com/withastro/astro"},{"name":"dotenv","old_version":"17.3.1","new_version":"17.4.2","repository_url":"https://github.com/motdotla/dotenv"},{"name":"drizzle-kit","old_version":"0.31.9","new_version":"0.31.10","repository_url":"https://github.com/drizzle-team/drizzle-orm"},{"name":"@modelcontextprotocol/sdk","old_version":"1.26.0","new_version":"1.29.0","repository_url":"https://github.com/modelcontextprotocol/typescript-sdk"},{"name":"got","old_version":"14.6.6","new_version":"15.0.5","repository_url":"https://github.com/sindresorhus/got"}],"path":null,"ecosystem":"npm"},"body":"Bumps the all-dependencies group with 62 updates in the / directory:\n\n| Package | From | To |\n| --- | --- | --- |\n| [@eslint-react/eslint-plugin](https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin) | `2.13.0` | `5.8.1` |\n| [@eslint/js](https://github.com/eslint/eslint/tree/HEAD/packages/js) | `9.39.2` | `10.0.1` |\n| [@typescript-eslint/eslint-plugin](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin) | `8.56.0` | `8.59.3` |\n| [@typescript-eslint/parser](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/parser) | `8.56.0` | `8.59.3` |\n| [eslint](https://github.com/eslint/eslint) | `9.39.2` | `10.4.0` |\n| [eslint-plugin-react-hooks](https://github.com/facebook/react/tree/HEAD/packages/eslint-plugin-react-hooks) | `7.0.1` | `7.1.1` |\n| [globals](https://github.com/sindresorhus/globals) | `17.3.0` | `17.6.0` |\n| [graphql](https://github.com/graphql/graphql-js) | `16.12.0` | `16.14.0` |\n| [happy-dom](https://github.com/capricorn86/happy-dom) | `20.6.2` | `20.9.0` |\n| [jiti](https://github.com/unjs/jiti) | `2.6.1` | `2.7.0` |\n| [lint-staged](https://github.com/lint-staged/lint-staged) | `16.2.7` | `17.0.5` |\n| [mermaid](https://github.com/mermaid-js/mermaid) | `11.12.3` | `11.15.0` |\n| [prettier](https://github.com/prettier/prettier) | `3.8.1` | `3.8.3` |\n| [react](https://github.com/facebook/react/tree/HEAD/packages/react) | `19.2.4` | `19.2.6` |\n| [typescript](https://github.com/microsoft/TypeScript) | `5.9.3` | `6.0.3` |\n| [typescript-eslint](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/typescript-eslint) | `8.56.0` | `8.59.3` |\n| [typescript-language-server](https://github.com/typescript-language-server/typescript-language-server) | `5.1.3` | `5.2.0` |\n| [vite](https://github.com/vitejs/vite/tree/HEAD/packages/vite) | `7.3.1` | `8.0.13` |\n| [vitepress](https://github.com/vuejs/vitepress) | `2.0.0-alpha.16` | `2.0.0-alpha.17` |\n| [vitepress-plugin-llms](https://github.com/okineadev/vitepress-plugin-llms) | `1.11.0` | `1.12.2` |\n| [vitest](https://github.com/vitest-dev/vitest/tree/HEAD/packages/vitest) | `4.0.18` | `4.1.6` |\n| [wrangler](https://github.com/cloudflare/workers-sdk/tree/HEAD/packages/wrangler) | `4.66.0` | `4.92.0` |\n| [@ai-sdk/openai](https://github.com/vercel/ai/tree/HEAD/packages/openai) | `3.0.29` | `3.0.64` |\n| [@better-auth/passkey](https://github.com/better-auth/better-auth/tree/HEAD/packages/passkey) | `1.4.18` | `1.6.11` |\n| [@better-auth/stripe](https://github.com/better-auth/better-auth/tree/HEAD/packages/stripe) | `1.4.18` | `1.6.11` |\n| [@trpc/server](https://github.com/trpc/trpc/tree/HEAD/packages/server) | `11.10.0` | `11.17.0` |\n| [ai](https://github.com/vercel/ai/tree/HEAD/packages/ai) | `6.0.91` | `6.0.184` |\n| [better-auth](https://github.com/better-auth/better-auth/tree/HEAD/packages/better-auth) | `1.4.18` | `1.6.11` |\n| [drizzle-orm](https://github.com/drizzle-team/drizzle-orm) | `0.45.1` | `0.45.2` |\n| [resend](https://github.com/resend/resend-node) | `6.9.2` | `6.12.3` |\n| [stripe](https://github.com/stripe/stripe-node) | `20.3.1` | `22.1.1` |\n| [@cloudflare/workers-types](https://github.com/cloudflare/workerd) | `4.20260218.0` | `4.20260518.1` |\n| [@types/bun](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/bun) | `1.3.9` | `1.3.14` |\n| [hono](https://github.com/honojs/hono) | `4.11.10` | `4.12.19` |\n| [@tanstack/react-query](https://github.com/TanStack/query/tree/HEAD/packages/react-query) | `5.90.21` | `5.100.10` |\n| [@tanstack/react-router](https://github.com/TanStack/router/tree/HEAD/packages/react-router) | `1.161.1` | `1.170.4` |\n| [@trpc/client](https://github.com/trpc/trpc/tree/HEAD/packages/client) | `11.10.0` | `11.17.0` |\n| [@trpc/tanstack-react-query](https://github.com/trpc/trpc/tree/HEAD/packages/tanstack-react-query) | `11.10.0` | `11.17.0` |\n| [jotai](https://github.com/pmndrs/jotai) | `2.17.1` | `2.20.0` |\n| [jotai-effect](https://github.com/jotaijs/jotai-effect) | `2.2.3` | `2.3.1` |\n| [lucide-react](https://github.com/lucide-icons/lucide/tree/HEAD/packages/lucide-react) | `0.574.0` | `1.16.0` |\n| [react-dom](https://github.com/facebook/react/tree/HEAD/packages/react-dom) | `19.2.4` | `19.2.6` |\n| [tailwind-merge](https://github.com/dcastil/tailwind-merge) | `3.4.1` | `3.6.0` |\n| [@tailwindcss/postcss](https://github.com/tailwindlabs/tailwindcss/tree/HEAD/packages/@tailwindcss-postcss) | `4.2.0` | `4.3.0` |\n| [@tanstack/react-query-devtools](https://github.com/TanStack/query/tree/HEAD/packages/react-query-devtools) | `5.91.3` | `5.100.10` |\n| [@tanstack/react-router-devtools](https://github.com/TanStack/router/tree/HEAD/packages/react-router-devtools) | `1.161.1` | `1.167.0` |\n| [@tanstack/router-plugin](https://github.com/TanStack/router/tree/HEAD/packages/router-plugin) | `1.161.1` | `1.168.6` |\n| [@types/node](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/node) | `25.2.3` | `25.8.0` |\n| [@vitejs/plugin-react](https://github.com/vitejs/vite-plugin-react/tree/HEAD/packages/plugin-react) | `5.1.4` | `6.0.2` |\n| [@vitejs/plugin-react-swc](https://github.com/vitejs/vite-plugin-react/tree/HEAD/packages/plugin-react-swc) | `4.2.3` | `4.3.1` |\n| [autoprefixer](https://github.com/postcss/autoprefixer) | `10.4.24` | `10.5.0` |\n| [globby](https://github.com/sindresorhus/globby) | `16.1.1` | `16.2.0` |\n| [@react-email/components](https://github.com/resend/react-email/tree/HEAD/packages/components) | `1.0.8` | `1.0.12` |\n| [@react-email/render](https://github.com/resend/react-email/tree/HEAD/packages/render) | `2.0.4` | `2.0.8` |\n| [@react-email/preview-server](https://github.com/resend/react-email/tree/HEAD/packages/preview-server) | `5.2.8` | `5.2.10` |\n| [react-email](https://github.com/resend/react-email/tree/HEAD/packages/react-email) | `5.2.8` | `6.1.4` |\n| [@astrojs/react](https://github.com/withastro/astro/tree/HEAD/packages/integrations/react) | `4.4.2` | `5.0.5` |\n| [astro](https://github.com/withastro/astro/tree/HEAD/packages/astro) | `5.17.2` | `6.3.3` |\n| [dotenv](https://github.com/motdotla/dotenv) | `17.3.1` | `17.4.2` |\n| [drizzle-kit](https://github.com/drizzle-team/drizzle-orm) | `0.31.9` | `0.31.10` |\n| [@modelcontextprotocol/sdk](https://github.com/modelcontextprotocol/typescript-sdk) | `1.26.0` | `1.29.0` |\n| [got](https://github.com/sindresorhus/got) | `14.6.6` | `15.0.5` |\n\n\nUpdates `@eslint-react/eslint-plugin` from 2.13.0 to 5.8.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/Rel1cx/eslint-react/releases\"\u003e@​eslint-react/eslint-plugin's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev5.8.1 (2026-05-18)\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003ch3\u003e📝 Documentation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eRestructured rule documentation across all plugins from the \u003ccode\u003eCommon Violations / Invalid / Valid\u003c/code\u003e format to the new \u003ccode\u003eExamples / scenario-based / Troubleshooting / Further Reading\u003c/code\u003e format (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1784\"\u003e#1784\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eUpdated README tagline and description, removed the Benchmark section, and fixed migration guide links (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1783\"\u003e#1783\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eUpdated website recipe docs, FAQ, and third-party plugins page (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1783\"\u003e#1783\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🏗️ Internal\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpdated \u003ccode\u003escripts/scaffold-rule.ts\u003c/code\u003e and the rule request issue template to match the new documentation structure (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1782\"\u003e#1782\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/Rel1cx/eslint-react/compare/v5.8.0...v5.8.1\"\u003ehttps://github.com/Rel1cx/eslint-react/compare/v5.8.0...v5.8.1\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev5.8.0 (2026-05-17)\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003ch3\u003e🪄 Improvements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003e\u003ccode\u003ereact-jsx/no-children-prop\u003c/code\u003e\u003c/strong\u003e, \u003cstrong\u003e\u003ccode\u003ereact-jsx/no-children-prop-with-children\u003c/code\u003e\u003c/strong\u003e: Added support for \u003ccode\u003ecreateElement\u003c/code\u003e calls in addition to JSX elements (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1780\"\u003e#1780\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e📝 Documentation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdded \u003ccode\u003eeslint-plugin-perfectionist\u003c/code\u003e to the third-party plugins documentation page (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1778\"\u003e#1778\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🏗️ Internal\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eBumped \u003ccode\u003eimport-integrity-lint\u003c/code\u003e to 1.0.1.\u003c/li\u003e\n\u003cli\u003eFixed multiple versions of \u003ccode\u003etypescript-eslint\u003c/code\u003e and \u003ccode\u003eimport-integrity-lint\u003c/code\u003e in the workspace (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1776\"\u003e#1776\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eIncreased pnpm \u003ccode\u003eminimumReleaseAge\u003c/code\u003e to 3 days and updated lockfile (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1779\"\u003e#1779\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eRemoved \u003ccode\u003e.repos\u003c/code\u003e directory references from config files (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1773\"\u003e#1773\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eRemoved obsolete maintenance scripts (\u003ccode\u003ecreate-spec-alignment-issues.sh\u003c/code\u003e, \u003ccode\u003emigrate-labels.sh\u003c/code\u003e) (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1777\"\u003e#1777\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eReplaced \u003ccode\u003eeslint-plugin-fast-import\u003c/code\u003e with \u003ccode\u003eimport-integrity-lint\u003c/code\u003e (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1774\"\u003e#1774\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eSimplified the publish CI workflow by skipping install scripts and removing the lint step (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1775\"\u003e#1775\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/Rel1cx/eslint-react/compare/v5.7.10...v5.8.0\"\u003ehttps://github.com/Rel1cx/eslint-react/compare/v5.7.10...v5.8.0\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev5.7.10 (2026-05-16)\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003ch3\u003e🐞 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003e\u003ccode\u003ereact-x/no-leaked-conditional-rendering\u003c/code\u003e\u003c/strong\u003e, \u003cstrong\u003e\u003ccode\u003ereact-x/set-state-in-effect\u003c/code\u003e\u003c/strong\u003e: Added cycle detection to prevent stack overflow in recursive function analysis (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1769\"\u003e#1769\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e📝 Documentation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdded \u003ccode\u003ethird-party-plugins.mdx\u003c/code\u003e documentation page.\u003c/li\u003e\n\u003cli\u003eAdded spec diff and compiler test fixtures for \u003ccode\u003ereact-x/globals\u003c/code\u003e rule.\u003c/li\u003e\n\u003cli\u003eUpdated ESLint Stylistic link to rules anchor.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/Rel1cx/eslint-react/blob/main/CHANGELOG.md\"\u003e@​eslint-react/eslint-plugin's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev5.8.1 (2026-05-18)\u003c/h2\u003e\n\u003ch3\u003e📝 Documentation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eRestructured rule documentation across all plugins (\u003ccode\u003eeslint-plugin-react-x\u003c/code\u003e, \u003ccode\u003eeslint-plugin-react-dom\u003c/code\u003e, \u003ccode\u003eeslint-plugin-react-jsx\u003c/code\u003e, \u003ccode\u003eeslint-plugin-react-web-api\u003c/code\u003e, \u003ccode\u003eeslint-plugin-react-naming-convention\u003c/code\u003e, \u003ccode\u003eeslint-plugin-react-debug\u003c/code\u003e, \u003ccode\u003eeslint-plugin-react-rsc\u003c/code\u003e) from the \u003ccode\u003eCommon Violations / Invalid / Valid\u003c/code\u003e format to the new \u003ccode\u003eExamples / scenario-based / Troubleshooting / Further Reading\u003c/code\u003e format (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1784\"\u003e#1784\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eUpdated README tagline and description, removed the Benchmark section, and fixed migration guide links (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1783\"\u003e#1783\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eUpdated website recipe docs, FAQ, and third-party plugins page (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1783\"\u003e#1783\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🏗️ Internal\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpdated \u003ccode\u003escripts/scaffold-rule.ts\u003c/code\u003e and the rule request issue template to match the new documentation structure (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1782\"\u003e#1782\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/Rel1cx/eslint-react/compare/v5.8.0...v5.8.1\"\u003ehttps://github.com/Rel1cx/eslint-react/compare/v5.8.0...v5.8.1\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev5.8.0 (2026-05-17)\u003c/h2\u003e\n\u003ch3\u003e🪄 Improvements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003e\u003ccode\u003ereact-jsx/no-children-prop\u003c/code\u003e\u003c/strong\u003e, \u003cstrong\u003e\u003ccode\u003ereact-jsx/no-children-prop-with-children\u003c/code\u003e\u003c/strong\u003e: Added support for \u003ccode\u003ecreateElement\u003c/code\u003e calls in addition to JSX elements (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1780\"\u003e#1780\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e📝 Documentation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdded \u003ccode\u003eeslint-plugin-perfectionist\u003c/code\u003e to the third-party plugins documentation page (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1778\"\u003e#1778\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🏗️ Internal\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eBumped \u003ccode\u003eimport-integrity-lint\u003c/code\u003e to 1.0.1.\u003c/li\u003e\n\u003cli\u003eFixed multiple versions of \u003ccode\u003etypescript-eslint\u003c/code\u003e and \u003ccode\u003eimport-integrity-lint\u003c/code\u003e in the workspace (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1776\"\u003e#1776\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eIncreased pnpm \u003ccode\u003eminimumReleaseAge\u003c/code\u003e to 3 days and updated lockfile (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1779\"\u003e#1779\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eRemoved \u003ccode\u003e.repos\u003c/code\u003e directory references from config files (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1773\"\u003e#1773\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eRemoved obsolete maintenance scripts (\u003ccode\u003ecreate-spec-alignment-issues.sh\u003c/code\u003e, \u003ccode\u003emigrate-labels.sh\u003c/code\u003e) (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1777\"\u003e#1777\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eReplaced \u003ccode\u003eeslint-plugin-fast-import\u003c/code\u003e with \u003ccode\u003eimport-integrity-lint\u003c/code\u003e (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1774\"\u003e#1774\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eSimplified the publish CI workflow by skipping install scripts and removing the lint step (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1775\"\u003e#1775\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/Rel1cx/eslint-react/compare/v5.7.10...v5.8.0\"\u003ehttps://github.com/Rel1cx/eslint-react/compare/v5.7.10...v5.8.0\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev5.7.10 (2026-05-16)\u003c/h2\u003e\n\u003ch3\u003e🐞 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003e\u003ccode\u003ereact-x/no-leaked-conditional-rendering\u003c/code\u003e\u003c/strong\u003e, \u003cstrong\u003e\u003ccode\u003ereact-x/set-state-in-effect\u003c/code\u003e\u003c/strong\u003e: Added cycle detection to prevent stack overflow in recursive function analysis (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1769\"\u003e#1769\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e📝 Documentation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdded \u003ccode\u003ethird-party-plugins.mdx\u003c/code\u003e documentation page.\u003c/li\u003e\n\u003cli\u003eAdded spec diff and compiler test fixtures for \u003ccode\u003ereact-x/globals\u003c/code\u003e rule.\u003c/li\u003e\n\u003cli\u003eUpdated ESLint Stylistic link to rules anchor.\u003c/li\u003e\n\u003cli\u003eUpdated community projects (added Obsidian Copilot).\u003c/li\u003e\n\u003cli\u003eAdded redirects and simplified removed docs page.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/94549a1e3496d2ef3dff60b6332f17656469b2f0\"\u003e\u003ccode\u003e94549a1\u003c/code\u003e\u003c/a\u003e release: 5.8.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/2821bb11803f5ef8c8021d3deed84183ce136a24\"\u003e\u003ccode\u003e2821bb1\u003c/code\u003e\u003c/a\u003e docs: restructure rule documentation to new Examples-based format (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1784\"\u003e#1784\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/4317c311d29c5d0c9aa8b48d335172f60b4d4487\"\u003e\u003ccode\u003e4317c31\u003c/code\u003e\u003c/a\u003e release: 5.8.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/e060debd13fc873a83ed9ac143d559bf5e0c3fac\"\u003e\u003ccode\u003ee060deb\u003c/code\u003e\u003c/a\u003e release: 5.7.10\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/752585a5125e2d53c7ced0df2e58fe8960d3cbd2\"\u003e\u003ccode\u003e752585a\u003c/code\u003e\u003c/a\u003e release: 5.7.10-beta.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/24a9443a01f832ba3b960a3f67fbf38a3de490ca\"\u003e\u003ccode\u003e24a9443\u003c/code\u003e\u003c/a\u003e release: 5.7.10-next.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/50d7dc0bcfc01cfc9bf9d5190db218fb9719a869\"\u003e\u003ccode\u003e50d7dc0\u003c/code\u003e\u003c/a\u003e release: 5.7.8\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/be9e7865cac798b3111840ced8c81d38ec660f4d\"\u003e\u003ccode\u003ebe9e786\u003c/code\u003e\u003c/a\u003e release: 5.7.8-beta.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/e14aabca9a1ed01e08fdd3dd55627cb05f9c1c1f\"\u003e\u003ccode\u003ee14aabc\u003c/code\u003e\u003c/a\u003e release: 5.7.8-next.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/7be40890022163dfa1b8a40b5a1ac25354d2e7db\"\u003e\u003ccode\u003e7be4089\u003c/code\u003e\u003c/a\u003e release: 5.7.7\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/Rel1cx/eslint-react/commits/v5.8.1/plugins/eslint-plugin\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@eslint/js` from 9.39.2 to 10.0.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/eslint/eslint/releases\"\u003e@​eslint/js's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev10.0.1\u003c/h2\u003e\n\u003ch2\u003eBug Fixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/c87d5bded54c5cf491eb04c24c9d09bbbd42c23e\"\u003e\u003ccode\u003ec87d5bd\u003c/code\u003e\u003c/a\u003e fix: update eslint (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20531\"\u003e#20531\u003c/a\u003e) (renovate[bot])\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/d84100115c14691691058f00779c94e74fca946a\"\u003e\u003ccode\u003ed841001\u003c/code\u003e\u003c/a\u003e fix: update \u003ccode\u003eminimatch\u003c/code\u003e to \u003ccode\u003e10.2.1\u003c/code\u003e to address security vulnerabilities (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20519\"\u003e#20519\u003c/a\u003e) (루밀LuMir)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/04c21475b3004904948f02049f2888b401d82c78\"\u003e\u003ccode\u003e04c2147\u003c/code\u003e\u003c/a\u003e fix: update error message for unused suppressions (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20496\"\u003e#20496\u003c/a\u003e) (fnx)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/38b089c1726feac0e31a31d47941bd99e29ce003\"\u003e\u003ccode\u003e38b089c\u003c/code\u003e\u003c/a\u003e fix: update dependency \u003ccode\u003e@​eslint/config-array\u003c/code\u003e to ^0.23.1 (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20484\"\u003e#20484\u003c/a\u003e) (renovate[bot])\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eDocumentation\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/5b3dbce50a1404a9f118afe810cefeee79388a2a\"\u003e\u003ccode\u003e5b3dbce\u003c/code\u003e\u003c/a\u003e docs: add AI acknowledgement section to templates (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20431\"\u003e#20431\u003c/a\u003e) (루밀LuMir)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/6f23076037d5879f20fb3be2ef094293b1e8d38c\"\u003e\u003ccode\u003e6f23076\u003c/code\u003e\u003c/a\u003e docs: toggle nav in no-JS mode (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20476\"\u003e#20476\u003c/a\u003e) (Tanuj Kanti)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/b69cfb32a16c5d5e9986390d484fae1d21e406f9\"\u003e\u003ccode\u003eb69cfb3\u003c/code\u003e\u003c/a\u003e docs: Update README (GitHub Actions Bot)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eChores\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/e5c281ffd038a3a7a3e5364db0b9378e0ad83020\"\u003e\u003ccode\u003ee5c281f\u003c/code\u003e\u003c/a\u003e chore: updates for v9.39.3 release (Jenkins)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/8c3832adb77cd993b4a24891900d5eeaaf093cdc\"\u003e\u003ccode\u003e8c3832a\u003c/code\u003e\u003c/a\u003e chore: update \u003ccode\u003e@​typescript-eslint/parser\u003c/code\u003e to ^8.56.0 (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20514\"\u003e#20514\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/8330d238ae6adb68bb6a1c9381e38cfedd990d94\"\u003e\u003ccode\u003e8330d23\u003c/code\u003e\u003c/a\u003e test: add tests for config-api (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20493\"\u003e#20493\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/37d6e91e88fa6a2ca6d8726679096acff21ba6cc\"\u003e\u003ccode\u003e37d6e91\u003c/code\u003e\u003c/a\u003e chore: remove eslint v10 prereleases from eslint-config-eslint deps (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20494\"\u003e#20494\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/da7cd0e79197ad16e17052eef99df141de6dbfb1\"\u003e\u003ccode\u003eda7cd0e\u003c/code\u003e\u003c/a\u003e refactor: cleanup error message templates (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20479\"\u003e#20479\u003c/a\u003e) (Francesco Trotta)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/84fb885d49ac810e79a9491276b4828b53d913e5\"\u003e\u003ccode\u003e84fb885\u003c/code\u003e\u003c/a\u003e chore: package.json update for \u003ccode\u003e@​eslint/js\u003c/code\u003e release (Jenkins)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/1f667344b57c4c09b548d94bcfac1f91b6e5c63d\"\u003e\u003ccode\u003e1f66734\u003c/code\u003e\u003c/a\u003e chore: add \u003ccode\u003eeslint\u003c/code\u003e to \u003ccode\u003epeerDependencies\u003c/code\u003e of \u003ccode\u003e@eslint/js\u003c/code\u003e (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20467\"\u003e#20467\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev10.0.0\u003c/h2\u003e\n\u003ch2\u003eBreaking Changes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/f9e54f43a5e497cdfa179338b431093245cb787b\"\u003e\u003ccode\u003ef9e54f4\u003c/code\u003e\u003c/a\u003e feat!: estimate rule-tester failure location (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20420\"\u003e#20420\u003c/a\u003e) (ST-DDT)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/a176319d8ade1a7d9b2d7fb8f038f55a2662325f\"\u003e\u003ccode\u003ea176319\u003c/code\u003e\u003c/a\u003e feat!: replace \u003ccode\u003echalk\u003c/code\u003e with \u003ccode\u003estyleText\u003c/code\u003e and add \u003ccode\u003ecolor\u003c/code\u003e to \u003ccode\u003eResultsMeta\u003c/code\u003e (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20227\"\u003e#20227\u003c/a\u003e) (루밀LuMir)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/c7046e6c1e03c4ca0eee4888a1f2eba4c6454f84\"\u003e\u003ccode\u003ec7046e6\u003c/code\u003e\u003c/a\u003e feat!: enable JSX reference tracking (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20152\"\u003e#20152\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/fa31a608901684fbcd9906d1907e66561d16e5aa\"\u003e\u003ccode\u003efa31a60\u003c/code\u003e\u003c/a\u003e feat!: add \u003ccode\u003ename\u003c/code\u003e to configs (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20015\"\u003e#20015\u003c/a\u003e) (Kirk Waiblinger)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/3383e7ec9028166cafc8ea7986c2f7498d0049f0\"\u003e\u003ccode\u003e3383e7e\u003c/code\u003e\u003c/a\u003e fix!: remove deprecated \u003ccode\u003eSourceCode\u003c/code\u003e methods (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20137\"\u003e#20137\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/501abd0e916a35554c58b7c0365537f1fa3880ce\"\u003e\u003ccode\u003e501abd0\u003c/code\u003e\u003c/a\u003e feat!: update dependency minimatch to v10 (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20246\"\u003e#20246\u003c/a\u003e) (renovate[bot])\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/ca4d3b40085de47561f89656a2207d09946ed45e\"\u003e\u003ccode\u003eca4d3b4\u003c/code\u003e\u003c/a\u003e fix!: stricter rule tester assertions for valid test cases (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20125\"\u003e#20125\u003c/a\u003e) (唯然)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/96512a66c86402fb0538cdcb6cd30b9073f6bf3b\"\u003e\u003ccode\u003e96512a6\u003c/code\u003e\u003c/a\u003e fix!: Remove deprecated rule context methods (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20086\"\u003e#20086\u003c/a\u003e) (Nicholas C. Zakas)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/c69fdacdb2e886b9d965568a397aa8220db3fe90\"\u003e\u003ccode\u003ec69fdac\u003c/code\u003e\u003c/a\u003e feat!: remove eslintrc support (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20037\"\u003e#20037\u003c/a\u003e) (Francesco Trotta)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/208b5cc34a8374ff81412b5bec2e0800eebfbd04\"\u003e\u003ccode\u003e208b5cc\u003c/code\u003e\u003c/a\u003e feat!: Use \u003ccode\u003eScopeManager#addGlobals()\u003c/code\u003e (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20132\"\u003e#20132\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/a2ee188ea7a38a0c6155f3d39e2b00e1d0f36e14\"\u003e\u003ccode\u003ea2ee188\u003c/code\u003e\u003c/a\u003e fix!: add \u003ccode\u003euniqueItems: true\u003c/code\u003e in \u003ccode\u003eno-invalid-regexp\u003c/code\u003e option (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20155\"\u003e#20155\u003c/a\u003e) (Tanuj Kanti)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/a89059dbf2832d417dd493ee81483227ec44e4ab\"\u003e\u003ccode\u003ea89059d\u003c/code\u003e\u003c/a\u003e feat!: Program range span entire source text (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20133\"\u003e#20133\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/39a6424373d915fa9de0d7b0caba9a4dc3da9b53\"\u003e\u003ccode\u003e39a6424\u003c/code\u003e\u003c/a\u003e fix!: assert 'text' is a string across all RuleFixer methods (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20082\"\u003e#20082\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/f28fbf846244e043c92b355b224d121b06140b44\"\u003e\u003ccode\u003ef28fbf8\u003c/code\u003e\u003c/a\u003e fix!: Deprecate \u003ccode\u003e\u0026quot;always\u0026quot;\u003c/code\u003e and \u003ccode\u003e\u0026quot;as-needed\u0026quot;\u003c/code\u003e options of the \u003ccode\u003eradix\u003c/code\u003e rule (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20223\"\u003e#20223\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/aa3fb2b233e929b37220be940575f42c280e0b98\"\u003e\u003ccode\u003eaa3fb2b\u003c/code\u003e\u003c/a\u003e fix!: tighten \u003ccode\u003efunc-names\u003c/code\u003e schema (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20119\"\u003e#20119\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/f6c0ed0311dcfee853367d5068c765d066e6b756\"\u003e\u003ccode\u003ef6c0ed0\u003c/code\u003e\u003c/a\u003e feat!: report \u003ccode\u003eeslint-env\u003c/code\u003e comments as errors (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20128\"\u003e#20128\u003c/a\u003e) (Francesco Trotta)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/4bf739fb533e59f7f0a66b65f7bc80be0f37d8db\"\u003e\u003ccode\u003e4bf739f\u003c/code\u003e\u003c/a\u003e fix!: remove deprecated \u003ccode\u003eLintMessage#nodeType\u003c/code\u003e and \u003ccode\u003eTestCaseError#type\u003c/code\u003e (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20096\"\u003e#20096\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/523c076866400670fb2192a3f55dbf7ad3469247\"\u003e\u003ccode\u003e523c076\u003c/code\u003e\u003c/a\u003e feat!: drop support for jiti \u0026lt; 2.2.0 (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20016\"\u003e#20016\u003c/a\u003e) (michael faith)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/454a292c95f34dad232411ddac06408e6383bb64\"\u003e\u003ccode\u003e454a292\u003c/code\u003e\u003c/a\u003e feat!: update \u003ccode\u003eeslint:recommended\u003c/code\u003e configuration (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20210\"\u003e#20210\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/4f880ee02992e1bf0e96ebaba679985e2d1295f1\"\u003e\u003ccode\u003e4f880ee\u003c/code\u003e\u003c/a\u003e feat!: remove \u003ccode\u003ev10_*\u003c/code\u003e and inactive \u003ccode\u003eunstable_*\u003c/code\u003e flags (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20225\"\u003e#20225\u003c/a\u003e) (sethamus)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/f18115c363a4ac7671a4c7f30ee13d57ebba330f\"\u003e\u003ccode\u003ef18115c\u003c/code\u003e\u003c/a\u003e feat!: \u003ccode\u003eno-shadow-restricted-names\u003c/code\u003e report \u003ccode\u003eglobalThis\u003c/code\u003e by default (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20027\"\u003e#20027\u003c/a\u003e) (sethamus)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/c6358c31fbd3937b92d89be2618ffdf5a774604e\"\u003e\u003ccode\u003ec6358c3\u003c/code\u003e\u003c/a\u003e feat!: Require Node.js \u003ccode\u003e^20.19.0 || ^22.13.0 || \u0026gt;=24\u003c/code\u003e (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20160\"\u003e#20160\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eFeatures\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/bff9091927811497dbf066b0e3b85ecb37d43822\"\u003e\u003ccode\u003ebff9091\u003c/code\u003e\u003c/a\u003e feat: handle \u003ccode\u003eArray.fromAsync\u003c/code\u003e in \u003ccode\u003earray-callback-return\u003c/code\u003e (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20457\"\u003e#20457\u003c/a\u003e) (Francesco Trotta)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/290c594bb50c439fb71bc75521ee5360daa8c222\"\u003e\u003ccode\u003e290c594\u003c/code\u003e\u003c/a\u003e feat: add \u003ccode\u003eself\u003c/code\u003e to \u003ccode\u003eno-implied-eval\u003c/code\u003e rule (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20468\"\u003e#20468\u003c/a\u003e) (sethamus)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/43677de07ebd6e14bfac40a46ad749ba783c45f2\"\u003e\u003ccode\u003e43677de\u003c/code\u003e\u003c/a\u003e feat: fix handling of function and class expression names in \u003ccode\u003eno-shadow\u003c/code\u003e (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20432\"\u003e#20432\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/84fb885d49ac810e79a9491276b4828b53d913e5\"\u003e\u003ccode\u003e84fb885\u003c/code\u003e\u003c/a\u003e chore: package.json update for \u003ccode\u003e@​eslint/js\u003c/code\u003e release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/1f667344b57c4c09b548d94bcfac1f91b6e5c63d\"\u003e\u003ccode\u003e1f66734\u003c/code\u003e\u003c/a\u003e chore: add \u003ccode\u003eeslint\u003c/code\u003e to \u003ccode\u003epeerDependencies\u003c/code\u003e of \u003ccode\u003e@eslint/js\u003c/code\u003e (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20467\"\u003e#20467\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/f3fbc2f60cbe2c718364feb8c3fc0452c0df3c56\"\u003e\u003ccode\u003ef3fbc2f\u003c/code\u003e\u003c/a\u003e chore: set \u003ccode\u003e@eslint/js\u003c/code\u003e version to 10.0.0 to skip releasing it (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20466\"\u003e#20466\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/b4b3127f8542c599ce2dea804b6582ebc40c993d\"\u003e\u003ccode\u003eb4b3127\u003c/code\u003e\u003c/a\u003e chore: package.json update for \u003ccode\u003e@​eslint/js\u003c/code\u003e release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/0b14059491d830a49b3577931f4f68fbcfce6be5\"\u003e\u003ccode\u003e0b14059\u003c/code\u003e\u003c/a\u003e chore: package.json update for \u003ccode\u003e@​eslint/js\u003c/code\u003e release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/fa31a608901684fbcd9906d1907e66561d16e5aa\"\u003e\u003ccode\u003efa31a60\u003c/code\u003e\u003c/a\u003e feat!: add \u003ccode\u003ename\u003c/code\u003e to configs (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20015\"\u003e#20015\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/1e2cad5f6fa47ed6ed89d2a29798dda926d50990\"\u003e\u003ccode\u003e1e2cad5\u003c/code\u003e\u003c/a\u003e chore: package.json update for \u003ccode\u003e@​eslint/js\u003c/code\u003e release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/454a292c95f34dad232411ddac06408e6383bb64\"\u003e\u003ccode\u003e454a292\u003c/code\u003e\u003c/a\u003e feat!: update \u003ccode\u003eeslint:recommended\u003c/code\u003e configuration (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20210\"\u003e#20210\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/c6358c31fbd3937b92d89be2618ffdf5a774604e\"\u003e\u003ccode\u003ec6358c3\u003c/code\u003e\u003c/a\u003e feat!: Require Node.js \u003ccode\u003e^20.19.0 || ^22.13.0 || \u0026gt;=24\u003c/code\u003e (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20160\"\u003e#20160\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/eslint/eslint/commits/v10.0.1/packages/js\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@typescript-eslint/eslint-plugin` from 8.56.0 to 8.59.3\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases\"\u003e@​typescript-eslint/eslint-plugin's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev8.59.3\u003c/h2\u003e\n\u003ch2\u003e8.59.3 (2026-05-11)\u003c/h2\u003e\n\u003cp\u003eThis was a version bump only, there were no code changes.\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.3\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003ev8.59.2\u003c/h2\u003e\n\u003ch2\u003e8.59.2 (2026-05-04)\u003c/h2\u003e\n\u003ch3\u003e🩹 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unsafe-type-assertion] handle crash on recursive template literal types (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12150\"\u003e#12150\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-deprecated] object destructuring values should be treated as declarations (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12292\"\u003e#12292\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003erule-tester:\u003c/strong\u003e add TypeScript as a peer dependency (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12288\"\u003e#12288\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e❤️ Thank You\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eDariusz Czajkowski\u003c/li\u003e\n\u003cli\u003eDima Barabash\u003c/li\u003e\n\u003cli\u003eKirk Waiblinger \u003ca href=\"https://github.com/kirkwaiblinger\"\u003e\u003ccode\u003e@​kirkwaiblinger\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.2\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003ev8.59.1\u003c/h2\u003e\n\u003ch2\u003e8.59.1 (2026-04-27)\u003c/h2\u003e\n\u003ch3\u003e🩹 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-type-assertion] fix crash \u0026quot;TypeError: checker.getTypeArguments is not a function\u0026quot; (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12246\"\u003e#12246\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-type-assertion] preserve index signatures in undefined unions (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12257\"\u003e#12257\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-type-assertion] preserve phantom type arguments in generic inference (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12269\"\u003e#12269\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-type-assertion] avoid false positive in logical assignment assertions (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12278\"\u003e#12278\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-type-arguments] handle instantiation expressions (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12220\"\u003e#12220\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-condition] treat void as nullish in no-unnecessary-condition (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12241\"\u003e#12241\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e❤️ Thank You\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eanasm266 \u003ca href=\"https://github.com/anasm266\"\u003e\u003ccode\u003e@​anasm266\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAnshika Jain \u003ca href=\"https://github.com/Anshikakalpana\"\u003e\u003ccode\u003e@​Anshikakalpana\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUlrich Stark\u003c/li\u003e\n\u003cli\u003eyugo innami \u003ca href=\"https://github.com/nami8824\"\u003e\u003ccode\u003e@​nami8824\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.1\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/CHANGELOG.md\"\u003e@​typescript-eslint/eslint-plugin's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e8.59.3 (2026-05-11)\u003c/h2\u003e\n\u003cp\u003eThis was a version bump only for eslint-plugin to align it with other projects, there were no code changes.\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.3\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003e8.59.2 (2026-05-04)\u003c/h2\u003e\n\u003ch3\u003e🩹 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-deprecated] object destructuring values should be treated as declarations (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12292\"\u003e#12292\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unsafe-type-assertion] handle crash on recursive template literal types (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12150\"\u003e#12150\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e❤️ Thank You\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eDima Barabash\u003c/li\u003e\n\u003cli\u003eKirk Waiblinger \u003ca href=\"https://github.com/kirkwaiblinger\"\u003e\u003ccode\u003e@​kirkwaiblinger\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.2\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003e8.59.1 (2026-04-27)\u003c/h2\u003e\n\u003ch3\u003e🩹 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-condition] treat void as nullish in no-unnecessary-condition (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12241\"\u003e#12241\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-type-arguments] handle instantiation expressions (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12220\"\u003e#12220\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-type-assertion] avoid false positive in logical assignment assertions (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12278\"\u003e#12278\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-type-assertion] preserve phantom type arguments in generic inference (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12269\"\u003e#12269\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-type-assertion] preserve index signatures in undefined unions (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12257\"\u003e#12257\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-type-assertion] fix crash \u0026quot;TypeError: checker.getTypeArguments is not a function\u0026quot; (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12246\"\u003e#12246\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e❤️ Thank You\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eanasm266 \u003ca href=\"https://github.com/anasm266\"\u003e\u003ccode\u003e@​anasm266\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAnshika Jain \u003ca href=\"https://github.com/Anshikakalpana\"\u003e\u003ccode\u003e@​Anshikakalpana\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUlrich Stark\u003c/li\u003e\n\u003cli\u003eyugo innami \u003ca href=\"https://github.com/nami8824\"\u003e\u003ccode\u003e@​nami8824\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.1\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003e8.59.0 (2026-04-20)\u003c/h2\u003e\n\u003ch3\u003e🚀 Features\u003c/h3\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/48e13c0261e3cb1bf4f4dfaa462cdb3a56ef7383\"\u003e\u003ccode\u003e48e13c0\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.59.3\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/e26dc8003ababf078aad4df17765ee4cea30644c\"\u003e\u003ccode\u003ee26dc80\u003c/code\u003e\u003c/a\u003e docs: update stale links to latest (\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin/issues/12313\"\u003e#12313\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/44f9625336841a8ee3eb01a9e02e49b1d7b12648\"\u003e\u003ccode\u003e44f9625\u003c/code\u003e\u003c/a\u003e chore(deps): update vitest monorepo to v4.1.5 (\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin/issues/12307\"\u003e#12307\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/2ec35f1760aade4df4c631d76d78c7ed5e136333\"\u003e\u003ccode\u003e2ec35f1\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.59.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/ec3ef25390f7daf5a9ff33a60282bdbbb49ab0f3\"\u003e\u003ccode\u003eec3ef25\u003c/code\u003e\u003c/a\u003e test: make no-useless-empty-export tests fully static (\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin/issues/12260\"\u003e#12260\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/60d0a513870d833617374ff8ea256d86ca3cbbbb\"\u003e\u003ccode\u003e60d0a51\u003c/code\u003e\u003c/a\u003e chore(eslint-plugin): switch auto-generated test cases to hand-written in no-...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/5c53da230a70aba7d6f3d6474b5d249b430a95d0\"\u003e\u003ccode\u003e5c53da2\u003c/code\u003e\u003c/a\u003e fix(eslint-plugin): [no-deprecated] object destructuring values should be tre...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/80c28a1ada3f975a932a02587cefee632ccf6550\"\u003e\u003ccode\u003e80c28a1\u003c/code\u003e\u003c/a\u003e fix(eslint-plugin): [no-unsafe-type-assertion] handle crash on recursive temp...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/b7b2670123f76419630f88f3a807f85b7c535230\"\u003e\u003ccode\u003eb7b2670\u003c/code\u003e\u003c/a\u003e test: make no-this-alias tests fully static (\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin/issues/12258\"\u003e#12258\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/52457932e5507b5ca01e720a541f3f8d01e09b9d\"\u003e\u003ccode\u003e5245793\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.59.1\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commits/v8.59.3/packages/eslint-plugin\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@typescript-eslint/parser` from 8.56.0 to 8.59.3\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases\"\u003e@​typescript-eslint/parser's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev8.59.3\u003c/h2\u003e\n\u003ch2\u003e8.59.3 (2026-05-11)\u003c/h2\u003e\n\u003cp\u003eThis was a version bump only, there were no code changes.\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.3\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003ev8.59.2\u003c/h2\u003e\n\u003ch2\u003e8.59.2 (2026-05-04)\u003c/h2\u003e\n\u003ch3\u003e🩹 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unsafe-type-assertion] handle crash on recursive template literal types (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12150\"\u003e#12150\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-deprecated] object destructuring values should be treated as declarations (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12292\"\u003e#12292\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003erule-tester:\u003c/strong\u003e add TypeScript as a peer dependency (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12288\"\u003e#12288\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e❤️ Thank You\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eDariusz Czajkowski\u003c/li\u003e\n\u003cli\u003eDima Barabash\u003c/li\u003e\n\u003cli\u003eKirk Waiblinger \u003ca href=\"https://github.com/kirkwaiblinger\"\u003e\u003ccode\u003e@​kirkwaiblinger\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.2\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003ev8.59.1\u003c/h2\u003e\n\u003ch2\u003e8.59.1 (2026-04-27)\u003c/h2\u003e\n\u003ch3\u003e🩹 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-type-assertion] fix crash \u0026quot;TypeError: checker.getTypeArguments is not a function\u0026quot; (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12246\"\u003e#12246\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-type-assertion] preserve index signatures in undefined unions (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12257\"\u003e#12257\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-type-assertion] preserve phantom type arguments in generic inference (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12269\"\u003e#12269\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-type-assertion] avoid false positive in logical assignment assertions (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12278\"\u003e#12278\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-type-arguments] handle instantiation expressions (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12220\"\u003e#12220\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-condition] treat void as nullish in no-unnecessary-condition (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12241\"\u003e#12241\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e❤️ Thank You\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eanasm266 \u003ca href=\"https://github.com/anasm266\"\u003e\u003ccode\u003e@​anasm266\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAnshika Jain \u003ca href=\"https://github.com/Anshikakalpana\"\u003e\u003ccode\u003e@​Anshikakalpana\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUlrich Stark\u003c/li\u003e\n\u003cli\u003eyugo innami \u003ca href=\"https://github.com/nami8824\"\u003e\u003ccode\u003e@​nami8824\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.1\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/parser/CHANGELOG.md\"\u003e@​typescript-eslint/parser's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e8.59.3 (2026-05-11)\u003c/h2\u003e\n\u003cp\u003eThis was a version bump only for parser to align it with other projects, there were no code changes.\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.3\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003e8.59.2 (2026-05-04)\u003c/h2\u003e\n\u003cp\u003eThis was a version bump only for parser to align it with other projects, there were no code changes.\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.2\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003e8.59.1 (2026-04-27)\u003c/h2\u003e\n\u003cp\u003eThis was a version bump only for parser to align it with other projects, there were no code changes.\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.1\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003e8.59.0 (2026-04-20)\u003c/h2\u003e\n\u003cp\u003eThis was a version bump only for parser to align it with other projects, there were no code changes.\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.0\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003e8.58.2 (2026-04-13)\u003c/h2\u003e\n\u003ch3\u003e🩹 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eremove tsbuildinfo cache file from published packages (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12187\"\u003e#12187\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e❤️ Thank You\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAbhijeet Singh \u003ca href=\"https://github.com/cseas\"\u003e\u003ccode\u003e@​cseas\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.58.2\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003e8.58.1 (2026-04-08)\u003c/h2\u003e\n\u003cp\u003eThis was a version bump only for parser to align it with other projects, there were no code changes.\u003c/p\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/48e13c0261e3cb1bf4f4dfaa462cdb3a56ef7383\"\u003e\u003ccode\u003e48e13c0\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.59.3\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/44f9625336841a8ee3eb01a9e02e49b1d7b12648\"\u003e\u003ccode\u003e44f9625\u003c/code\u003e\u003c/a\u003e chore(deps): update vitest monorepo to v4.1.5 (\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/parser/issues/12307\"\u003e#12307\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/2ec35f1760aade4df4c631d76d78c7ed5e136333\"\u003e\u003ccode\u003e2ec35f1\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.59.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/52457932e5507b5ca01e720a541f3f8d01e09b9d\"\u003e\u003ccode\u003e5245793\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.59.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/ea9ae4f8817873480e3501145059f63e39e8d8a1\"\u003e\u003ccode\u003eea9ae4f\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.59.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/90c2803a4c250e0343598d41e973f95e743bf4ce\"\u003e\u003ccode\u003e90c2803\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.58.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/be6b49a02d68db9bdc8985e7e9e1598700fda2fa\"\u003e\u003ccode\u003ebe6b49a\u003c/code\u003e\u003c/a\u003e fix: remove tsbuildinfo cache file from published packages (\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/parser/issues/12187\"\u003e#12187\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/5311ed312eadf4e238324f2726ae0b1f3f2206e6\"\u003e\u003ccode\u003e5311ed3\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.58.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/493341709fe7d1d6433332b7bd2724e3332c7cdf\"\u003e\u003ccode\u003e4933417\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.58.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/8cde2d06fb9bc591a4c93452509ddbd600c76a35\"\u003e\u003ccode\u003e8cde2d0\u003c/code\u003e\u003c/a\u003e feat: support TypeScript 6 (\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/parser/issues/12124\"\u003e#12124\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commits/v8.59.3/packages/parser\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `eslint` from 9.39.2 to 10.4.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/eslint/eslint/releases\"\u003eeslint's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev10.4.0\u003c/h2\u003e\n\u003ch2\u003eFeatures\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/1a45ec596af1dd5f880e6874cb8f24dafb6a7ecf\"\u003e\u003ccode\u003e1a45ec5\u003c/code\u003e\u003c/a\u003e feat: check sequence expressions in \u003ccode\u003efor-direction\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20701\"\u003e#20701\u003c/a\u003e) (kuldeep kumar)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/450040bd89b989b3531824c6be45feb5fe3d936b\"\u003e\u003ccode\u003e450040b\u003c/code\u003e\u003c/a\u003e feat: add \u003ccode\u003eincludeIgnoreFile()\u003c/code\u003e to \u003ccode\u003eeslint/config\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20735\"\u003e#20735\u003c/a\u003e) (Kirk Waiblinger)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eBug Fixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/544c0c3da589166ad8e5d634f35d3d06701c57be\"\u003e\u003ccode\u003e544c0c3\u003c/code\u003e\u003c/a\u003e fix: escape code path DOT labels in debug output (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20866\"\u003e#20866\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/6799431203f2579632d0870f98ba132067f4040c\"\u003e\u003ccode\u003e6799431\u003c/code\u003e\u003c/a\u003e fix: update dependency \u003ccode\u003e@​eslint/config-helpers\u003c/code\u003e to ^0.6.0 (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20850\"\u003e#20850\u003c/a\u003e) (renovate[bot])\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/f078fef5005dceb14fc162aab7c7200e027688dd\"\u003e\u003ccode\u003ef078fef\u003c/code\u003e\u003c/a\u003e fix: handle non-array deprecated rule replacements (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20825\"\u003e#20825\u003c/a\u003e) (xbinaryx)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eDocumentation\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/7e52a7151fb92eec0e0f67fe4e5ddbd1ccce796f\"\u003e\u003ccode\u003e7e52a71\u003c/code\u003e\u003c/a\u003e docs: add mention of \u003ccode\u003e@eslint-react/eslint-plugin\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20869\"\u003e#20869\u003c/a\u003e) (Pavel)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/db3468ba746407d7f286f18f7ea9db6df0e3bc08\"\u003e\u003ccode\u003edb3468b\u003c/code\u003e\u003c/a\u003e docs: tweak wording around ambiguous CJS-vs-ESM config (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20865\"\u003e#20865\u003c/a\u003e) (Kirk Waiblinger)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/90846643ec6e97d447ae0d831fabe6d17b0a998a\"\u003e\u003ccode\u003e9084664\u003c/code\u003e\u003c/a\u003e docs: Update README (GitHub Actions Bot)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/9cc73875046e3c4b8313644cbb1e99e26b36bd3f\"\u003e\u003ccode\u003e9cc7387\u003c/code\u003e\u003c/a\u003e docs: Update README (GitHub Actions Bot)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/3d7b5484407403817aa9071a394d336d8ea96eb5\"\u003e\u003ccode\u003e3d7b548\u003c/code\u003e\u003c/a\u003e docs: Update README (GitHub Actions Bot)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/191ec3c0a3f94ce0f110df761f0b2b8949011ccb\"\u003e\u003ccode\u003e191ec3c\u003c/code\u003e\u003c/a\u003e docs: Update README (GitHub Actions Bot)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eChores\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/6616856f28fa514a30f87b5539fc100d739a94bf\"\u003e\u003ccode\u003e6616856\u003c/code\u003e\u003c/a\u003e chore: upgrade knip to v6 (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20875\"\u003e#20875\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/d13b084a3ad02f926e9addaa35fc383759ea5554\"\u003e\u003ccode\u003ed13b084\u003c/code\u003e\u003c/a\u003e ci: ensure auto-created PRs run CI (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20860\"\u003e#20860\u003c/a\u003e) (lumir)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/e71c7af86dce9acc1d18cb12d2184309f6841594\"\u003e\u003ccode\u003ee71c7af\u003c/code\u003e\u003c/a\u003e ci: bump pnpm/action-setup from 6.0.5 to 6.0.7 (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20862\"\u003e#20862\u003c/a\u003e) (dependabot[bot])\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/d84393dea170f54191fd20c8268b52c81c0ccd99\"\u003e\u003ccode\u003ed84393d\u003c/code\u003e\u003c/a\u003e test: add unit tests for SuppressionsService.applySuppressions() (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20863\"\u003e#20863\u003c/a\u003e) (kuldeep kumar)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/24db8cb8e6f07fba667121777a15b1785486be94\"\u003e\u003ccode\u003e24db8cb\u003c/code\u003e\u003c/a\u003e test: add tests for SuppressionsService.save() (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20802\"\u003e#20802\u003c/a\u003e) (kuldeep kumar)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/2ef0549cac4a9537e4c3a26b9f3edd4c99476bf6\"\u003e\u003ccode\u003e2ef0549\u003c/code\u003e\u003c/a\u003e chore: update ecosystem plugins (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20857\"\u003e#20857\u003c/a\u003e) (github-actions[bot])\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/a4297918d264d229a06cd96051ef9b91c7b86732\"\u003e\u003ccode\u003ea429791\u003c/code\u003e\u003c/a\u003e ci: remove \u003ccode\u003eeslint-webpack-plugin\u003c/code\u003e types integration test (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20668\"\u003e#20668\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/9e37386aa7f2ce220b2ef74a6afbac5f6b3527c5\"\u003e\u003ccode\u003e9e37386\u003c/code\u003e\u003c/a\u003e chore: replace \u003ccode\u003erecast\u003c/code\u003e with range approach in code-sample-minimizer (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20682\"\u003e#20682\u003c/a\u003e) (Copilot)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/0dd1f9ffc9a07704d46e2a4c8d4ccc0d0908b0c0\"\u003e\u003ccode\u003e0dd1f9f\u003c/code\u003e\u003c/a\u003e test: disable warning for \u003ccode\u003evm.constants.USE_MAIN_CONTEXT_DEFAULT_LOADER\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20845\"\u003e#20845\u003c/a\u003e) (Francesco Trotta)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/9da3c7bc92d9579f8db19ecb56e718538d09db2b\"\u003e\u003ccode\u003e9da3c7b\u003c/code\u003e\u003c/a\u003e refactor: remove deprecated \u003ccode\u003emeta.language\u003c/code\u003e and migrate \u003ccode\u003emeta.dialects\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20716\"\u003e#20716\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/2099ed12a0a74c3d7f0808514362af2499b4fe2b\"\u003e\u003ccode\u003e2099ed1\u003c/code\u003e\u003c/a\u003e refactor: add \u003ccode\u003emeta.defaultOptions\u003c/code\u003e to more rules, enable linting (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20800\"\u003e#20800\u003c/a\u003e) (xbinaryx)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/f1dfbc9ca57196de7092e1888cc99427bd6fe06e\"\u003e\u003ccode\u003ef1dfbc9\u003c/code\u003e\u003c/a\u003e chore: update ecosystem plugins (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20836\"\u003e#20836\u003c/a\u003e) (github-actions[bot])\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/c75941390c14728806cd4baef4f6072f6de78318\"\u003e\u003ccode\u003ec759413\u003c/code\u003e\u003c/a\u003e ci: bump pnpm/action-setup from 6.0.3 to 6.0.5 (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20843\"\u003e#20843\u003c/a\u003e) (dependabot[bot])\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/5b817d6fdc9ae2c35b528dc662b2eca8f40f64aa\"\u003e\u003ccode\u003e5b817d6\u003c/code\u003e\u003c/a\u003e test: add unit tests for lib/shared/ast-utils (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20838\"\u003e#20838\u003c/a\u003e) (kuldeep kumar)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/1c13ae3934c198c494e5958fa3a68b33244ff06a\"\u003e\u003ccode\u003e1c13ae3\u003c/code\u003e\u003c/a\u003e test: add unit tests for lib/shared/severity (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20835\"\u003e#20835\u003c/a\u003e) (kuldeep kumar)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev10.3.0\u003c/h2\u003e\n\u003ch2\u003eFeatures\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/379571a975f2b24d88037b9de2e72ec61d004130\"\u003e\u003ccode\u003e379571a\u003c/code\u003e\u003c/a\u003e feat: add suggestions for no-unused-private-class-members (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20773\"\u003e#20773\u003c/a\u003e) (sethamus)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eBug Fixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/b6ae5cf07b9b51802367539cb24b245b61eaa37c\"\u003e\u003ccode\u003eb6ae5cf\u003c/code\u003e\u003c/a\u003e fix: handle unavailable require cache (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20812\"\u003e#20812\u003c/a\u003e) (Simon Podlipsky)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/6fb3685bcbe9a6f72fd7dfb9129686b6fb96b0bd\"\u003e\u003ccode\u003e6fb3685\u003c/code\u003e\u003c/a\u003e fix: rule suggestions cause continuation in class body (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20787\"\u003e#20787\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eDocumentation\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/32cc7ab4ec653ce89da92deb5c40a9f4fc707fe5\"\u003e\u003ccode\u003e32cc7ab\u003c/code\u003e\u003c/a\u003e docs: fix typos in docs and comments (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20809\"\u003e#20809\u003c/a\u003e) (Tanuj Kanti)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/7f479376a2fa463d823ab762db6bb37ce8d2ee8f\"\u003e\u003ccode\u003e7f47937\u003c/code\u003e\u003c/a\u003e docs: Update README (GitHub Actions Bot)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eChores\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/d32235ec19ceea211fa86452afa383ca05f5c2f9\"\u003e\u003ccode\u003ed32235e\u003c/code\u003e\u003c/a\u003e ci: use pnpm in \u003ccode\u003eeslint-flat-config-utils\u003c/code\u003e type integration test (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20826\"\u003e#20826\u003c/a\u003e) (Francesco Trotta)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/3ffb14ea517de750ed1181579ef844af342e4096\"\u003e\u003ccode\u003e3ffb14e\u003c/code\u003e\u003c/a\u003e chore: clean up typos in comments and JSDoc (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20821\"\u003e#20821\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/452c4010c07dc2e36fe6ec6a8c48298878e86887\"\u003e\u003ccode\u003e452c401\u003c/code\u003e\u003c/a\u003e 10.4.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/b6417e8b55c9525070d6e168b485ce6ff21688ed\"\u003e\u003ccode\u003eb6417e8\u003c/code\u003e\u003c/a\u003e Build: changelog update for 10.4.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/6616856f28fa514a30f87b5539fc100d739a94bf\"\u003e\u003ccode\u003e6616856\u003c/code\u003e\u003c/a\u003e chore: upgrade knip to v6 (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20875\"\u003e#20875\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/d13b084a3ad02f926e9addaa35fc383759ea5554\"\u003e\u003ccode\u003ed13b084\u003c/code\u003e\u003c/a\u003e ci: ensure auto-created PRs run CI (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20860\"\u003e#20860\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/7e52a7151fb92eec0e0f67fe4e5ddbd1ccce796f\"\u003e\u003ccode\u003e7e52a71\u003c/code\u003e\u003c/a\u003e docs: add mention of \u003ccode\u003e@eslint-react/eslint-plugin\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20869\"\u003e#20869\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/e71c7af86dce9acc1d18cb12d2184309f6841594\"\u003e\u003ccode\u003ee71c7af\u003c/code\u003e\u003c/a\u003e ci: bump pnpm/action-setup from 6.0.5 to 6.0.7 (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20862\"\u003e#20862\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/544c0c3da589166ad8e5d634f35d3d06701c57be\"\u003e\u003ccode\u003e544c0c3\u003c/code\u003e\u003c/a\u003e fix: escape code path DOT labels in debug output (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20866\"\u003e#20866\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/db3468ba746407d7f286f18f7ea9db6df0e3bc08\"\u003e\u003ccode\u003edb3468b\u003c/code\u003e\u003c/a\u003e docs: tweak wording around ambiguous CJS-vs-ESM config (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20865\"\u003e#20865\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/d84393dea170f54191fd20c8268b52c81c0ccd99\"\u003e\u003ccode\u003ed84393d\u003c/code\u003e\u003c/a\u003e test: add unit tests for SuppressionsService.applySuppressions() (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20863\"\u003e#20863\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/90846643ec6e97d447ae0d831fabe6d17b0a998a\"\u003e\u003ccode\u003e9084664\u003c/code\u003e\u003c/a\u003e docs: Update README\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/eslint/eslint/compare/v9.39.2...v10.4.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `eslint-plugin-react-hooks` from 7.0.1 to 7.1.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/facebook/react/releases\"\u003eeslint-plugin-react-hooks's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eeslint-plugin-react-hooks@7.1.1 (April 17, 2026)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eNote:\u003c/strong\u003e 7.1.0 accidentally removed the \u003ccode\u003ecomponent-hook-factories\u003c/code\u003e rule, causing errors for users who referenced it in their ESLint config. This is now fixed.\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdd deprecated no-op \u003ccode\u003ecomponent-hook-factories\u003c/code\u003e rule for backwards compatibility. (\u003ca href=\"https://github.com/mofeiZ\"\u003e\u003ccode\u003e@​mofeiZ\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/36307\"\u003e#36307\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eeslint-plugin-react-hooks@7.1.0 (April 16, 2026)\u003c/h2\u003e\n\u003cp\u003eThis release adds ESLint v10 support, improves performance by skipping compilation for non-React files, and includes compiler lint improvements including better \u003ccode\u003eset-state-in-effect\u003c/code\u003e detection, improved ref validation, and more helpful error reporting.\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdd ESLint v10 support. (\u003ca href=\"https://github.com/azat-io\"\u003e\u003ccode\u003e@​azat-io\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/35720\"\u003e#35720\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSkip compilation for non-React files to improve performance. (\u003ca href=\"https://github.com/josephsavona\"\u003e\u003ccode\u003e@​josephsavona\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/35589\"\u003e#35589\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix exhaustive deps bug with Flow type casting. (\u003ca href=\"https://github.com/jorge-cab\"\u003e\u003ccode\u003e@​jorge-cab\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/35691\"\u003e#35691\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix \u003ccode\u003euseEffectEvent\u003c/code\u003e checks in component syntax. (\u003ca href=\"https://github.com/jbrown215\"\u003e\u003ccode\u003e@​jbrown215\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/35041\"\u003e#35041\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eImproved \u003ccode\u003eset-state-in-effect\u003c/code\u003e validation with fewer false negatives. (\u003ca href=\"https://github.com/jorge-cab\"\u003e\u003ccode\u003e@​jorge-cab\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/35134\"\u003e#35134\u003c/a\u003e, \u003ca href=\"https://github.com/josephsavona\"\u003e\u003ccode\u003e@​josephsavona\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/35147\"\u003e#35147\u003c/a\u003e, \u003ca href=\"https://github.com/jackpope\"\u003e\u003ccode\u003e@​jackpope\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/35214\"\u003e#35214\u003c/a\u003e, \u003ca href=\"https://github.com/chesnokov-tony\"\u003e\u003ccode\u003e@​chesnokov-tony\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/35419\"\u003e#35419\u003c/a\u003e, \u003ca href=\"https://github.com/jsleitor\"\u003e\u003ccode\u003e@​jsleitor\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/36107\"\u003e...\n\n_Description has been truncated_","html_url":"https://github.com/BrianJVarley/react-19-starter/pull/6","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/BrianJVarley%2Freact-19-starter/issues/6","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/6/packages"}},{"old_version":"5.1.3","new_version":"5.2.0","update_type":"minor","path":null,"pr_created_at":"2026-05-18T05:34:21.000Z","version_change":"5.1.3 → 5.2.0","issue":{"uuid":"4466527722","node_id":"PR_kwDORyuJzM7chLIK","number":7,"state":"closed","title":"deps(deps): bump the all-dependencies group across 1 directory with 66 updates","user":"dependabot[bot]","labels":[],"assignees":[],"locked":false,"comments_count":2,"pull_request":true,"closed_at":"2026-05-25T05:16:20.000Z","author_association":null,"state_reason":null,"created_at":"2026-05-18T05:34:21.000Z","updated_at":"2026-05-25T05:16:22.000Z","time_to_close":603719,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"deps(deps): bump","group_name":"all-dependencies","update_count":66,"packages":[{"name":"@eslint-react/eslint-plugin","old_version":"2.13.0","new_version":"5.8.1","repository_url":"https://github.com/Rel1cx/eslint-react"},{"name":"@eslint/js","old_version":"9.39.2","new_version":"10.0.1","repository_url":"https://github.com/eslint/eslint"},{"name":"@typescript-eslint/eslint-plugin","old_version":"8.56.0","new_version":"8.59.3","repository_url":"https://github.com/typescript-eslint/typescript-eslint"},{"name":"@typescript-eslint/parser","old_version":"8.56.0","new_version":"8.59.3","repository_url":"https://github.com/typescript-eslint/typescript-eslint"},{"name":"eslint","old_version":"9.39.2","new_version":"10.4.0","repository_url":"https://github.com/eslint/eslint"},{"name":"eslint-plugin-react-hooks","old_version":"7.0.1","new_version":"7.1.1","repository_url":"https://github.com/facebook/react"},{"name":"globals","old_version":"17.3.0","new_version":"17.6.0","repository_url":"https://github.com/sindresorhus/globals"},{"name":"graphql","old_version":"16.12.0","new_version":"16.14.0","repository_url":"https://github.com/graphql/graphql-js"},{"name":"happy-dom","old_version":"20.6.2","new_version":"20.9.0","repository_url":"https://github.com/capricorn86/happy-dom"},{"name":"jiti","old_version":"2.6.1","new_version":"2.7.0","repository_url":"https://github.com/unjs/jiti"},{"name":"lint-staged","old_version":"16.2.7","new_version":"17.0.5","repository_url":"https://github.com/lint-staged/lint-staged"},{"name":"mermaid","old_version":"11.12.3","new_version":"11.15.0","repository_url":"https://github.com/mermaid-js/mermaid"},{"name":"prettier","old_version":"3.8.1","new_version":"3.8.3","repository_url":"https://github.com/prettier/prettier"},{"name":"react","old_version":"19.2.4","new_version":"19.2.6","repository_url":"https://github.com/facebook/react"},{"name":"typescript","old_version":"5.9.3","new_version":"6.0.3","repository_url":"https://github.com/microsoft/TypeScript"},{"name":"typescript-eslint","old_version":"8.56.0","new_version":"8.59.3","repository_url":"https://github.com/typescript-eslint/typescript-eslint"},{"name":"typescript-language-server","old_version":"5.1.3","new_version":"5.2.0","repository_url":"https://github.com/typescript-language-server/typescript-language-server"},{"name":"vite","old_version":"7.3.1","new_version":"8.0.13","repository_url":"https://github.com/vitejs/vite"},{"name":"vitepress","old_version":"2.0.0-alpha.16","new_version":"2.0.0-alpha.17","repository_url":"https://github.com/vuejs/vitepress"},{"name":"vitepress-plugin-llms","old_version":"1.11.0","new_version":"1.12.2","repository_url":"https://github.com/okineadev/vitepress-plugin-llms"},{"name":"vitest","old_version":"4.0.18","new_version":"4.1.6","repository_url":"https://github.com/vitest-dev/vitest"},{"name":"wrangler","old_version":"4.66.0","new_version":"4.92.0","repository_url":"https://github.com/cloudflare/workers-sdk"},{"name":"@ai-sdk/openai","old_version":"3.0.29","new_version":"3.0.64","repository_url":"https://github.com/vercel/ai"},{"name":"@better-auth/passkey","old_version":"1.4.18","new_version":"1.6.11","repository_url":"https://github.com/better-auth/better-auth"},{"name":"@better-auth/stripe","old_version":"1.4.18","new_version":"1.6.11","repository_url":"https://github.com/better-auth/better-auth"},{"name":"@trpc/server","old_version":"11.10.0","new_version":"11.17.0","repository_url":"https://github.com/trpc/trpc"},{"name":"ai","old_version":"6.0.91","new_version":"6.0.184","repository_url":"https://github.com/vercel/ai"},{"name":"better-auth","old_version":"1.4.18","new_version":"1.6.11","repository_url":"https://github.com/better-auth/better-auth"},{"name":"drizzle-orm","old_version":"0.45.1","new_version":"0.45.2","repository_url":"https://github.com/drizzle-team/drizzle-orm"},{"name":"postgres","old_version":"3.4.8","new_version":"3.4.9","repository_url":"https://github.com/porsager/postgres"},{"name":"resend","old_version":"6.9.2","new_version":"6.12.3","repository_url":"https://github.com/resend/resend-node"},{"name":"stripe","old_version":"20.3.1","new_version":"22.1.1","repository_url":"https://github.com/stripe/stripe-node"},{"name":"@cloudflare/workers-types","old_version":"4.20260218.0","new_version":"4.20260518.1","repository_url":"https://github.com/cloudflare/workerd"},{"name":"@types/bun","old_version":"1.3.9","new_version":"1.3.14","repository_url":"https://github.com/DefinitelyTyped/DefinitelyTyped"},{"name":"hono","old_version":"4.11.10","new_version":"4.12.19","repository_url":"https://github.com/honojs/hono"},{"name":"@tanstack/react-query","old_version":"5.90.21","new_version":"5.100.10","repository_url":"https://github.com/TanStack/query"},{"name":"@tanstack/react-router","old_version":"1.161.1","new_version":"1.170.4","repository_url":"https://github.com/TanStack/router"},{"name":"@trpc/client","old_version":"11.10.0","new_version":"11.17.0","repository_url":"https://github.com/trpc/trpc"},{"name":"@trpc/tanstack-react-query","old_version":"11.10.0","new_version":"11.17.0","repository_url":"https://github.com/trpc/trpc"},{"name":"jotai","old_version":"2.17.1","new_version":"2.20.0","repository_url":"https://github.com/pmndrs/jotai"},{"name":"jotai-effect","old_version":"2.2.3","new_version":"2.3.1","repository_url":"https://github.com/jotaijs/jotai-effect"},{"name":"lucide-react","old_version":"0.574.0","new_version":"1.16.0","repository_url":"https://github.com/lucide-icons/lucide"},{"name":"react-dom","old_version":"19.2.4","new_version":"19.2.6","repository_url":"https://github.com/facebook/react"},{"name":"tailwind-merge","old_version":"3.4.1","new_version":"3.6.0","repository_url":"https://github.com/dcastil/tailwind-merge"},{"name":"@tailwindcss/postcss","old_version":"4.2.0","new_version":"4.3.0","repository_url":"https://github.com/tailwindlabs/tailwindcss"},{"name":"@tanstack/react-query-devtools","old_version":"5.91.3","new_version":"5.100.10","repository_url":"https://github.com/TanStack/query"},{"name":"@tanstack/react-router-devtools","old_version":"1.161.1","new_version":"1.167.0","repository_url":"https://github.com/TanStack/router"},{"name":"@tanstack/router-plugin","old_version":"1.161.1","new_version":"1.168.6","repository_url":"https://github.com/TanStack/router"},{"name":"@types/node","old_version":"25.2.3","new_version":"25.8.0","repository_url":"https://github.com/DefinitelyTyped/DefinitelyTyped"},{"name":"@vitejs/plugin-react","old_version":"5.1.4","new_version":"6.0.2","repository_url":"https://github.com/vitejs/vite-plugin-react"},{"name":"@vitejs/plugin-react-swc","old_version":"4.2.3","new_version":"4.3.1","repository_url":"https://github.com/vitejs/vite-plugin-react"},{"name":"autoprefixer","old_version":"10.4.24","new_version":"10.5.0","repository_url":"https://github.com/postcss/autoprefixer"},{"name":"globby","old_version":"16.1.1","new_version":"16.2.0","repository_url":"https://github.com/sindresorhus/globby"},{"name":"@react-email/components","old_version":"1.0.8","new_version":"1.0.12","repository_url":"https://github.com/resend/react-email"},{"name":"@react-email/render","old_version":"2.0.4","new_version":"2.0.8","repository_url":"https://github.com/resend/react-email"},{"name":"@react-email/preview-server","old_version":"5.2.8","new_version":"5.2.10","repository_url":"https://github.com/resend/react-email"},{"name":"react-email","old_version":"5.2.8","new_version":"6.1.4","repository_url":"https://github.com/resend/react-email"},{"name":"@astrojs/react","old_version":"4.4.2","new_version":"5.0.5","repository_url":"https://github.com/withastro/astro"},{"name":"astro","old_version":"5.17.2","new_version":"6.3.3","repository_url":"https://github.com/withastro/astro"},{"name":"dotenv","old_version":"17.3.1","new_version":"17.4.2","repository_url":"https://github.com/motdotla/dotenv"},{"name":"drizzle-kit","old_version":"0.31.9","new_version":"0.31.10","repository_url":"https://github.com/drizzle-team/drizzle-orm"},{"name":"@modelcontextprotocol/sdk","old_version":"1.26.0","new_version":"1.29.0","repository_url":"https://github.com/modelcontextprotocol/typescript-sdk"},{"name":"got","old_version":"14.6.6","new_version":"15.0.5","repository_url":"https://github.com/sindresorhus/got"}],"path":null,"ecosystem":"npm"},"body":"Bumps the all-dependencies group with 63 updates in the / directory:\n\n| Package | From | To |\n| --- | --- | --- |\n| [@eslint-react/eslint-plugin](https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin) | `2.13.0` | `5.8.1` |\n| [@eslint/js](https://github.com/eslint/eslint/tree/HEAD/packages/js) | `9.39.2` | `10.0.1` |\n| [@typescript-eslint/eslint-plugin](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin) | `8.56.0` | `8.59.3` |\n| [@typescript-eslint/parser](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/parser) | `8.56.0` | `8.59.3` |\n| [eslint](https://github.com/eslint/eslint) | `9.39.2` | `10.4.0` |\n| [eslint-plugin-react-hooks](https://github.com/facebook/react/tree/HEAD/packages/eslint-plugin-react-hooks) | `7.0.1` | `7.1.1` |\n| [globals](https://github.com/sindresorhus/globals) | `17.3.0` | `17.6.0` |\n| [graphql](https://github.com/graphql/graphql-js) | `16.12.0` | `16.14.0` |\n| [happy-dom](https://github.com/capricorn86/happy-dom) | `20.6.2` | `20.9.0` |\n| [jiti](https://github.com/unjs/jiti) | `2.6.1` | `2.7.0` |\n| [lint-staged](https://github.com/lint-staged/lint-staged) | `16.2.7` | `17.0.5` |\n| [mermaid](https://github.com/mermaid-js/mermaid) | `11.12.3` | `11.15.0` |\n| [prettier](https://github.com/prettier/prettier) | `3.8.1` | `3.8.3` |\n| [react](https://github.com/facebook/react/tree/HEAD/packages/react) | `19.2.4` | `19.2.6` |\n| [typescript](https://github.com/microsoft/TypeScript) | `5.9.3` | `6.0.3` |\n| [typescript-eslint](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/typescript-eslint) | `8.56.0` | `8.59.3` |\n| [typescript-language-server](https://github.com/typescript-language-server/typescript-language-server) | `5.1.3` | `5.2.0` |\n| [vite](https://github.com/vitejs/vite/tree/HEAD/packages/vite) | `7.3.1` | `8.0.13` |\n| [vitepress](https://github.com/vuejs/vitepress) | `2.0.0-alpha.16` | `2.0.0-alpha.17` |\n| [vitepress-plugin-llms](https://github.com/okineadev/vitepress-plugin-llms) | `1.11.0` | `1.12.2` |\n| [vitest](https://github.com/vitest-dev/vitest/tree/HEAD/packages/vitest) | `4.0.18` | `4.1.6` |\n| [wrangler](https://github.com/cloudflare/workers-sdk/tree/HEAD/packages/wrangler) | `4.66.0` | `4.92.0` |\n| [@ai-sdk/openai](https://github.com/vercel/ai/tree/HEAD/packages/openai) | `3.0.29` | `3.0.64` |\n| [@better-auth/passkey](https://github.com/better-auth/better-auth/tree/HEAD/packages/passkey) | `1.4.18` | `1.6.11` |\n| [@better-auth/stripe](https://github.com/better-auth/better-auth/tree/HEAD/packages/stripe) | `1.4.18` | `1.6.11` |\n| [@trpc/server](https://github.com/trpc/trpc/tree/HEAD/packages/server) | `11.10.0` | `11.17.0` |\n| [ai](https://github.com/vercel/ai/tree/HEAD/packages/ai) | `6.0.91` | `6.0.184` |\n| [better-auth](https://github.com/better-auth/better-auth/tree/HEAD/packages/better-auth) | `1.4.18` | `1.6.11` |\n| [drizzle-orm](https://github.com/drizzle-team/drizzle-orm) | `0.45.1` | `0.45.2` |\n| [postgres](https://github.com/porsager/postgres) | `3.4.8` | `3.4.9` |\n| [resend](https://github.com/resend/resend-node) | `6.9.2` | `6.12.3` |\n| [stripe](https://github.com/stripe/stripe-node) | `20.3.1` | `22.1.1` |\n| [@cloudflare/workers-types](https://github.com/cloudflare/workerd) | `4.20260218.0` | `4.20260518.1` |\n| [@types/bun](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/bun) | `1.3.9` | `1.3.14` |\n| [hono](https://github.com/honojs/hono) | `4.11.10` | `4.12.19` |\n| [@tanstack/react-query](https://github.com/TanStack/query/tree/HEAD/packages/react-query) | `5.90.21` | `5.100.10` |\n| [@tanstack/react-router](https://github.com/TanStack/router/tree/HEAD/packages/react-router) | `1.161.1` | `1.170.4` |\n| [@trpc/client](https://github.com/trpc/trpc/tree/HEAD/packages/client) | `11.10.0` | `11.17.0` |\n| [@trpc/tanstack-react-query](https://github.com/trpc/trpc/tree/HEAD/packages/tanstack-react-query) | `11.10.0` | `11.17.0` |\n| [jotai](https://github.com/pmndrs/jotai) | `2.17.1` | `2.20.0` |\n| [jotai-effect](https://github.com/jotaijs/jotai-effect) | `2.2.3` | `2.3.1` |\n| [lucide-react](https://github.com/lucide-icons/lucide/tree/HEAD/packages/lucide-react) | `0.574.0` | `1.16.0` |\n| [react-dom](https://github.com/facebook/react/tree/HEAD/packages/react-dom) | `19.2.4` | `19.2.6` |\n| [tailwind-merge](https://github.com/dcastil/tailwind-merge) | `3.4.1` | `3.6.0` |\n| [@tailwindcss/postcss](https://github.com/tailwindlabs/tailwindcss/tree/HEAD/packages/@tailwindcss-postcss) | `4.2.0` | `4.3.0` |\n| [@tanstack/react-query-devtools](https://github.com/TanStack/query/tree/HEAD/packages/react-query-devtools) | `5.91.3` | `5.100.10` |\n| [@tanstack/react-router-devtools](https://github.com/TanStack/router/tree/HEAD/packages/react-router-devtools) | `1.161.1` | `1.167.0` |\n| [@tanstack/router-plugin](https://github.com/TanStack/router/tree/HEAD/packages/router-plugin) | `1.161.1` | `1.168.6` |\n| [@types/node](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/node) | `25.2.3` | `25.8.0` |\n| [@vitejs/plugin-react](https://github.com/vitejs/vite-plugin-react/tree/HEAD/packages/plugin-react) | `5.1.4` | `6.0.2` |\n| [@vitejs/plugin-react-swc](https://github.com/vitejs/vite-plugin-react/tree/HEAD/packages/plugin-react-swc) | `4.2.3` | `4.3.1` |\n| [autoprefixer](https://github.com/postcss/autoprefixer) | `10.4.24` | `10.5.0` |\n| [globby](https://github.com/sindresorhus/globby) | `16.1.1` | `16.2.0` |\n| [@react-email/components](https://github.com/resend/react-email/tree/HEAD/packages/components) | `1.0.8` | `1.0.12` |\n| [@react-email/render](https://github.com/resend/react-email/tree/HEAD/packages/render) | `2.0.4` | `2.0.8` |\n| [@react-email/preview-server](https://github.com/resend/react-email/tree/HEAD/packages/preview-server) | `5.2.8` | `5.2.10` |\n| [react-email](https://github.com/resend/react-email/tree/HEAD/packages/react-email) | `5.2.8` | `6.1.4` |\n| [@astrojs/react](https://github.com/withastro/astro/tree/HEAD/packages/integrations/react) | `4.4.2` | `5.0.5` |\n| [astro](https://github.com/withastro/astro/tree/HEAD/packages/astro) | `5.17.2` | `6.3.3` |\n| [dotenv](https://github.com/motdotla/dotenv) | `17.3.1` | `17.4.2` |\n| [drizzle-kit](https://github.com/drizzle-team/drizzle-orm) | `0.31.9` | `0.31.10` |\n| [@modelcontextprotocol/sdk](https://github.com/modelcontextprotocol/typescript-sdk) | `1.26.0` | `1.29.0` |\n| [got](https://github.com/sindresorhus/got) | `14.6.6` | `15.0.5` |\n\n\nUpdates `@eslint-react/eslint-plugin` from 2.13.0 to 5.8.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/Rel1cx/eslint-react/releases\"\u003e@​eslint-react/eslint-plugin's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev5.8.1 (2026-05-18)\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003ch3\u003e📝 Documentation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eRestructured rule documentation across all plugins from the \u003ccode\u003eCommon Violations / Invalid / Valid\u003c/code\u003e format to the new \u003ccode\u003eExamples / scenario-based / Troubleshooting / Further Reading\u003c/code\u003e format (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1784\"\u003e#1784\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eUpdated README tagline and description, removed the Benchmark section, and fixed migration guide links (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1783\"\u003e#1783\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eUpdated website recipe docs, FAQ, and third-party plugins page (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1783\"\u003e#1783\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🏗️ Internal\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpdated \u003ccode\u003escripts/scaffold-rule.ts\u003c/code\u003e and the rule request issue template to match the new documentation structure (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1782\"\u003e#1782\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/Rel1cx/eslint-react/compare/v5.8.0...v5.8.1\"\u003ehttps://github.com/Rel1cx/eslint-react/compare/v5.8.0...v5.8.1\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev5.8.0 (2026-05-17)\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003ch3\u003e🪄 Improvements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003e\u003ccode\u003ereact-jsx/no-children-prop\u003c/code\u003e\u003c/strong\u003e, \u003cstrong\u003e\u003ccode\u003ereact-jsx/no-children-prop-with-children\u003c/code\u003e\u003c/strong\u003e: Added support for \u003ccode\u003ecreateElement\u003c/code\u003e calls in addition to JSX elements (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1780\"\u003e#1780\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e📝 Documentation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdded \u003ccode\u003eeslint-plugin-perfectionist\u003c/code\u003e to the third-party plugins documentation page (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1778\"\u003e#1778\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🏗️ Internal\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eBumped \u003ccode\u003eimport-integrity-lint\u003c/code\u003e to 1.0.1.\u003c/li\u003e\n\u003cli\u003eFixed multiple versions of \u003ccode\u003etypescript-eslint\u003c/code\u003e and \u003ccode\u003eimport-integrity-lint\u003c/code\u003e in the workspace (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1776\"\u003e#1776\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eIncreased pnpm \u003ccode\u003eminimumReleaseAge\u003c/code\u003e to 3 days and updated lockfile (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1779\"\u003e#1779\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eRemoved \u003ccode\u003e.repos\u003c/code\u003e directory references from config files (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1773\"\u003e#1773\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eRemoved obsolete maintenance scripts (\u003ccode\u003ecreate-spec-alignment-issues.sh\u003c/code\u003e, \u003ccode\u003emigrate-labels.sh\u003c/code\u003e) (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1777\"\u003e#1777\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eReplaced \u003ccode\u003eeslint-plugin-fast-import\u003c/code\u003e with \u003ccode\u003eimport-integrity-lint\u003c/code\u003e (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1774\"\u003e#1774\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eSimplified the publish CI workflow by skipping install scripts and removing the lint step (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1775\"\u003e#1775\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/Rel1cx/eslint-react/compare/v5.7.10...v5.8.0\"\u003ehttps://github.com/Rel1cx/eslint-react/compare/v5.7.10...v5.8.0\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev5.7.10 (2026-05-16)\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003ch3\u003e🐞 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003e\u003ccode\u003ereact-x/no-leaked-conditional-rendering\u003c/code\u003e\u003c/strong\u003e, \u003cstrong\u003e\u003ccode\u003ereact-x/set-state-in-effect\u003c/code\u003e\u003c/strong\u003e: Added cycle detection to prevent stack overflow in recursive function analysis (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1769\"\u003e#1769\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e📝 Documentation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdded \u003ccode\u003ethird-party-plugins.mdx\u003c/code\u003e documentation page.\u003c/li\u003e\n\u003cli\u003eAdded spec diff and compiler test fixtures for \u003ccode\u003ereact-x/globals\u003c/code\u003e rule.\u003c/li\u003e\n\u003cli\u003eUpdated ESLint Stylistic link to rules anchor.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/Rel1cx/eslint-react/blob/main/CHANGELOG.md\"\u003e@​eslint-react/eslint-plugin's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev5.8.1 (2026-05-18)\u003c/h2\u003e\n\u003ch3\u003e📝 Documentation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eRestructured rule documentation across all plugins (\u003ccode\u003eeslint-plugin-react-x\u003c/code\u003e, \u003ccode\u003eeslint-plugin-react-dom\u003c/code\u003e, \u003ccode\u003eeslint-plugin-react-jsx\u003c/code\u003e, \u003ccode\u003eeslint-plugin-react-web-api\u003c/code\u003e, \u003ccode\u003eeslint-plugin-react-naming-convention\u003c/code\u003e, \u003ccode\u003eeslint-plugin-react-debug\u003c/code\u003e, \u003ccode\u003eeslint-plugin-react-rsc\u003c/code\u003e) from the \u003ccode\u003eCommon Violations / Invalid / Valid\u003c/code\u003e format to the new \u003ccode\u003eExamples / scenario-based / Troubleshooting / Further Reading\u003c/code\u003e format (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1784\"\u003e#1784\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eUpdated README tagline and description, removed the Benchmark section, and fixed migration guide links (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1783\"\u003e#1783\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eUpdated website recipe docs, FAQ, and third-party plugins page (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1783\"\u003e#1783\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🏗️ Internal\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpdated \u003ccode\u003escripts/scaffold-rule.ts\u003c/code\u003e and the rule request issue template to match the new documentation structure (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1782\"\u003e#1782\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/Rel1cx/eslint-react/compare/v5.8.0...v5.8.1\"\u003ehttps://github.com/Rel1cx/eslint-react/compare/v5.8.0...v5.8.1\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev5.8.0 (2026-05-17)\u003c/h2\u003e\n\u003ch3\u003e🪄 Improvements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003e\u003ccode\u003ereact-jsx/no-children-prop\u003c/code\u003e\u003c/strong\u003e, \u003cstrong\u003e\u003ccode\u003ereact-jsx/no-children-prop-with-children\u003c/code\u003e\u003c/strong\u003e: Added support for \u003ccode\u003ecreateElement\u003c/code\u003e calls in addition to JSX elements (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1780\"\u003e#1780\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e📝 Documentation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdded \u003ccode\u003eeslint-plugin-perfectionist\u003c/code\u003e to the third-party plugins documentation page (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1778\"\u003e#1778\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🏗️ Internal\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eBumped \u003ccode\u003eimport-integrity-lint\u003c/code\u003e to 1.0.1.\u003c/li\u003e\n\u003cli\u003eFixed multiple versions of \u003ccode\u003etypescript-eslint\u003c/code\u003e and \u003ccode\u003eimport-integrity-lint\u003c/code\u003e in the workspace (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1776\"\u003e#1776\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eIncreased pnpm \u003ccode\u003eminimumReleaseAge\u003c/code\u003e to 3 days and updated lockfile (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1779\"\u003e#1779\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eRemoved \u003ccode\u003e.repos\u003c/code\u003e directory references from config files (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1773\"\u003e#1773\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eRemoved obsolete maintenance scripts (\u003ccode\u003ecreate-spec-alignment-issues.sh\u003c/code\u003e, \u003ccode\u003emigrate-labels.sh\u003c/code\u003e) (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1777\"\u003e#1777\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eReplaced \u003ccode\u003eeslint-plugin-fast-import\u003c/code\u003e with \u003ccode\u003eimport-integrity-lint\u003c/code\u003e (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1774\"\u003e#1774\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eSimplified the publish CI workflow by skipping install scripts and removing the lint step (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1775\"\u003e#1775\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/Rel1cx/eslint-react/compare/v5.7.10...v5.8.0\"\u003ehttps://github.com/Rel1cx/eslint-react/compare/v5.7.10...v5.8.0\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev5.7.10 (2026-05-16)\u003c/h2\u003e\n\u003ch3\u003e🐞 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003e\u003ccode\u003ereact-x/no-leaked-conditional-rendering\u003c/code\u003e\u003c/strong\u003e, \u003cstrong\u003e\u003ccode\u003ereact-x/set-state-in-effect\u003c/code\u003e\u003c/strong\u003e: Added cycle detection to prevent stack overflow in recursive function analysis (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1769\"\u003e#1769\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e📝 Documentation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdded \u003ccode\u003ethird-party-plugins.mdx\u003c/code\u003e documentation page.\u003c/li\u003e\n\u003cli\u003eAdded spec diff and compiler test fixtures for \u003ccode\u003ereact-x/globals\u003c/code\u003e rule.\u003c/li\u003e\n\u003cli\u003eUpdated ESLint Stylistic link to rules anchor.\u003c/li\u003e\n\u003cli\u003eUpdated community projects (added Obsidian Copilot).\u003c/li\u003e\n\u003cli\u003eAdded redirects and simplified removed docs page.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/94549a1e3496d2ef3dff60b6332f17656469b2f0\"\u003e\u003ccode\u003e94549a1\u003c/code\u003e\u003c/a\u003e release: 5.8.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/2821bb11803f5ef8c8021d3deed84183ce136a24\"\u003e\u003ccode\u003e2821bb1\u003c/code\u003e\u003c/a\u003e docs: restructure rule documentation to new Examples-based format (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1784\"\u003e#1784\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/4317c311d29c5d0c9aa8b48d335172f60b4d4487\"\u003e\u003ccode\u003e4317c31\u003c/code\u003e\u003c/a\u003e release: 5.8.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/e060debd13fc873a83ed9ac143d559bf5e0c3fac\"\u003e\u003ccode\u003ee060deb\u003c/code\u003e\u003c/a\u003e release: 5.7.10\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/752585a5125e2d53c7ced0df2e58fe8960d3cbd2\"\u003e\u003ccode\u003e752585a\u003c/code\u003e\u003c/a\u003e release: 5.7.10-beta.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/24a9443a01f832ba3b960a3f67fbf38a3de490ca\"\u003e\u003ccode\u003e24a9443\u003c/code\u003e\u003c/a\u003e release: 5.7.10-next.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/50d7dc0bcfc01cfc9bf9d5190db218fb9719a869\"\u003e\u003ccode\u003e50d7dc0\u003c/code\u003e\u003c/a\u003e release: 5.7.8\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/be9e7865cac798b3111840ced8c81d38ec660f4d\"\u003e\u003ccode\u003ebe9e786\u003c/code\u003e\u003c/a\u003e release: 5.7.8-beta.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/e14aabca9a1ed01e08fdd3dd55627cb05f9c1c1f\"\u003e\u003ccode\u003ee14aabc\u003c/code\u003e\u003c/a\u003e release: 5.7.8-next.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/7be40890022163dfa1b8a40b5a1ac25354d2e7db\"\u003e\u003ccode\u003e7be4089\u003c/code\u003e\u003c/a\u003e release: 5.7.7\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/Rel1cx/eslint-react/commits/v5.8.1/plugins/eslint-plugin\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@eslint/js` from 9.39.2 to 10.0.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/eslint/eslint/releases\"\u003e@​eslint/js's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev10.0.1\u003c/h2\u003e\n\u003ch2\u003eBug Fixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/c87d5bded54c5cf491eb04c24c9d09bbbd42c23e\"\u003e\u003ccode\u003ec87d5bd\u003c/code\u003e\u003c/a\u003e fix: update eslint (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20531\"\u003e#20531\u003c/a\u003e) (renovate[bot])\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/d84100115c14691691058f00779c94e74fca946a\"\u003e\u003ccode\u003ed841001\u003c/code\u003e\u003c/a\u003e fix: update \u003ccode\u003eminimatch\u003c/code\u003e to \u003ccode\u003e10.2.1\u003c/code\u003e to address security vulnerabilities (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20519\"\u003e#20519\u003c/a\u003e) (루밀LuMir)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/04c21475b3004904948f02049f2888b401d82c78\"\u003e\u003ccode\u003e04c2147\u003c/code\u003e\u003c/a\u003e fix: update error message for unused suppressions (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20496\"\u003e#20496\u003c/a\u003e) (fnx)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/38b089c1726feac0e31a31d47941bd99e29ce003\"\u003e\u003ccode\u003e38b089c\u003c/code\u003e\u003c/a\u003e fix: update dependency \u003ccode\u003e@​eslint/config-array\u003c/code\u003e to ^0.23.1 (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20484\"\u003e#20484\u003c/a\u003e) (renovate[bot])\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eDocumentation\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/5b3dbce50a1404a9f118afe810cefeee79388a2a\"\u003e\u003ccode\u003e5b3dbce\u003c/code\u003e\u003c/a\u003e docs: add AI acknowledgement section to templates (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20431\"\u003e#20431\u003c/a\u003e) (루밀LuMir)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/6f23076037d5879f20fb3be2ef094293b1e8d38c\"\u003e\u003ccode\u003e6f23076\u003c/code\u003e\u003c/a\u003e docs: toggle nav in no-JS mode (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20476\"\u003e#20476\u003c/a\u003e) (Tanuj Kanti)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/b69cfb32a16c5d5e9986390d484fae1d21e406f9\"\u003e\u003ccode\u003eb69cfb3\u003c/code\u003e\u003c/a\u003e docs: Update README (GitHub Actions Bot)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eChores\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/e5c281ffd038a3a7a3e5364db0b9378e0ad83020\"\u003e\u003ccode\u003ee5c281f\u003c/code\u003e\u003c/a\u003e chore: updates for v9.39.3 release (Jenkins)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/8c3832adb77cd993b4a24891900d5eeaaf093cdc\"\u003e\u003ccode\u003e8c3832a\u003c/code\u003e\u003c/a\u003e chore: update \u003ccode\u003e@​typescript-eslint/parser\u003c/code\u003e to ^8.56.0 (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20514\"\u003e#20514\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/8330d238ae6adb68bb6a1c9381e38cfedd990d94\"\u003e\u003ccode\u003e8330d23\u003c/code\u003e\u003c/a\u003e test: add tests for config-api (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20493\"\u003e#20493\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/37d6e91e88fa6a2ca6d8726679096acff21ba6cc\"\u003e\u003ccode\u003e37d6e91\u003c/code\u003e\u003c/a\u003e chore: remove eslint v10 prereleases from eslint-config-eslint deps (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20494\"\u003e#20494\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/da7cd0e79197ad16e17052eef99df141de6dbfb1\"\u003e\u003ccode\u003eda7cd0e\u003c/code\u003e\u003c/a\u003e refactor: cleanup error message templates (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20479\"\u003e#20479\u003c/a\u003e) (Francesco Trotta)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/84fb885d49ac810e79a9491276b4828b53d913e5\"\u003e\u003ccode\u003e84fb885\u003c/code\u003e\u003c/a\u003e chore: package.json update for \u003ccode\u003e@​eslint/js\u003c/code\u003e release (Jenkins)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/1f667344b57c4c09b548d94bcfac1f91b6e5c63d\"\u003e\u003ccode\u003e1f66734\u003c/code\u003e\u003c/a\u003e chore: add \u003ccode\u003eeslint\u003c/code\u003e to \u003ccode\u003epeerDependencies\u003c/code\u003e of \u003ccode\u003e@eslint/js\u003c/code\u003e (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20467\"\u003e#20467\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev10.0.0\u003c/h2\u003e\n\u003ch2\u003eBreaking Changes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/f9e54f43a5e497cdfa179338b431093245cb787b\"\u003e\u003ccode\u003ef9e54f4\u003c/code\u003e\u003c/a\u003e feat!: estimate rule-tester failure location (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20420\"\u003e#20420\u003c/a\u003e) (ST-DDT)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/a176319d8ade1a7d9b2d7fb8f038f55a2662325f\"\u003e\u003ccode\u003ea176319\u003c/code\u003e\u003c/a\u003e feat!: replace \u003ccode\u003echalk\u003c/code\u003e with \u003ccode\u003estyleText\u003c/code\u003e and add \u003ccode\u003ecolor\u003c/code\u003e to \u003ccode\u003eResultsMeta\u003c/code\u003e (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20227\"\u003e#20227\u003c/a\u003e) (루밀LuMir)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/c7046e6c1e03c4ca0eee4888a1f2eba4c6454f84\"\u003e\u003ccode\u003ec7046e6\u003c/code\u003e\u003c/a\u003e feat!: enable JSX reference tracking (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20152\"\u003e#20152\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/fa31a608901684fbcd9906d1907e66561d16e5aa\"\u003e\u003ccode\u003efa31a60\u003c/code\u003e\u003c/a\u003e feat!: add \u003ccode\u003ename\u003c/code\u003e to configs (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20015\"\u003e#20015\u003c/a\u003e) (Kirk Waiblinger)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/3383e7ec9028166cafc8ea7986c2f7498d0049f0\"\u003e\u003ccode\u003e3383e7e\u003c/code\u003e\u003c/a\u003e fix!: remove deprecated \u003ccode\u003eSourceCode\u003c/code\u003e methods (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20137\"\u003e#20137\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/501abd0e916a35554c58b7c0365537f1fa3880ce\"\u003e\u003ccode\u003e501abd0\u003c/code\u003e\u003c/a\u003e feat!: update dependency minimatch to v10 (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20246\"\u003e#20246\u003c/a\u003e) (renovate[bot])\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/ca4d3b40085de47561f89656a2207d09946ed45e\"\u003e\u003ccode\u003eca4d3b4\u003c/code\u003e\u003c/a\u003e fix!: stricter rule tester assertions for valid test cases (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20125\"\u003e#20125\u003c/a\u003e) (唯然)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/96512a66c86402fb0538cdcb6cd30b9073f6bf3b\"\u003e\u003ccode\u003e96512a6\u003c/code\u003e\u003c/a\u003e fix!: Remove deprecated rule context methods (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20086\"\u003e#20086\u003c/a\u003e) (Nicholas C. Zakas)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/c69fdacdb2e886b9d965568a397aa8220db3fe90\"\u003e\u003ccode\u003ec69fdac\u003c/code\u003e\u003c/a\u003e feat!: remove eslintrc support (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20037\"\u003e#20037\u003c/a\u003e) (Francesco Trotta)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/208b5cc34a8374ff81412b5bec2e0800eebfbd04\"\u003e\u003ccode\u003e208b5cc\u003c/code\u003e\u003c/a\u003e feat!: Use \u003ccode\u003eScopeManager#addGlobals()\u003c/code\u003e (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20132\"\u003e#20132\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/a2ee188ea7a38a0c6155f3d39e2b00e1d0f36e14\"\u003e\u003ccode\u003ea2ee188\u003c/code\u003e\u003c/a\u003e fix!: add \u003ccode\u003euniqueItems: true\u003c/code\u003e in \u003ccode\u003eno-invalid-regexp\u003c/code\u003e option (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20155\"\u003e#20155\u003c/a\u003e) (Tanuj Kanti)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/a89059dbf2832d417dd493ee81483227ec44e4ab\"\u003e\u003ccode\u003ea89059d\u003c/code\u003e\u003c/a\u003e feat!: Program range span entire source text (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20133\"\u003e#20133\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/39a6424373d915fa9de0d7b0caba9a4dc3da9b53\"\u003e\u003ccode\u003e39a6424\u003c/code\u003e\u003c/a\u003e fix!: assert 'text' is a string across all RuleFixer methods (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20082\"\u003e#20082\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/f28fbf846244e043c92b355b224d121b06140b44\"\u003e\u003ccode\u003ef28fbf8\u003c/code\u003e\u003c/a\u003e fix!: Deprecate \u003ccode\u003e\u0026quot;always\u0026quot;\u003c/code\u003e and \u003ccode\u003e\u0026quot;as-needed\u0026quot;\u003c/code\u003e options of the \u003ccode\u003eradix\u003c/code\u003e rule (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20223\"\u003e#20223\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/aa3fb2b233e929b37220be940575f42c280e0b98\"\u003e\u003ccode\u003eaa3fb2b\u003c/code\u003e\u003c/a\u003e fix!: tighten \u003ccode\u003efunc-names\u003c/code\u003e schema (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20119\"\u003e#20119\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/f6c0ed0311dcfee853367d5068c765d066e6b756\"\u003e\u003ccode\u003ef6c0ed0\u003c/code\u003e\u003c/a\u003e feat!: report \u003ccode\u003eeslint-env\u003c/code\u003e comments as errors (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20128\"\u003e#20128\u003c/a\u003e) (Francesco Trotta)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/4bf739fb533e59f7f0a66b65f7bc80be0f37d8db\"\u003e\u003ccode\u003e4bf739f\u003c/code\u003e\u003c/a\u003e fix!: remove deprecated \u003ccode\u003eLintMessage#nodeType\u003c/code\u003e and \u003ccode\u003eTestCaseError#type\u003c/code\u003e (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20096\"\u003e#20096\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/523c076866400670fb2192a3f55dbf7ad3469247\"\u003e\u003ccode\u003e523c076\u003c/code\u003e\u003c/a\u003e feat!: drop support for jiti \u0026lt; 2.2.0 (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20016\"\u003e#20016\u003c/a\u003e) (michael faith)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/454a292c95f34dad232411ddac06408e6383bb64\"\u003e\u003ccode\u003e454a292\u003c/code\u003e\u003c/a\u003e feat!: update \u003ccode\u003eeslint:recommended\u003c/code\u003e configuration (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20210\"\u003e#20210\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/4f880ee02992e1bf0e96ebaba679985e2d1295f1\"\u003e\u003ccode\u003e4f880ee\u003c/code\u003e\u003c/a\u003e feat!: remove \u003ccode\u003ev10_*\u003c/code\u003e and inactive \u003ccode\u003eunstable_*\u003c/code\u003e flags (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20225\"\u003e#20225\u003c/a\u003e) (sethamus)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/f18115c363a4ac7671a4c7f30ee13d57ebba330f\"\u003e\u003ccode\u003ef18115c\u003c/code\u003e\u003c/a\u003e feat!: \u003ccode\u003eno-shadow-restricted-names\u003c/code\u003e report \u003ccode\u003eglobalThis\u003c/code\u003e by default (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20027\"\u003e#20027\u003c/a\u003e) (sethamus)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/c6358c31fbd3937b92d89be2618ffdf5a774604e\"\u003e\u003ccode\u003ec6358c3\u003c/code\u003e\u003c/a\u003e feat!: Require Node.js \u003ccode\u003e^20.19.0 || ^22.13.0 || \u0026gt;=24\u003c/code\u003e (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20160\"\u003e#20160\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eFeatures\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/bff9091927811497dbf066b0e3b85ecb37d43822\"\u003e\u003ccode\u003ebff9091\u003c/code\u003e\u003c/a\u003e feat: handle \u003ccode\u003eArray.fromAsync\u003c/code\u003e in \u003ccode\u003earray-callback-return\u003c/code\u003e (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20457\"\u003e#20457\u003c/a\u003e) (Francesco Trotta)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/290c594bb50c439fb71bc75521ee5360daa8c222\"\u003e\u003ccode\u003e290c594\u003c/code\u003e\u003c/a\u003e feat: add \u003ccode\u003eself\u003c/code\u003e to \u003ccode\u003eno-implied-eval\u003c/code\u003e rule (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20468\"\u003e#20468\u003c/a\u003e) (sethamus)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/43677de07ebd6e14bfac40a46ad749ba783c45f2\"\u003e\u003ccode\u003e43677de\u003c/code\u003e\u003c/a\u003e feat: fix handling of function and class expression names in \u003ccode\u003eno-shadow\u003c/code\u003e (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20432\"\u003e#20432\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/84fb885d49ac810e79a9491276b4828b53d913e5\"\u003e\u003ccode\u003e84fb885\u003c/code\u003e\u003c/a\u003e chore: package.json update for \u003ccode\u003e@​eslint/js\u003c/code\u003e release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/1f667344b57c4c09b548d94bcfac1f91b6e5c63d\"\u003e\u003ccode\u003e1f66734\u003c/code\u003e\u003c/a\u003e chore: add \u003ccode\u003eeslint\u003c/code\u003e to \u003ccode\u003epeerDependencies\u003c/code\u003e of \u003ccode\u003e@eslint/js\u003c/code\u003e (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20467\"\u003e#20467\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/f3fbc2f60cbe2c718364feb8c3fc0452c0df3c56\"\u003e\u003ccode\u003ef3fbc2f\u003c/code\u003e\u003c/a\u003e chore: set \u003ccode\u003e@eslint/js\u003c/code\u003e version to 10.0.0 to skip releasing it (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20466\"\u003e#20466\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/b4b3127f8542c599ce2dea804b6582ebc40c993d\"\u003e\u003ccode\u003eb4b3127\u003c/code\u003e\u003c/a\u003e chore: package.json update for \u003ccode\u003e@​eslint/js\u003c/code\u003e release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/0b14059491d830a49b3577931f4f68fbcfce6be5\"\u003e\u003ccode\u003e0b14059\u003c/code\u003e\u003c/a\u003e chore: package.json update for \u003ccode\u003e@​eslint/js\u003c/code\u003e release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/fa31a608901684fbcd9906d1907e66561d16e5aa\"\u003e\u003ccode\u003efa31a60\u003c/code\u003e\u003c/a\u003e feat!: add \u003ccode\u003ename\u003c/code\u003e to configs (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20015\"\u003e#20015\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/1e2cad5f6fa47ed6ed89d2a29798dda926d50990\"\u003e\u003ccode\u003e1e2cad5\u003c/code\u003e\u003c/a\u003e chore: package.json update for \u003ccode\u003e@​eslint/js\u003c/code\u003e release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/454a292c95f34dad232411ddac06408e6383bb64\"\u003e\u003ccode\u003e454a292\u003c/code\u003e\u003c/a\u003e feat!: update \u003ccode\u003eeslint:recommended\u003c/code\u003e configuration (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20210\"\u003e#20210\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/c6358c31fbd3937b92d89be2618ffdf5a774604e\"\u003e\u003ccode\u003ec6358c3\u003c/code\u003e\u003c/a\u003e feat!: Require Node.js \u003ccode\u003e^20.19.0 || ^22.13.0 || \u0026gt;=24\u003c/code\u003e (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20160\"\u003e#20160\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/eslint/eslint/commits/v10.0.1/packages/js\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@typescript-eslint/eslint-plugin` from 8.56.0 to 8.59.3\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases\"\u003e@​typescript-eslint/eslint-plugin's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev8.59.3\u003c/h2\u003e\n\u003ch2\u003e8.59.3 (2026-05-11)\u003c/h2\u003e\n\u003cp\u003eThis was a version bump only, there were no code changes.\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.3\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003ev8.59.2\u003c/h2\u003e\n\u003ch2\u003e8.59.2 (2026-05-04)\u003c/h2\u003e\n\u003ch3\u003e🩹 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unsafe-type-assertion] handle crash on recursive template literal types (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12150\"\u003e#12150\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-deprecated] object destructuring values should be treated as declarations (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12292\"\u003e#12292\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003erule-tester:\u003c/strong\u003e add TypeScript as a peer dependency (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12288\"\u003e#12288\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e❤️ Thank You\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eDariusz Czajkowski\u003c/li\u003e\n\u003cli\u003eDima Barabash\u003c/li\u003e\n\u003cli\u003eKirk Waiblinger \u003ca href=\"https://github.com/kirkwaiblinger\"\u003e\u003ccode\u003e@​kirkwaiblinger\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.2\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003ev8.59.1\u003c/h2\u003e\n\u003ch2\u003e8.59.1 (2026-04-27)\u003c/h2\u003e\n\u003ch3\u003e🩹 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-type-assertion] fix crash \u0026quot;TypeError: checker.getTypeArguments is not a function\u0026quot; (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12246\"\u003e#12246\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-type-assertion] preserve index signatures in undefined unions (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12257\"\u003e#12257\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-type-assertion] preserve phantom type arguments in generic inference (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12269\"\u003e#12269\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-type-assertion] avoid false positive in logical assignment assertions (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12278\"\u003e#12278\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-type-arguments] handle instantiation expressions (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12220\"\u003e#12220\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-condition] treat void as nullish in no-unnecessary-condition (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12241\"\u003e#12241\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e❤️ Thank You\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eanasm266 \u003ca href=\"https://github.com/anasm266\"\u003e\u003ccode\u003e@​anasm266\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAnshika Jain \u003ca href=\"https://github.com/Anshikakalpana\"\u003e\u003ccode\u003e@​Anshikakalpana\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUlrich Stark\u003c/li\u003e\n\u003cli\u003eyugo innami \u003ca href=\"https://github.com/nami8824\"\u003e\u003ccode\u003e@​nami8824\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.1\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/CHANGELOG.md\"\u003e@​typescript-eslint/eslint-plugin's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e8.59.3 (2026-05-11)\u003c/h2\u003e\n\u003cp\u003eThis was a version bump only for eslint-plugin to align it with other projects, there were no code changes.\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.3\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003e8.59.2 (2026-05-04)\u003c/h2\u003e\n\u003ch3\u003e🩹 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-deprecated] object destructuring values should be treated as declarations (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12292\"\u003e#12292\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unsafe-type-assertion] handle crash on recursive template literal types (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12150\"\u003e#12150\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e❤️ Thank You\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eDima Barabash\u003c/li\u003e\n\u003cli\u003eKirk Waiblinger \u003ca href=\"https://github.com/kirkwaiblinger\"\u003e\u003ccode\u003e@​kirkwaiblinger\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.2\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003e8.59.1 (2026-04-27)\u003c/h2\u003e\n\u003ch3\u003e🩹 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-condition] treat void as nullish in no-unnecessary-condition (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12241\"\u003e#12241\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-type-arguments] handle instantiation expressions (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12220\"\u003e#12220\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-type-assertion] avoid false positive in logical assignment assertions (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12278\"\u003e#12278\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-type-assertion] preserve phantom type arguments in generic inference (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12269\"\u003e#12269\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-type-assertion] preserve index signatures in undefined unions (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12257\"\u003e#12257\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-type-assertion] fix crash \u0026quot;TypeError: checker.getTypeArguments is not a function\u0026quot; (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12246\"\u003e#12246\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e❤️ Thank You\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eanasm266 \u003ca href=\"https://github.com/anasm266\"\u003e\u003ccode\u003e@​anasm266\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAnshika Jain \u003ca href=\"https://github.com/Anshikakalpana\"\u003e\u003ccode\u003e@​Anshikakalpana\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUlrich Stark\u003c/li\u003e\n\u003cli\u003eyugo innami \u003ca href=\"https://github.com/nami8824\"\u003e\u003ccode\u003e@​nami8824\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.1\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003e8.59.0 (2026-04-20)\u003c/h2\u003e\n\u003ch3\u003e🚀 Features\u003c/h3\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/48e13c0261e3cb1bf4f4dfaa462cdb3a56ef7383\"\u003e\u003ccode\u003e48e13c0\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.59.3\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/e26dc8003ababf078aad4df17765ee4cea30644c\"\u003e\u003ccode\u003ee26dc80\u003c/code\u003e\u003c/a\u003e docs: update stale links to latest (\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin/issues/12313\"\u003e#12313\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/44f9625336841a8ee3eb01a9e02e49b1d7b12648\"\u003e\u003ccode\u003e44f9625\u003c/code\u003e\u003c/a\u003e chore(deps): update vitest monorepo to v4.1.5 (\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin/issues/12307\"\u003e#12307\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/2ec35f1760aade4df4c631d76d78c7ed5e136333\"\u003e\u003ccode\u003e2ec35f1\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.59.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/ec3ef25390f7daf5a9ff33a60282bdbbb49ab0f3\"\u003e\u003ccode\u003eec3ef25\u003c/code\u003e\u003c/a\u003e test: make no-useless-empty-export tests fully static (\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin/issues/12260\"\u003e#12260\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/60d0a513870d833617374ff8ea256d86ca3cbbbb\"\u003e\u003ccode\u003e60d0a51\u003c/code\u003e\u003c/a\u003e chore(eslint-plugin): switch auto-generated test cases to hand-written in no-...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/5c53da230a70aba7d6f3d6474b5d249b430a95d0\"\u003e\u003ccode\u003e5c53da2\u003c/code\u003e\u003c/a\u003e fix(eslint-plugin): [no-deprecated] object destructuring values should be tre...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/80c28a1ada3f975a932a02587cefee632ccf6550\"\u003e\u003ccode\u003e80c28a1\u003c/code\u003e\u003c/a\u003e fix(eslint-plugin): [no-unsafe-type-assertion] handle crash on recursive temp...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/b7b2670123f76419630f88f3a807f85b7c535230\"\u003e\u003ccode\u003eb7b2670\u003c/code\u003e\u003c/a\u003e test: make no-this-alias tests fully static (\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin/issues/12258\"\u003e#12258\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/52457932e5507b5ca01e720a541f3f8d01e09b9d\"\u003e\u003ccode\u003e5245793\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.59.1\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commits/v8.59.3/packages/eslint-plugin\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@typescript-eslint/parser` from 8.56.0 to 8.59.3\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases\"\u003e@​typescript-eslint/parser's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev8.59.3\u003c/h2\u003e\n\u003ch2\u003e8.59.3 (2026-05-11)\u003c/h2\u003e\n\u003cp\u003eThis was a version bump only, there were no code changes.\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.3\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003ev8.59.2\u003c/h2\u003e\n\u003ch2\u003e8.59.2 (2026-05-04)\u003c/h2\u003e\n\u003ch3\u003e🩹 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unsafe-type-assertion] handle crash on recursive template literal types (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12150\"\u003e#12150\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-deprecated] object destructuring values should be treated as declarations (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12292\"\u003e#12292\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003erule-tester:\u003c/strong\u003e add TypeScript as a peer dependency (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12288\"\u003e#12288\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e❤️ Thank You\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eDariusz Czajkowski\u003c/li\u003e\n\u003cli\u003eDima Barabash\u003c/li\u003e\n\u003cli\u003eKirk Waiblinger \u003ca href=\"https://github.com/kirkwaiblinger\"\u003e\u003ccode\u003e@​kirkwaiblinger\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.2\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003ev8.59.1\u003c/h2\u003e\n\u003ch2\u003e8.59.1 (2026-04-27)\u003c/h2\u003e\n\u003ch3\u003e🩹 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-type-assertion] fix crash \u0026quot;TypeError: checker.getTypeArguments is not a function\u0026quot; (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12246\"\u003e#12246\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-type-assertion] preserve index signatures in undefined unions (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12257\"\u003e#12257\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-type-assertion] preserve phantom type arguments in generic inference (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12269\"\u003e#12269\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-type-assertion] avoid false positive in logical assignment assertions (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12278\"\u003e#12278\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-type-arguments] handle instantiation expressions (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12220\"\u003e#12220\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-condition] treat void as nullish in no-unnecessary-condition (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12241\"\u003e#12241\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e❤️ Thank You\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eanasm266 \u003ca href=\"https://github.com/anasm266\"\u003e\u003ccode\u003e@​anasm266\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAnshika Jain \u003ca href=\"https://github.com/Anshikakalpana\"\u003e\u003ccode\u003e@​Anshikakalpana\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUlrich Stark\u003c/li\u003e\n\u003cli\u003eyugo innami \u003ca href=\"https://github.com/nami8824\"\u003e\u003ccode\u003e@​nami8824\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.1\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/parser/CHANGELOG.md\"\u003e@​typescript-eslint/parser's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e8.59.3 (2026-05-11)\u003c/h2\u003e\n\u003cp\u003eThis was a version bump only for parser to align it with other projects, there were no code changes.\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.3\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003e8.59.2 (2026-05-04)\u003c/h2\u003e\n\u003cp\u003eThis was a version bump only for parser to align it with other projects, there were no code changes.\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.2\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003e8.59.1 (2026-04-27)\u003c/h2\u003e\n\u003cp\u003eThis was a version bump only for parser to align it with other projects, there were no code changes.\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.1\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003e8.59.0 (2026-04-20)\u003c/h2\u003e\n\u003cp\u003eThis was a version bump only for parser to align it with other projects, there were no code changes.\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.0\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003e8.58.2 (2026-04-13)\u003c/h2\u003e\n\u003ch3\u003e🩹 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eremove tsbuildinfo cache file from published packages (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12187\"\u003e#12187\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e❤️ Thank You\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAbhijeet Singh \u003ca href=\"https://github.com/cseas\"\u003e\u003ccode\u003e@​cseas\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.58.2\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003e8.58.1 (2026-04-08)\u003c/h2\u003e\n\u003cp\u003eThis was a version bump only for parser to align it with other projects, there were no code changes.\u003c/p\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/48e13c0261e3cb1bf4f4dfaa462cdb3a56ef7383\"\u003e\u003ccode\u003e48e13c0\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.59.3\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/44f9625336841a8ee3eb01a9e02e49b1d7b12648\"\u003e\u003ccode\u003e44f9625\u003c/code\u003e\u003c/a\u003e chore(deps): update vitest monorepo to v4.1.5 (\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/parser/issues/12307\"\u003e#12307\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/2ec35f1760aade4df4c631d76d78c7ed5e136333\"\u003e\u003ccode\u003e2ec35f1\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.59.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/52457932e5507b5ca01e720a541f3f8d01e09b9d\"\u003e\u003ccode\u003e5245793\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.59.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/ea9ae4f8817873480e3501145059f63e39e8d8a1\"\u003e\u003ccode\u003eea9ae4f\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.59.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/90c2803a4c250e0343598d41e973f95e743bf4ce\"\u003e\u003ccode\u003e90c2803\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.58.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/be6b49a02d68db9bdc8985e7e9e1598700fda2fa\"\u003e\u003ccode\u003ebe6b49a\u003c/code\u003e\u003c/a\u003e fix: remove tsbuildinfo cache file from published packages (\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/parser/issues/12187\"\u003e#12187\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/5311ed312eadf4e238324f2726ae0b1f3f2206e6\"\u003e\u003ccode\u003e5311ed3\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.58.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/493341709fe7d1d6433332b7bd2724e3332c7cdf\"\u003e\u003ccode\u003e4933417\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.58.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/8cde2d06fb9bc591a4c93452509ddbd600c76a35\"\u003e\u003ccode\u003e8cde2d0\u003c/code\u003e\u003c/a\u003e feat: support TypeScript 6 (\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/parser/issues/12124\"\u003e#12124\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commits/v8.59.3/packages/parser\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `eslint` from 9.39.2 to 10.4.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/eslint/eslint/releases\"\u003eeslint's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev10.4.0\u003c/h2\u003e\n\u003ch2\u003eFeatures\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/1a45ec596af1dd5f880e6874cb8f24dafb6a7ecf\"\u003e\u003ccode\u003e1a45ec5\u003c/code\u003e\u003c/a\u003e feat: check sequence expressions in \u003ccode\u003efor-direction\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20701\"\u003e#20701\u003c/a\u003e) (kuldeep kumar)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/450040bd89b989b3531824c6be45feb5fe3d936b\"\u003e\u003ccode\u003e450040b\u003c/code\u003e\u003c/a\u003e feat: add \u003ccode\u003eincludeIgnoreFile()\u003c/code\u003e to \u003ccode\u003eeslint/config\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20735\"\u003e#20735\u003c/a\u003e) (Kirk Waiblinger)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eBug Fixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/544c0c3da589166ad8e5d634f35d3d06701c57be\"\u003e\u003ccode\u003e544c0c3\u003c/code\u003e\u003c/a\u003e fix: escape code path DOT labels in debug output (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20866\"\u003e#20866\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/6799431203f2579632d0870f98ba132067f4040c\"\u003e\u003ccode\u003e6799431\u003c/code\u003e\u003c/a\u003e fix: update dependency \u003ccode\u003e@​eslint/config-helpers\u003c/code\u003e to ^0.6.0 (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20850\"\u003e#20850\u003c/a\u003e) (renovate[bot])\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/f078fef5005dceb14fc162aab7c7200e027688dd\"\u003e\u003ccode\u003ef078fef\u003c/code\u003e\u003c/a\u003e fix: handle non-array deprecated rule replacements (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20825\"\u003e#20825\u003c/a\u003e) (xbinaryx)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eDocumentation\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/7e52a7151fb92eec0e0f67fe4e5ddbd1ccce796f\"\u003e\u003ccode\u003e7e52a71\u003c/code\u003e\u003c/a\u003e docs: add mention of \u003ccode\u003e@eslint-react/eslint-plugin\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20869\"\u003e#20869\u003c/a\u003e) (Pavel)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/db3468ba746407d7f286f18f7ea9db6df0e3bc08\"\u003e\u003ccode\u003edb3468b\u003c/code\u003e\u003c/a\u003e docs: tweak wording around ambiguous CJS-vs-ESM config (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20865\"\u003e#20865\u003c/a\u003e) (Kirk Waiblinger)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/90846643ec6e97d447ae0d831fabe6d17b0a998a\"\u003e\u003ccode\u003e9084664\u003c/code\u003e\u003c/a\u003e docs: Update README (GitHub Actions Bot)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/9cc73875046e3c4b8313644cbb1e99e26b36bd3f\"\u003e\u003ccode\u003e9cc7387\u003c/code\u003e\u003c/a\u003e docs: Update README (GitHub Actions Bot)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/3d7b5484407403817aa9071a394d336d8ea96eb5\"\u003e\u003ccode\u003e3d7b548\u003c/code\u003e\u003c/a\u003e docs: Update README (GitHub Actions Bot)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/191ec3c0a3f94ce0f110df761f0b2b8949011ccb\"\u003e\u003ccode\u003e191ec3c\u003c/code\u003e\u003c/a\u003e docs: Update README (GitHub Actions Bot)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eChores\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/6616856f28fa514a30f87b5539fc100d739a94bf\"\u003e\u003ccode\u003e6616856\u003c/code\u003e\u003c/a\u003e chore: upgrade knip to v6 (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20875\"\u003e#20875\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/d13b084a3ad02f926e9addaa35fc383759ea5554\"\u003e\u003ccode\u003ed13b084\u003c/code\u003e\u003c/a\u003e ci: ensure auto-created PRs run CI (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20860\"\u003e#20860\u003c/a\u003e) (lumir)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/e71c7af86dce9acc1d18cb12d2184309f6841594\"\u003e\u003ccode\u003ee71c7af\u003c/code\u003e\u003c/a\u003e ci: bump pnpm/action-setup from 6.0.5 to 6.0.7 (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20862\"\u003e#20862\u003c/a\u003e) (dependabot[bot])\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/d84393dea170f54191fd20c8268b52c81c0ccd99\"\u003e\u003ccode\u003ed84393d\u003c/code\u003e\u003c/a\u003e test: add unit tests for SuppressionsService.applySuppressions() (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20863\"\u003e#20863\u003c/a\u003e) (kuldeep kumar)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/24db8cb8e6f07fba667121777a15b1785486be94\"\u003e\u003ccode\u003e24db8cb\u003c/code\u003e\u003c/a\u003e test: add tests for SuppressionsService.save() (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20802\"\u003e#20802\u003c/a\u003e) (kuldeep kumar)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/2ef0549cac4a9537e4c3a26b9f3edd4c99476bf6\"\u003e\u003ccode\u003e2ef0549\u003c/code\u003e\u003c/a\u003e chore: update ecosystem plugins (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20857\"\u003e#20857\u003c/a\u003e) (github-actions[bot])\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/a4297918d264d229a06cd96051ef9b91c7b86732\"\u003e\u003ccode\u003ea429791\u003c/code\u003e\u003c/a\u003e ci: remove \u003ccode\u003eeslint-webpack-plugin\u003c/code\u003e types integration test (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20668\"\u003e#20668\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/9e37386aa7f2ce220b2ef74a6afbac5f6b3527c5\"\u003e\u003ccode\u003e9e37386\u003c/code\u003e\u003c/a\u003e chore: replace \u003ccode\u003erecast\u003c/code\u003e with range approach in code-sample-minimizer (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20682\"\u003e#20682\u003c/a\u003e) (Copilot)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/0dd1f9ffc9a07704d46e2a4c8d4ccc0d0908b0c0\"\u003e\u003ccode\u003e0dd1f9f\u003c/code\u003e\u003c/a\u003e test: disable warning for \u003ccode\u003evm.constants.USE_MAIN_CONTEXT_DEFAULT_LOADER\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20845\"\u003e#20845\u003c/a\u003e) (Francesco Trotta)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/9da3c7bc92d9579f8db19ecb56e718538d09db2b\"\u003e\u003ccode\u003e9da3c7b\u003c/code\u003e\u003c/a\u003e refactor: remove deprecated \u003ccode\u003emeta.language\u003c/code\u003e and migrate \u003ccode\u003emeta.dialects\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20716\"\u003e#20716\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/2099ed12a0a74c3d7f0808514362af2499b4fe2b\"\u003e\u003ccode\u003e2099ed1\u003c/code\u003e\u003c/a\u003e refactor: add \u003ccode\u003emeta.defaultOptions\u003c/code\u003e to more rules, enable linting (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20800\"\u003e#20800\u003c/a\u003e) (xbinaryx)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/f1dfbc9ca57196de7092e1888cc99427bd6fe06e\"\u003e\u003ccode\u003ef1dfbc9\u003c/code\u003e\u003c/a\u003e chore: update ecosystem plugins (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20836\"\u003e#20836\u003c/a\u003e) (github-actions[bot])\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/c75941390c14728806cd4baef4f6072f6de78318\"\u003e\u003ccode\u003ec759413\u003c/code\u003e\u003c/a\u003e ci: bump pnpm/action-setup from 6.0.3 to 6.0.5 (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20843\"\u003e#20843\u003c/a\u003e) (dependabot[bot])\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/5b817d6fdc9ae2c35b528dc662b2eca8f40f64aa\"\u003e\u003ccode\u003e5b817d6\u003c/code\u003e\u003c/a\u003e test: add unit tests for lib/shared/ast-utils (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20838\"\u003e#20838\u003c/a\u003e) (kuldeep kumar)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/1c13ae3934c198c494e5958fa3a68b33244ff06a\"\u003e\u003ccode\u003e1c13ae3\u003c/code\u003e\u003c/a\u003e test: add unit tests for lib/shared/severity (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20835\"\u003e#20835\u003c/a\u003e) (kuldeep kumar)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev10.3.0\u003c/h2\u003e\n\u003ch2\u003eFeatures\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/379571a975f2b24d88037b9de2e72ec61d004130\"\u003e\u003ccode\u003e379571a\u003c/code\u003e\u003c/a\u003e feat: add suggestions for no-unused-private-class-members (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20773\"\u003e#20773\u003c/a\u003e) (sethamus)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eBug Fixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/b6ae5cf07b9b51802367539cb24b245b61eaa37c\"\u003e\u003ccode\u003eb6ae5cf\u003c/code\u003e\u003c/a\u003e fix: handle unavailable require cache (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20812\"\u003e#20812\u003c/a\u003e) (Simon Podlipsky)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/6fb3685bcbe9a6f72fd7dfb9129686b6fb96b0bd\"\u003e\u003ccode\u003e6fb3685\u003c/code\u003e\u003c/a\u003e fix: rule suggestions cause continuation in class body (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20787\"\u003e#20787\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eDocumentation\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/32cc7ab4ec653ce89da92deb5c40a9f4fc707fe5\"\u003e\u003ccode\u003e32cc7ab\u003c/code\u003e\u003c/a\u003e docs: fix typos in docs and comments (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20809\"\u003e#20809\u003c/a\u003e) (Tanuj Kanti)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/7f479376a2fa463d823ab762db6bb37ce8d2ee8f\"\u003e\u003ccode\u003e7f47937\u003c/code\u003e\u003c/a\u003e docs: Update README (GitHub Actions Bot)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eChores\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/d32235ec19ceea211fa86452afa383ca05f5c2f9\"\u003e\u003ccode\u003ed32235e\u003c/code\u003e\u003c/a\u003e ci: use pnpm in \u003ccode\u003eeslint-flat-config-utils\u003c/code\u003e type integration test (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20826\"\u003e#20826\u003c/a\u003e) (Francesco Trotta)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/3ffb14ea517de750ed1181579ef844af342e4096\"\u003e\u003ccode\u003e3ffb14e\u003c/code\u003e\u003c/a\u003e chore: clean up typos in comments and JSDoc (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20821\"\u003e#20821\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/452c4010c07dc2e36fe6ec6a8c48298878e86887\"\u003e\u003ccode\u003e452c401\u003c/code\u003e\u003c/a\u003e 10.4.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/b6417e8b55c9525070d6e168b485ce6ff21688ed\"\u003e\u003ccode\u003eb6417e8\u003c/code\u003e\u003c/a\u003e Build: changelog update for 10.4.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/6616856f28fa514a30f87b5539fc100d739a94bf\"\u003e\u003ccode\u003e6616856\u003c/code\u003e\u003c/a\u003e chore: upgrade knip to v6 (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20875\"\u003e#20875\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/d13b084a3ad02f926e9addaa35fc383759ea5554\"\u003e\u003ccode\u003ed13b084\u003c/code\u003e\u003c/a\u003e ci: ensure auto-created PRs run CI (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20860\"\u003e#20860\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/7e52a7151fb92eec0e0f67fe4e5ddbd1ccce796f\"\u003e\u003ccode\u003e7e52a71\u003c/code\u003e\u003c/a\u003e docs: add mention of \u003ccode\u003e@eslint-react/eslint-plugin\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20869\"\u003e#20869\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/e71c7af86dce9acc1d18cb12d2184309f6841594\"\u003e\u003ccode\u003ee71c7af\u003c/code\u003e\u003c/a\u003e ci: bump pnpm/action-setup from 6.0.5 to 6.0.7 (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20862\"\u003e#20862\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/544c0c3da589166ad8e5d634f35d3d06701c57be\"\u003e\u003ccode\u003e544c0c3\u003c/code\u003e\u003c/a\u003e fix: escape code path DOT labels in debug output (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20866\"\u003e#20866\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/db3468ba746407d7f286f18f7ea9db6df0e3bc08\"\u003e\u003ccode\u003edb3468b\u003c/code\u003e\u003c/a\u003e docs: tweak wording around ambiguous CJS-vs-ESM config (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20865\"\u003e#20865\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/d84393dea170f54191fd20c8268b52c81c0ccd99\"\u003e\u003ccode\u003ed84393d\u003c/code\u003e\u003c/a\u003e test: add unit tests for SuppressionsService.applySuppressions() (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20863\"\u003e#20863\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/90846643ec6e97d447ae0d831fabe6d17b0a998a\"\u003e\u003ccode\u003e9084664\u003c/code\u003e\u003c/a\u003e docs: Update README\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/eslint/eslint/compare/v9.39.2...v10.4.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `eslint-plugin-react-hooks` from 7.0.1 to 7.1.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/facebook/react/releases\"\u003eeslint-plugin-react-hooks's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eeslint-plugin-react-hooks@7.1.1 (April 17, 2026)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eNote:\u003c/strong\u003e 7.1.0 accidentally removed the \u003ccode\u003ecomponent-hook-factories\u003c/code\u003e rule, causing errors for users who referenced it in their ESLint config. This is now fixed.\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdd deprecated no-op \u003ccode\u003ecomponent-hook-factories\u003c/code\u003e rule for backwards compatibility. (\u003ca href=\"https://github.com/mofeiZ\"\u003e\u003ccode\u003e@​mofeiZ\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/36307\"\u003e#36307\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eeslint-plugin-react-hooks@7.1.0 (April 16, 2026)\u003c/h2\u003e\n\u003cp\u003eThis release adds ESLint v10 support, improves performance by skipping compilation for non-React files, and includes compiler lint improvements including better \u003ccode\u003eset-state-in-effect\u003c/code\u003e detection, improved ref validation, and more helpful error reporting.\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdd ESLint v10 support. (\u003ca href=\"https://github.com/azat-io\"\u003e\u003ccode\u003e@​azat-io\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/35720\"\u003e#35720\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSkip compilation for non-React files to improve performance. (\u003ca href=\"https://github.com/josephsavona\"\u003e\u003ccode\u003e@​josephsavona\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/35589\"\u003e#35589\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix exhaustive deps bug with Flow type casting. (\u003ca href=\"https://github.com/jorge-cab\"\u003e\u003ccode\u003e@​jorge-cab\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/35691\"\u003e#35691\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix \u003ccode\u003euseEffectEvent\u003c/code\u003e checks in component syntax. (\u003ca href=\"https://github.com/jbrown215\"\u003e\u003ccode\u003e@​jbrown215\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/35041\"\u003e#35041\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eImproved \u003ccode\u003eset-state-in-effect\u003c/code\u003e validation with fewer false negatives. (\u003ca href=\"https://github.com/jorge-cab\"\u003e\u003ccode\u003e@​jorge-cab\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/35134\"\u003e#35134\u003c/a\u003e, \u003ca href=\"https://github.com/josephsavona\"\u003e\u003ccode\u003e@​josephsavona\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/35147\"\u003e#35147\u003c/a\u003e, \u003ca href=\"https://github.com/jackpope\"\u003e\u003ccode\u003e@​jackpope\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/35214\"\u003e#35214\u003c/a\u003e, \u003ca href=\"https://github.com/chesnokov-tony\"\u003e\u003ccode\u003e@​chesnokov-tony\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/35419\"\u003e#35419\u003c/a\u003e, \u003ca href=\"https://github.com/jsleitor\"\u003e\u003ccode\u003e@​jsleitor\u003c/code...\n\n_Description has been truncated_","html_url":"https://github.com/mr-ElAmine/test-1/pull/7","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/mr-ElAmine%2Ftest-1/issues/7","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/7/packages"}},{"old_version":"5.1.3","new_version":"5.2.0","update_type":"minor","path":null,"pr_created_at":"2026-05-18T05:32:37.000Z","version_change":"5.1.3 → 5.2.0","issue":{"uuid":"4466518025","node_id":"PR_kwDOR1uAnc7chJO1","number":7,"state":"closed","title":"deps(deps): bump the all-dependencies group across 1 directory with 66 updates","user":"dependabot[bot]","labels":[],"assignees":[],"locked":false,"comments_count":2,"pull_request":true,"closed_at":"2026-05-25T05:16:59.000Z","author_association":null,"state_reason":null,"created_at":"2026-05-18T05:32:37.000Z","updated_at":"2026-05-25T05:17:01.000Z","time_to_close":603862,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"deps(deps): bump","group_name":"all-dependencies","update_count":66,"packages":[{"name":"@eslint-react/eslint-plugin","old_version":"2.13.0","new_version":"5.8.1","repository_url":"https://github.com/Rel1cx/eslint-react"},{"name":"@eslint/js","old_version":"9.39.2","new_version":"10.0.1","repository_url":"https://github.com/eslint/eslint"},{"name":"@typescript-eslint/eslint-plugin","old_version":"8.56.0","new_version":"8.59.3","repository_url":"https://github.com/typescript-eslint/typescript-eslint"},{"name":"@typescript-eslint/parser","old_version":"8.56.0","new_version":"8.59.3","repository_url":"https://github.com/typescript-eslint/typescript-eslint"},{"name":"eslint","old_version":"9.39.2","new_version":"10.4.0","repository_url":"https://github.com/eslint/eslint"},{"name":"eslint-plugin-react-hooks","old_version":"7.0.1","new_version":"7.1.1","repository_url":"https://github.com/facebook/react"},{"name":"globals","old_version":"17.3.0","new_version":"17.6.0","repository_url":"https://github.com/sindresorhus/globals"},{"name":"graphql","old_version":"16.12.0","new_version":"16.14.0","repository_url":"https://github.com/graphql/graphql-js"},{"name":"happy-dom","old_version":"20.6.2","new_version":"20.9.0","repository_url":"https://github.com/capricorn86/happy-dom"},{"name":"jiti","old_version":"2.6.1","new_version":"2.7.0","repository_url":"https://github.com/unjs/jiti"},{"name":"lint-staged","old_version":"16.2.7","new_version":"17.0.5","repository_url":"https://github.com/lint-staged/lint-staged"},{"name":"mermaid","old_version":"11.12.3","new_version":"11.15.0","repository_url":"https://github.com/mermaid-js/mermaid"},{"name":"prettier","old_version":"3.8.1","new_version":"3.8.3","repository_url":"https://github.com/prettier/prettier"},{"name":"react","old_version":"19.2.4","new_version":"19.2.6","repository_url":"https://github.com/facebook/react"},{"name":"typescript","old_version":"5.9.3","new_version":"6.0.3","repository_url":"https://github.com/microsoft/TypeScript"},{"name":"typescript-eslint","old_version":"8.56.0","new_version":"8.59.3","repository_url":"https://github.com/typescript-eslint/typescript-eslint"},{"name":"typescript-language-server","old_version":"5.1.3","new_version":"5.2.0","repository_url":"https://github.com/typescript-language-server/typescript-language-server"},{"name":"vite","old_version":"7.3.1","new_version":"8.0.13","repository_url":"https://github.com/vitejs/vite"},{"name":"vitepress","old_version":"2.0.0-alpha.16","new_version":"2.0.0-alpha.17","repository_url":"https://github.com/vuejs/vitepress"},{"name":"vitepress-plugin-llms","old_version":"1.11.0","new_version":"1.12.2","repository_url":"https://github.com/okineadev/vitepress-plugin-llms"},{"name":"vitest","old_version":"4.0.18","new_version":"4.1.6","repository_url":"https://github.com/vitest-dev/vitest"},{"name":"wrangler","old_version":"4.66.0","new_version":"4.92.0","repository_url":"https://github.com/cloudflare/workers-sdk"},{"name":"@ai-sdk/openai","old_version":"3.0.29","new_version":"3.0.64","repository_url":"https://github.com/vercel/ai"},{"name":"@better-auth/passkey","old_version":"1.4.18","new_version":"1.6.11","repository_url":"https://github.com/better-auth/better-auth"},{"name":"@better-auth/stripe","old_version":"1.4.18","new_version":"1.6.11","repository_url":"https://github.com/better-auth/better-auth"},{"name":"@trpc/server","old_version":"11.10.0","new_version":"11.17.0","repository_url":"https://github.com/trpc/trpc"},{"name":"ai","old_version":"6.0.91","new_version":"6.0.184","repository_url":"https://github.com/vercel/ai"},{"name":"better-auth","old_version":"1.4.18","new_version":"1.6.11","repository_url":"https://github.com/better-auth/better-auth"},{"name":"drizzle-orm","old_version":"0.45.1","new_version":"0.45.2","repository_url":"https://github.com/drizzle-team/drizzle-orm"},{"name":"postgres","old_version":"3.4.8","new_version":"3.4.9","repository_url":"https://github.com/porsager/postgres"},{"name":"resend","old_version":"6.9.2","new_version":"6.12.3","repository_url":"https://github.com/resend/resend-node"},{"name":"stripe","old_version":"20.3.1","new_version":"22.1.1","repository_url":"https://github.com/stripe/stripe-node"},{"name":"@cloudflare/workers-types","old_version":"4.20260218.0","new_version":"4.20260518.1","repository_url":"https://github.com/cloudflare/workerd"},{"name":"@types/bun","old_version":"1.3.9","new_version":"1.3.14","repository_url":"https://github.com/DefinitelyTyped/DefinitelyTyped"},{"name":"hono","old_version":"4.11.10","new_version":"4.12.19","repository_url":"https://github.com/honojs/hono"},{"name":"@tanstack/react-query","old_version":"5.90.21","new_version":"5.100.10","repository_url":"https://github.com/TanStack/query"},{"name":"@tanstack/react-router","old_version":"1.161.1","new_version":"1.170.4","repository_url":"https://github.com/TanStack/router"},{"name":"@trpc/client","old_version":"11.10.0","new_version":"11.17.0","repository_url":"https://github.com/trpc/trpc"},{"name":"@trpc/tanstack-react-query","old_version":"11.10.0","new_version":"11.17.0","repository_url":"https://github.com/trpc/trpc"},{"name":"jotai","old_version":"2.17.1","new_version":"2.20.0","repository_url":"https://github.com/pmndrs/jotai"},{"name":"jotai-effect","old_version":"2.2.3","new_version":"2.3.1","repository_url":"https://github.com/jotaijs/jotai-effect"},{"name":"lucide-react","old_version":"0.574.0","new_version":"1.16.0","repository_url":"https://github.com/lucide-icons/lucide"},{"name":"react-dom","old_version":"19.2.4","new_version":"19.2.6","repository_url":"https://github.com/facebook/react"},{"name":"tailwind-merge","old_version":"3.4.1","new_version":"3.6.0","repository_url":"https://github.com/dcastil/tailwind-merge"},{"name":"@tailwindcss/postcss","old_version":"4.2.0","new_version":"4.3.0","repository_url":"https://github.com/tailwindlabs/tailwindcss"},{"name":"@tanstack/react-query-devtools","old_version":"5.91.3","new_version":"5.100.10","repository_url":"https://github.com/TanStack/query"},{"name":"@tanstack/react-router-devtools","old_version":"1.161.1","new_version":"1.167.0","repository_url":"https://github.com/TanStack/router"},{"name":"@tanstack/router-plugin","old_version":"1.161.1","new_version":"1.168.6","repository_url":"https://github.com/TanStack/router"},{"name":"@types/node","old_version":"25.2.3","new_version":"25.8.0","repository_url":"https://github.com/DefinitelyTyped/DefinitelyTyped"},{"name":"@vitejs/plugin-react","old_version":"5.1.4","new_version":"6.0.2","repository_url":"https://github.com/vitejs/vite-plugin-react"},{"name":"@vitejs/plugin-react-swc","old_version":"4.2.3","new_version":"4.3.1","repository_url":"https://github.com/vitejs/vite-plugin-react"},{"name":"autoprefixer","old_version":"10.4.24","new_version":"10.5.0","repository_url":"https://github.com/postcss/autoprefixer"},{"name":"globby","old_version":"16.1.1","new_version":"16.2.0","repository_url":"https://github.com/sindresorhus/globby"},{"name":"@react-email/components","old_version":"1.0.8","new_version":"1.0.12","repository_url":"https://github.com/resend/react-email"},{"name":"@react-email/render","old_version":"2.0.4","new_version":"2.0.8","repository_url":"https://github.com/resend/react-email"},{"name":"@react-email/preview-server","old_version":"5.2.8","new_version":"5.2.10","repository_url":"https://github.com/resend/react-email"},{"name":"react-email","old_version":"5.2.8","new_version":"6.1.4","repository_url":"https://github.com/resend/react-email"},{"name":"@astrojs/react","old_version":"4.4.2","new_version":"5.0.5","repository_url":"https://github.com/withastro/astro"},{"name":"astro","old_version":"5.17.2","new_version":"6.3.3","repository_url":"https://github.com/withastro/astro"},{"name":"dotenv","old_version":"17.3.1","new_version":"17.4.2","repository_url":"https://github.com/motdotla/dotenv"},{"name":"drizzle-kit","old_version":"0.31.9","new_version":"0.31.10","repository_url":"https://github.com/drizzle-team/drizzle-orm"},{"name":"@modelcontextprotocol/sdk","old_version":"1.26.0","new_version":"1.29.0","repository_url":"https://github.com/modelcontextprotocol/typescript-sdk"},{"name":"got","old_version":"14.6.6","new_version":"15.0.5","repository_url":"https://github.com/sindresorhus/got"}],"path":null,"ecosystem":"npm"},"body":"Bumps the all-dependencies group with 63 updates in the / directory:\n\n| Package | From | To |\n| --- | --- | --- |\n| [@eslint-react/eslint-plugin](https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin) | `2.13.0` | `5.8.1` |\n| [@eslint/js](https://github.com/eslint/eslint/tree/HEAD/packages/js) | `9.39.2` | `10.0.1` |\n| [@typescript-eslint/eslint-plugin](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin) | `8.56.0` | `8.59.3` |\n| [@typescript-eslint/parser](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/parser) | `8.56.0` | `8.59.3` |\n| [eslint](https://github.com/eslint/eslint) | `9.39.2` | `10.4.0` |\n| [eslint-plugin-react-hooks](https://github.com/facebook/react/tree/HEAD/packages/eslint-plugin-react-hooks) | `7.0.1` | `7.1.1` |\n| [globals](https://github.com/sindresorhus/globals) | `17.3.0` | `17.6.0` |\n| [graphql](https://github.com/graphql/graphql-js) | `16.12.0` | `16.14.0` |\n| [happy-dom](https://github.com/capricorn86/happy-dom) | `20.6.2` | `20.9.0` |\n| [jiti](https://github.com/unjs/jiti) | `2.6.1` | `2.7.0` |\n| [lint-staged](https://github.com/lint-staged/lint-staged) | `16.2.7` | `17.0.5` |\n| [mermaid](https://github.com/mermaid-js/mermaid) | `11.12.3` | `11.15.0` |\n| [prettier](https://github.com/prettier/prettier) | `3.8.1` | `3.8.3` |\n| [react](https://github.com/facebook/react/tree/HEAD/packages/react) | `19.2.4` | `19.2.6` |\n| [typescript](https://github.com/microsoft/TypeScript) | `5.9.3` | `6.0.3` |\n| [typescript-eslint](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/typescript-eslint) | `8.56.0` | `8.59.3` |\n| [typescript-language-server](https://github.com/typescript-language-server/typescript-language-server) | `5.1.3` | `5.2.0` |\n| [vite](https://github.com/vitejs/vite/tree/HEAD/packages/vite) | `7.3.1` | `8.0.13` |\n| [vitepress](https://github.com/vuejs/vitepress) | `2.0.0-alpha.16` | `2.0.0-alpha.17` |\n| [vitepress-plugin-llms](https://github.com/okineadev/vitepress-plugin-llms) | `1.11.0` | `1.12.2` |\n| [vitest](https://github.com/vitest-dev/vitest/tree/HEAD/packages/vitest) | `4.0.18` | `4.1.6` |\n| [wrangler](https://github.com/cloudflare/workers-sdk/tree/HEAD/packages/wrangler) | `4.66.0` | `4.92.0` |\n| [@ai-sdk/openai](https://github.com/vercel/ai/tree/HEAD/packages/openai) | `3.0.29` | `3.0.64` |\n| [@better-auth/passkey](https://github.com/better-auth/better-auth/tree/HEAD/packages/passkey) | `1.4.18` | `1.6.11` |\n| [@better-auth/stripe](https://github.com/better-auth/better-auth/tree/HEAD/packages/stripe) | `1.4.18` | `1.6.11` |\n| [@trpc/server](https://github.com/trpc/trpc/tree/HEAD/packages/server) | `11.10.0` | `11.17.0` |\n| [ai](https://github.com/vercel/ai/tree/HEAD/packages/ai) | `6.0.91` | `6.0.184` |\n| [better-auth](https://github.com/better-auth/better-auth/tree/HEAD/packages/better-auth) | `1.4.18` | `1.6.11` |\n| [drizzle-orm](https://github.com/drizzle-team/drizzle-orm) | `0.45.1` | `0.45.2` |\n| [postgres](https://github.com/porsager/postgres) | `3.4.8` | `3.4.9` |\n| [resend](https://github.com/resend/resend-node) | `6.9.2` | `6.12.3` |\n| [stripe](https://github.com/stripe/stripe-node) | `20.3.1` | `22.1.1` |\n| [@cloudflare/workers-types](https://github.com/cloudflare/workerd) | `4.20260218.0` | `4.20260518.1` |\n| [@types/bun](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/bun) | `1.3.9` | `1.3.14` |\n| [hono](https://github.com/honojs/hono) | `4.11.10` | `4.12.19` |\n| [@tanstack/react-query](https://github.com/TanStack/query/tree/HEAD/packages/react-query) | `5.90.21` | `5.100.10` |\n| [@tanstack/react-router](https://github.com/TanStack/router/tree/HEAD/packages/react-router) | `1.161.1` | `1.170.4` |\n| [@trpc/client](https://github.com/trpc/trpc/tree/HEAD/packages/client) | `11.10.0` | `11.17.0` |\n| [@trpc/tanstack-react-query](https://github.com/trpc/trpc/tree/HEAD/packages/tanstack-react-query) | `11.10.0` | `11.17.0` |\n| [jotai](https://github.com/pmndrs/jotai) | `2.17.1` | `2.20.0` |\n| [jotai-effect](https://github.com/jotaijs/jotai-effect) | `2.2.3` | `2.3.1` |\n| [lucide-react](https://github.com/lucide-icons/lucide/tree/HEAD/packages/lucide-react) | `0.574.0` | `1.16.0` |\n| [react-dom](https://github.com/facebook/react/tree/HEAD/packages/react-dom) | `19.2.4` | `19.2.6` |\n| [tailwind-merge](https://github.com/dcastil/tailwind-merge) | `3.4.1` | `3.6.0` |\n| [@tailwindcss/postcss](https://github.com/tailwindlabs/tailwindcss/tree/HEAD/packages/@tailwindcss-postcss) | `4.2.0` | `4.3.0` |\n| [@tanstack/react-query-devtools](https://github.com/TanStack/query/tree/HEAD/packages/react-query-devtools) | `5.91.3` | `5.100.10` |\n| [@tanstack/react-router-devtools](https://github.com/TanStack/router/tree/HEAD/packages/react-router-devtools) | `1.161.1` | `1.167.0` |\n| [@tanstack/router-plugin](https://github.com/TanStack/router/tree/HEAD/packages/router-plugin) | `1.161.1` | `1.168.6` |\n| [@types/node](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/node) | `25.2.3` | `25.8.0` |\n| [@vitejs/plugin-react](https://github.com/vitejs/vite-plugin-react/tree/HEAD/packages/plugin-react) | `5.1.4` | `6.0.2` |\n| [@vitejs/plugin-react-swc](https://github.com/vitejs/vite-plugin-react/tree/HEAD/packages/plugin-react-swc) | `4.2.3` | `4.3.1` |\n| [autoprefixer](https://github.com/postcss/autoprefixer) | `10.4.24` | `10.5.0` |\n| [globby](https://github.com/sindresorhus/globby) | `16.1.1` | `16.2.0` |\n| [@react-email/components](https://github.com/resend/react-email/tree/HEAD/packages/components) | `1.0.8` | `1.0.12` |\n| [@react-email/render](https://github.com/resend/react-email/tree/HEAD/packages/render) | `2.0.4` | `2.0.8` |\n| [@react-email/preview-server](https://github.com/resend/react-email/tree/HEAD/packages/preview-server) | `5.2.8` | `5.2.10` |\n| [react-email](https://github.com/resend/react-email/tree/HEAD/packages/react-email) | `5.2.8` | `6.1.4` |\n| [@astrojs/react](https://github.com/withastro/astro/tree/HEAD/packages/integrations/react) | `4.4.2` | `5.0.5` |\n| [astro](https://github.com/withastro/astro/tree/HEAD/packages/astro) | `5.17.2` | `6.3.3` |\n| [dotenv](https://github.com/motdotla/dotenv) | `17.3.1` | `17.4.2` |\n| [drizzle-kit](https://github.com/drizzle-team/drizzle-orm) | `0.31.9` | `0.31.10` |\n| [@modelcontextprotocol/sdk](https://github.com/modelcontextprotocol/typescript-sdk) | `1.26.0` | `1.29.0` |\n| [got](https://github.com/sindresorhus/got) | `14.6.6` | `15.0.5` |\n\n\nUpdates `@eslint-react/eslint-plugin` from 2.13.0 to 5.8.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/Rel1cx/eslint-react/releases\"\u003e@​eslint-react/eslint-plugin's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev5.8.1 (2026-05-18)\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003ch3\u003e📝 Documentation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eRestructured rule documentation across all plugins from the \u003ccode\u003eCommon Violations / Invalid / Valid\u003c/code\u003e format to the new \u003ccode\u003eExamples / scenario-based / Troubleshooting / Further Reading\u003c/code\u003e format (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1784\"\u003e#1784\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eUpdated README tagline and description, removed the Benchmark section, and fixed migration guide links (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1783\"\u003e#1783\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eUpdated website recipe docs, FAQ, and third-party plugins page (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1783\"\u003e#1783\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🏗️ Internal\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpdated \u003ccode\u003escripts/scaffold-rule.ts\u003c/code\u003e and the rule request issue template to match the new documentation structure (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1782\"\u003e#1782\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/Rel1cx/eslint-react/compare/v5.8.0...v5.8.1\"\u003ehttps://github.com/Rel1cx/eslint-react/compare/v5.8.0...v5.8.1\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev5.8.0 (2026-05-17)\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003ch3\u003e🪄 Improvements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003e\u003ccode\u003ereact-jsx/no-children-prop\u003c/code\u003e\u003c/strong\u003e, \u003cstrong\u003e\u003ccode\u003ereact-jsx/no-children-prop-with-children\u003c/code\u003e\u003c/strong\u003e: Added support for \u003ccode\u003ecreateElement\u003c/code\u003e calls in addition to JSX elements (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1780\"\u003e#1780\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e📝 Documentation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdded \u003ccode\u003eeslint-plugin-perfectionist\u003c/code\u003e to the third-party plugins documentation page (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1778\"\u003e#1778\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🏗️ Internal\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eBumped \u003ccode\u003eimport-integrity-lint\u003c/code\u003e to 1.0.1.\u003c/li\u003e\n\u003cli\u003eFixed multiple versions of \u003ccode\u003etypescript-eslint\u003c/code\u003e and \u003ccode\u003eimport-integrity-lint\u003c/code\u003e in the workspace (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1776\"\u003e#1776\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eIncreased pnpm \u003ccode\u003eminimumReleaseAge\u003c/code\u003e to 3 days and updated lockfile (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1779\"\u003e#1779\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eRemoved \u003ccode\u003e.repos\u003c/code\u003e directory references from config files (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1773\"\u003e#1773\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eRemoved obsolete maintenance scripts (\u003ccode\u003ecreate-spec-alignment-issues.sh\u003c/code\u003e, \u003ccode\u003emigrate-labels.sh\u003c/code\u003e) (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1777\"\u003e#1777\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eReplaced \u003ccode\u003eeslint-plugin-fast-import\u003c/code\u003e with \u003ccode\u003eimport-integrity-lint\u003c/code\u003e (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1774\"\u003e#1774\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eSimplified the publish CI workflow by skipping install scripts and removing the lint step (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1775\"\u003e#1775\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/Rel1cx/eslint-react/compare/v5.7.10...v5.8.0\"\u003ehttps://github.com/Rel1cx/eslint-react/compare/v5.7.10...v5.8.0\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev5.7.10 (2026-05-16)\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003ch3\u003e🐞 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003e\u003ccode\u003ereact-x/no-leaked-conditional-rendering\u003c/code\u003e\u003c/strong\u003e, \u003cstrong\u003e\u003ccode\u003ereact-x/set-state-in-effect\u003c/code\u003e\u003c/strong\u003e: Added cycle detection to prevent stack overflow in recursive function analysis (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1769\"\u003e#1769\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e📝 Documentation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdded \u003ccode\u003ethird-party-plugins.mdx\u003c/code\u003e documentation page.\u003c/li\u003e\n\u003cli\u003eAdded spec diff and compiler test fixtures for \u003ccode\u003ereact-x/globals\u003c/code\u003e rule.\u003c/li\u003e\n\u003cli\u003eUpdated ESLint Stylistic link to rules anchor.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/Rel1cx/eslint-react/blob/main/CHANGELOG.md\"\u003e@​eslint-react/eslint-plugin's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev5.8.1 (2026-05-18)\u003c/h2\u003e\n\u003ch3\u003e📝 Documentation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eRestructured rule documentation across all plugins (\u003ccode\u003eeslint-plugin-react-x\u003c/code\u003e, \u003ccode\u003eeslint-plugin-react-dom\u003c/code\u003e, \u003ccode\u003eeslint-plugin-react-jsx\u003c/code\u003e, \u003ccode\u003eeslint-plugin-react-web-api\u003c/code\u003e, \u003ccode\u003eeslint-plugin-react-naming-convention\u003c/code\u003e, \u003ccode\u003eeslint-plugin-react-debug\u003c/code\u003e, \u003ccode\u003eeslint-plugin-react-rsc\u003c/code\u003e) from the \u003ccode\u003eCommon Violations / Invalid / Valid\u003c/code\u003e format to the new \u003ccode\u003eExamples / scenario-based / Troubleshooting / Further Reading\u003c/code\u003e format (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1784\"\u003e#1784\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eUpdated README tagline and description, removed the Benchmark section, and fixed migration guide links (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1783\"\u003e#1783\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eUpdated website recipe docs, FAQ, and third-party plugins page (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1783\"\u003e#1783\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🏗️ Internal\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpdated \u003ccode\u003escripts/scaffold-rule.ts\u003c/code\u003e and the rule request issue template to match the new documentation structure (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1782\"\u003e#1782\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/Rel1cx/eslint-react/compare/v5.8.0...v5.8.1\"\u003ehttps://github.com/Rel1cx/eslint-react/compare/v5.8.0...v5.8.1\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev5.8.0 (2026-05-17)\u003c/h2\u003e\n\u003ch3\u003e🪄 Improvements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003e\u003ccode\u003ereact-jsx/no-children-prop\u003c/code\u003e\u003c/strong\u003e, \u003cstrong\u003e\u003ccode\u003ereact-jsx/no-children-prop-with-children\u003c/code\u003e\u003c/strong\u003e: Added support for \u003ccode\u003ecreateElement\u003c/code\u003e calls in addition to JSX elements (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1780\"\u003e#1780\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e📝 Documentation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdded \u003ccode\u003eeslint-plugin-perfectionist\u003c/code\u003e to the third-party plugins documentation page (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1778\"\u003e#1778\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🏗️ Internal\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eBumped \u003ccode\u003eimport-integrity-lint\u003c/code\u003e to 1.0.1.\u003c/li\u003e\n\u003cli\u003eFixed multiple versions of \u003ccode\u003etypescript-eslint\u003c/code\u003e and \u003ccode\u003eimport-integrity-lint\u003c/code\u003e in the workspace (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1776\"\u003e#1776\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eIncreased pnpm \u003ccode\u003eminimumReleaseAge\u003c/code\u003e to 3 days and updated lockfile (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1779\"\u003e#1779\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eRemoved \u003ccode\u003e.repos\u003c/code\u003e directory references from config files (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1773\"\u003e#1773\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eRemoved obsolete maintenance scripts (\u003ccode\u003ecreate-spec-alignment-issues.sh\u003c/code\u003e, \u003ccode\u003emigrate-labels.sh\u003c/code\u003e) (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1777\"\u003e#1777\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eReplaced \u003ccode\u003eeslint-plugin-fast-import\u003c/code\u003e with \u003ccode\u003eimport-integrity-lint\u003c/code\u003e (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1774\"\u003e#1774\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eSimplified the publish CI workflow by skipping install scripts and removing the lint step (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1775\"\u003e#1775\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/Rel1cx/eslint-react/compare/v5.7.10...v5.8.0\"\u003ehttps://github.com/Rel1cx/eslint-react/compare/v5.7.10...v5.8.0\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev5.7.10 (2026-05-16)\u003c/h2\u003e\n\u003ch3\u003e🐞 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003e\u003ccode\u003ereact-x/no-leaked-conditional-rendering\u003c/code\u003e\u003c/strong\u003e, \u003cstrong\u003e\u003ccode\u003ereact-x/set-state-in-effect\u003c/code\u003e\u003c/strong\u003e: Added cycle detection to prevent stack overflow in recursive function analysis (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1769\"\u003e#1769\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e📝 Documentation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdded \u003ccode\u003ethird-party-plugins.mdx\u003c/code\u003e documentation page.\u003c/li\u003e\n\u003cli\u003eAdded spec diff and compiler test fixtures for \u003ccode\u003ereact-x/globals\u003c/code\u003e rule.\u003c/li\u003e\n\u003cli\u003eUpdated ESLint Stylistic link to rules anchor.\u003c/li\u003e\n\u003cli\u003eUpdated community projects (added Obsidian Copilot).\u003c/li\u003e\n\u003cli\u003eAdded redirects and simplified removed docs page.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/94549a1e3496d2ef3dff60b6332f17656469b2f0\"\u003e\u003ccode\u003e94549a1\u003c/code\u003e\u003c/a\u003e release: 5.8.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/2821bb11803f5ef8c8021d3deed84183ce136a24\"\u003e\u003ccode\u003e2821bb1\u003c/code\u003e\u003c/a\u003e docs: restructure rule documentation to new Examples-based format (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1784\"\u003e#1784\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/4317c311d29c5d0c9aa8b48d335172f60b4d4487\"\u003e\u003ccode\u003e4317c31\u003c/code\u003e\u003c/a\u003e release: 5.8.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/e060debd13fc873a83ed9ac143d559bf5e0c3fac\"\u003e\u003ccode\u003ee060deb\u003c/code\u003e\u003c/a\u003e release: 5.7.10\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/752585a5125e2d53c7ced0df2e58fe8960d3cbd2\"\u003e\u003ccode\u003e752585a\u003c/code\u003e\u003c/a\u003e release: 5.7.10-beta.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/24a9443a01f832ba3b960a3f67fbf38a3de490ca\"\u003e\u003ccode\u003e24a9443\u003c/code\u003e\u003c/a\u003e release: 5.7.10-next.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/50d7dc0bcfc01cfc9bf9d5190db218fb9719a869\"\u003e\u003ccode\u003e50d7dc0\u003c/code\u003e\u003c/a\u003e release: 5.7.8\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/be9e7865cac798b3111840ced8c81d38ec660f4d\"\u003e\u003ccode\u003ebe9e786\u003c/code\u003e\u003c/a\u003e release: 5.7.8-beta.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/e14aabca9a1ed01e08fdd3dd55627cb05f9c1c1f\"\u003e\u003ccode\u003ee14aabc\u003c/code\u003e\u003c/a\u003e release: 5.7.8-next.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/7be40890022163dfa1b8a40b5a1ac25354d2e7db\"\u003e\u003ccode\u003e7be4089\u003c/code\u003e\u003c/a\u003e release: 5.7.7\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/Rel1cx/eslint-react/commits/v5.8.1/plugins/eslint-plugin\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@eslint/js` from 9.39.2 to 10.0.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/eslint/eslint/releases\"\u003e@​eslint/js's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev10.0.1\u003c/h2\u003e\n\u003ch2\u003eBug Fixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/c87d5bded54c5cf491eb04c24c9d09bbbd42c23e\"\u003e\u003ccode\u003ec87d5bd\u003c/code\u003e\u003c/a\u003e fix: update eslint (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20531\"\u003e#20531\u003c/a\u003e) (renovate[bot])\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/d84100115c14691691058f00779c94e74fca946a\"\u003e\u003ccode\u003ed841001\u003c/code\u003e\u003c/a\u003e fix: update \u003ccode\u003eminimatch\u003c/code\u003e to \u003ccode\u003e10.2.1\u003c/code\u003e to address security vulnerabilities (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20519\"\u003e#20519\u003c/a\u003e) (루밀LuMir)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/04c21475b3004904948f02049f2888b401d82c78\"\u003e\u003ccode\u003e04c2147\u003c/code\u003e\u003c/a\u003e fix: update error message for unused suppressions (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20496\"\u003e#20496\u003c/a\u003e) (fnx)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/38b089c1726feac0e31a31d47941bd99e29ce003\"\u003e\u003ccode\u003e38b089c\u003c/code\u003e\u003c/a\u003e fix: update dependency \u003ccode\u003e@​eslint/config-array\u003c/code\u003e to ^0.23.1 (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20484\"\u003e#20484\u003c/a\u003e) (renovate[bot])\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eDocumentation\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/5b3dbce50a1404a9f118afe810cefeee79388a2a\"\u003e\u003ccode\u003e5b3dbce\u003c/code\u003e\u003c/a\u003e docs: add AI acknowledgement section to templates (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20431\"\u003e#20431\u003c/a\u003e) (루밀LuMir)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/6f23076037d5879f20fb3be2ef094293b1e8d38c\"\u003e\u003ccode\u003e6f23076\u003c/code\u003e\u003c/a\u003e docs: toggle nav in no-JS mode (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20476\"\u003e#20476\u003c/a\u003e) (Tanuj Kanti)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/b69cfb32a16c5d5e9986390d484fae1d21e406f9\"\u003e\u003ccode\u003eb69cfb3\u003c/code\u003e\u003c/a\u003e docs: Update README (GitHub Actions Bot)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eChores\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/e5c281ffd038a3a7a3e5364db0b9378e0ad83020\"\u003e\u003ccode\u003ee5c281f\u003c/code\u003e\u003c/a\u003e chore: updates for v9.39.3 release (Jenkins)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/8c3832adb77cd993b4a24891900d5eeaaf093cdc\"\u003e\u003ccode\u003e8c3832a\u003c/code\u003e\u003c/a\u003e chore: update \u003ccode\u003e@​typescript-eslint/parser\u003c/code\u003e to ^8.56.0 (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20514\"\u003e#20514\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/8330d238ae6adb68bb6a1c9381e38cfedd990d94\"\u003e\u003ccode\u003e8330d23\u003c/code\u003e\u003c/a\u003e test: add tests for config-api (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20493\"\u003e#20493\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/37d6e91e88fa6a2ca6d8726679096acff21ba6cc\"\u003e\u003ccode\u003e37d6e91\u003c/code\u003e\u003c/a\u003e chore: remove eslint v10 prereleases from eslint-config-eslint deps (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20494\"\u003e#20494\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/da7cd0e79197ad16e17052eef99df141de6dbfb1\"\u003e\u003ccode\u003eda7cd0e\u003c/code\u003e\u003c/a\u003e refactor: cleanup error message templates (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20479\"\u003e#20479\u003c/a\u003e) (Francesco Trotta)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/84fb885d49ac810e79a9491276b4828b53d913e5\"\u003e\u003ccode\u003e84fb885\u003c/code\u003e\u003c/a\u003e chore: package.json update for \u003ccode\u003e@​eslint/js\u003c/code\u003e release (Jenkins)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/1f667344b57c4c09b548d94bcfac1f91b6e5c63d\"\u003e\u003ccode\u003e1f66734\u003c/code\u003e\u003c/a\u003e chore: add \u003ccode\u003eeslint\u003c/code\u003e to \u003ccode\u003epeerDependencies\u003c/code\u003e of \u003ccode\u003e@eslint/js\u003c/code\u003e (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20467\"\u003e#20467\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev10.0.0\u003c/h2\u003e\n\u003ch2\u003eBreaking Changes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/f9e54f43a5e497cdfa179338b431093245cb787b\"\u003e\u003ccode\u003ef9e54f4\u003c/code\u003e\u003c/a\u003e feat!: estimate rule-tester failure location (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20420\"\u003e#20420\u003c/a\u003e) (ST-DDT)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/a176319d8ade1a7d9b2d7fb8f038f55a2662325f\"\u003e\u003ccode\u003ea176319\u003c/code\u003e\u003c/a\u003e feat!: replace \u003ccode\u003echalk\u003c/code\u003e with \u003ccode\u003estyleText\u003c/code\u003e and add \u003ccode\u003ecolor\u003c/code\u003e to \u003ccode\u003eResultsMeta\u003c/code\u003e (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20227\"\u003e#20227\u003c/a\u003e) (루밀LuMir)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/c7046e6c1e03c4ca0eee4888a1f2eba4c6454f84\"\u003e\u003ccode\u003ec7046e6\u003c/code\u003e\u003c/a\u003e feat!: enable JSX reference tracking (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20152\"\u003e#20152\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/fa31a608901684fbcd9906d1907e66561d16e5aa\"\u003e\u003ccode\u003efa31a60\u003c/code\u003e\u003c/a\u003e feat!: add \u003ccode\u003ename\u003c/code\u003e to configs (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20015\"\u003e#20015\u003c/a\u003e) (Kirk Waiblinger)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/3383e7ec9028166cafc8ea7986c2f7498d0049f0\"\u003e\u003ccode\u003e3383e7e\u003c/code\u003e\u003c/a\u003e fix!: remove deprecated \u003ccode\u003eSourceCode\u003c/code\u003e methods (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20137\"\u003e#20137\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/501abd0e916a35554c58b7c0365537f1fa3880ce\"\u003e\u003ccode\u003e501abd0\u003c/code\u003e\u003c/a\u003e feat!: update dependency minimatch to v10 (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20246\"\u003e#20246\u003c/a\u003e) (renovate[bot])\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/ca4d3b40085de47561f89656a2207d09946ed45e\"\u003e\u003ccode\u003eca4d3b4\u003c/code\u003e\u003c/a\u003e fix!: stricter rule tester assertions for valid test cases (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20125\"\u003e#20125\u003c/a\u003e) (唯然)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/96512a66c86402fb0538cdcb6cd30b9073f6bf3b\"\u003e\u003ccode\u003e96512a6\u003c/code\u003e\u003c/a\u003e fix!: Remove deprecated rule context methods (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20086\"\u003e#20086\u003c/a\u003e) (Nicholas C. Zakas)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/c69fdacdb2e886b9d965568a397aa8220db3fe90\"\u003e\u003ccode\u003ec69fdac\u003c/code\u003e\u003c/a\u003e feat!: remove eslintrc support (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20037\"\u003e#20037\u003c/a\u003e) (Francesco Trotta)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/208b5cc34a8374ff81412b5bec2e0800eebfbd04\"\u003e\u003ccode\u003e208b5cc\u003c/code\u003e\u003c/a\u003e feat!: Use \u003ccode\u003eScopeManager#addGlobals()\u003c/code\u003e (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20132\"\u003e#20132\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/a2ee188ea7a38a0c6155f3d39e2b00e1d0f36e14\"\u003e\u003ccode\u003ea2ee188\u003c/code\u003e\u003c/a\u003e fix!: add \u003ccode\u003euniqueItems: true\u003c/code\u003e in \u003ccode\u003eno-invalid-regexp\u003c/code\u003e option (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20155\"\u003e#20155\u003c/a\u003e) (Tanuj Kanti)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/a89059dbf2832d417dd493ee81483227ec44e4ab\"\u003e\u003ccode\u003ea89059d\u003c/code\u003e\u003c/a\u003e feat!: Program range span entire source text (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20133\"\u003e#20133\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/39a6424373d915fa9de0d7b0caba9a4dc3da9b53\"\u003e\u003ccode\u003e39a6424\u003c/code\u003e\u003c/a\u003e fix!: assert 'text' is a string across all RuleFixer methods (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20082\"\u003e#20082\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/f28fbf846244e043c92b355b224d121b06140b44\"\u003e\u003ccode\u003ef28fbf8\u003c/code\u003e\u003c/a\u003e fix!: Deprecate \u003ccode\u003e\u0026quot;always\u0026quot;\u003c/code\u003e and \u003ccode\u003e\u0026quot;as-needed\u0026quot;\u003c/code\u003e options of the \u003ccode\u003eradix\u003c/code\u003e rule (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20223\"\u003e#20223\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/aa3fb2b233e929b37220be940575f42c280e0b98\"\u003e\u003ccode\u003eaa3fb2b\u003c/code\u003e\u003c/a\u003e fix!: tighten \u003ccode\u003efunc-names\u003c/code\u003e schema (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20119\"\u003e#20119\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/f6c0ed0311dcfee853367d5068c765d066e6b756\"\u003e\u003ccode\u003ef6c0ed0\u003c/code\u003e\u003c/a\u003e feat!: report \u003ccode\u003eeslint-env\u003c/code\u003e comments as errors (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20128\"\u003e#20128\u003c/a\u003e) (Francesco Trotta)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/4bf739fb533e59f7f0a66b65f7bc80be0f37d8db\"\u003e\u003ccode\u003e4bf739f\u003c/code\u003e\u003c/a\u003e fix!: remove deprecated \u003ccode\u003eLintMessage#nodeType\u003c/code\u003e and \u003ccode\u003eTestCaseError#type\u003c/code\u003e (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20096\"\u003e#20096\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/523c076866400670fb2192a3f55dbf7ad3469247\"\u003e\u003ccode\u003e523c076\u003c/code\u003e\u003c/a\u003e feat!: drop support for jiti \u0026lt; 2.2.0 (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20016\"\u003e#20016\u003c/a\u003e) (michael faith)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/454a292c95f34dad232411ddac06408e6383bb64\"\u003e\u003ccode\u003e454a292\u003c/code\u003e\u003c/a\u003e feat!: update \u003ccode\u003eeslint:recommended\u003c/code\u003e configuration (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20210\"\u003e#20210\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/4f880ee02992e1bf0e96ebaba679985e2d1295f1\"\u003e\u003ccode\u003e4f880ee\u003c/code\u003e\u003c/a\u003e feat!: remove \u003ccode\u003ev10_*\u003c/code\u003e and inactive \u003ccode\u003eunstable_*\u003c/code\u003e flags (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20225\"\u003e#20225\u003c/a\u003e) (sethamus)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/f18115c363a4ac7671a4c7f30ee13d57ebba330f\"\u003e\u003ccode\u003ef18115c\u003c/code\u003e\u003c/a\u003e feat!: \u003ccode\u003eno-shadow-restricted-names\u003c/code\u003e report \u003ccode\u003eglobalThis\u003c/code\u003e by default (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20027\"\u003e#20027\u003c/a\u003e) (sethamus)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/c6358c31fbd3937b92d89be2618ffdf5a774604e\"\u003e\u003ccode\u003ec6358c3\u003c/code\u003e\u003c/a\u003e feat!: Require Node.js \u003ccode\u003e^20.19.0 || ^22.13.0 || \u0026gt;=24\u003c/code\u003e (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20160\"\u003e#20160\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eFeatures\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/bff9091927811497dbf066b0e3b85ecb37d43822\"\u003e\u003ccode\u003ebff9091\u003c/code\u003e\u003c/a\u003e feat: handle \u003ccode\u003eArray.fromAsync\u003c/code\u003e in \u003ccode\u003earray-callback-return\u003c/code\u003e (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20457\"\u003e#20457\u003c/a\u003e) (Francesco Trotta)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/290c594bb50c439fb71bc75521ee5360daa8c222\"\u003e\u003ccode\u003e290c594\u003c/code\u003e\u003c/a\u003e feat: add \u003ccode\u003eself\u003c/code\u003e to \u003ccode\u003eno-implied-eval\u003c/code\u003e rule (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20468\"\u003e#20468\u003c/a\u003e) (sethamus)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/43677de07ebd6e14bfac40a46ad749ba783c45f2\"\u003e\u003ccode\u003e43677de\u003c/code\u003e\u003c/a\u003e feat: fix handling of function and class expression names in \u003ccode\u003eno-shadow\u003c/code\u003e (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20432\"\u003e#20432\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/84fb885d49ac810e79a9491276b4828b53d913e5\"\u003e\u003ccode\u003e84fb885\u003c/code\u003e\u003c/a\u003e chore: package.json update for \u003ccode\u003e@​eslint/js\u003c/code\u003e release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/1f667344b57c4c09b548d94bcfac1f91b6e5c63d\"\u003e\u003ccode\u003e1f66734\u003c/code\u003e\u003c/a\u003e chore: add \u003ccode\u003eeslint\u003c/code\u003e to \u003ccode\u003epeerDependencies\u003c/code\u003e of \u003ccode\u003e@eslint/js\u003c/code\u003e (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20467\"\u003e#20467\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/f3fbc2f60cbe2c718364feb8c3fc0452c0df3c56\"\u003e\u003ccode\u003ef3fbc2f\u003c/code\u003e\u003c/a\u003e chore: set \u003ccode\u003e@eslint/js\u003c/code\u003e version to 10.0.0 to skip releasing it (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20466\"\u003e#20466\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/b4b3127f8542c599ce2dea804b6582ebc40c993d\"\u003e\u003ccode\u003eb4b3127\u003c/code\u003e\u003c/a\u003e chore: package.json update for \u003ccode\u003e@​eslint/js\u003c/code\u003e release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/0b14059491d830a49b3577931f4f68fbcfce6be5\"\u003e\u003ccode\u003e0b14059\u003c/code\u003e\u003c/a\u003e chore: package.json update for \u003ccode\u003e@​eslint/js\u003c/code\u003e release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/fa31a608901684fbcd9906d1907e66561d16e5aa\"\u003e\u003ccode\u003efa31a60\u003c/code\u003e\u003c/a\u003e feat!: add \u003ccode\u003ename\u003c/code\u003e to configs (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20015\"\u003e#20015\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/1e2cad5f6fa47ed6ed89d2a29798dda926d50990\"\u003e\u003ccode\u003e1e2cad5\u003c/code\u003e\u003c/a\u003e chore: package.json update for \u003ccode\u003e@​eslint/js\u003c/code\u003e release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/454a292c95f34dad232411ddac06408e6383bb64\"\u003e\u003ccode\u003e454a292\u003c/code\u003e\u003c/a\u003e feat!: update \u003ccode\u003eeslint:recommended\u003c/code\u003e configuration (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20210\"\u003e#20210\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/c6358c31fbd3937b92d89be2618ffdf5a774604e\"\u003e\u003ccode\u003ec6358c3\u003c/code\u003e\u003c/a\u003e feat!: Require Node.js \u003ccode\u003e^20.19.0 || ^22.13.0 || \u0026gt;=24\u003c/code\u003e (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20160\"\u003e#20160\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/eslint/eslint/commits/v10.0.1/packages/js\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@typescript-eslint/eslint-plugin` from 8.56.0 to 8.59.3\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases\"\u003e@​typescript-eslint/eslint-plugin's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev8.59.3\u003c/h2\u003e\n\u003ch2\u003e8.59.3 (2026-05-11)\u003c/h2\u003e\n\u003cp\u003eThis was a version bump only, there were no code changes.\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.3\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003ev8.59.2\u003c/h2\u003e\n\u003ch2\u003e8.59.2 (2026-05-04)\u003c/h2\u003e\n\u003ch3\u003e🩹 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unsafe-type-assertion] handle crash on recursive template literal types (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12150\"\u003e#12150\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-deprecated] object destructuring values should be treated as declarations (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12292\"\u003e#12292\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003erule-tester:\u003c/strong\u003e add TypeScript as a peer dependency (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12288\"\u003e#12288\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e❤️ Thank You\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eDariusz Czajkowski\u003c/li\u003e\n\u003cli\u003eDima Barabash\u003c/li\u003e\n\u003cli\u003eKirk Waiblinger \u003ca href=\"https://github.com/kirkwaiblinger\"\u003e\u003ccode\u003e@​kirkwaiblinger\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.2\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003ev8.59.1\u003c/h2\u003e\n\u003ch2\u003e8.59.1 (2026-04-27)\u003c/h2\u003e\n\u003ch3\u003e🩹 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-type-assertion] fix crash \u0026quot;TypeError: checker.getTypeArguments is not a function\u0026quot; (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12246\"\u003e#12246\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-type-assertion] preserve index signatures in undefined unions (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12257\"\u003e#12257\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-type-assertion] preserve phantom type arguments in generic inference (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12269\"\u003e#12269\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-type-assertion] avoid false positive in logical assignment assertions (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12278\"\u003e#12278\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-type-arguments] handle instantiation expressions (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12220\"\u003e#12220\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-condition] treat void as nullish in no-unnecessary-condition (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12241\"\u003e#12241\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e❤️ Thank You\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eanasm266 \u003ca href=\"https://github.com/anasm266\"\u003e\u003ccode\u003e@​anasm266\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAnshika Jain \u003ca href=\"https://github.com/Anshikakalpana\"\u003e\u003ccode\u003e@​Anshikakalpana\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUlrich Stark\u003c/li\u003e\n\u003cli\u003eyugo innami \u003ca href=\"https://github.com/nami8824\"\u003e\u003ccode\u003e@​nami8824\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.1\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/CHANGELOG.md\"\u003e@​typescript-eslint/eslint-plugin's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e8.59.3 (2026-05-11)\u003c/h2\u003e\n\u003cp\u003eThis was a version bump only for eslint-plugin to align it with other projects, there were no code changes.\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.3\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003e8.59.2 (2026-05-04)\u003c/h2\u003e\n\u003ch3\u003e🩹 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-deprecated] object destructuring values should be treated as declarations (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12292\"\u003e#12292\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unsafe-type-assertion] handle crash on recursive template literal types (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12150\"\u003e#12150\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e❤️ Thank You\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eDima Barabash\u003c/li\u003e\n\u003cli\u003eKirk Waiblinger \u003ca href=\"https://github.com/kirkwaiblinger\"\u003e\u003ccode\u003e@​kirkwaiblinger\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.2\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003e8.59.1 (2026-04-27)\u003c/h2\u003e\n\u003ch3\u003e🩹 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-condition] treat void as nullish in no-unnecessary-condition (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12241\"\u003e#12241\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-type-arguments] handle instantiation expressions (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12220\"\u003e#12220\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-type-assertion] avoid false positive in logical assignment assertions (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12278\"\u003e#12278\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-type-assertion] preserve phantom type arguments in generic inference (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12269\"\u003e#12269\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-type-assertion] preserve index signatures in undefined unions (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12257\"\u003e#12257\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-type-assertion] fix crash \u0026quot;TypeError: checker.getTypeArguments is not a function\u0026quot; (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12246\"\u003e#12246\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e❤️ Thank You\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eanasm266 \u003ca href=\"https://github.com/anasm266\"\u003e\u003ccode\u003e@​anasm266\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAnshika Jain \u003ca href=\"https://github.com/Anshikakalpana\"\u003e\u003ccode\u003e@​Anshikakalpana\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUlrich Stark\u003c/li\u003e\n\u003cli\u003eyugo innami \u003ca href=\"https://github.com/nami8824\"\u003e\u003ccode\u003e@​nami8824\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.1\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003e8.59.0 (2026-04-20)\u003c/h2\u003e\n\u003ch3\u003e🚀 Features\u003c/h3\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/48e13c0261e3cb1bf4f4dfaa462cdb3a56ef7383\"\u003e\u003ccode\u003e48e13c0\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.59.3\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/e26dc8003ababf078aad4df17765ee4cea30644c\"\u003e\u003ccode\u003ee26dc80\u003c/code\u003e\u003c/a\u003e docs: update stale links to latest (\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin/issues/12313\"\u003e#12313\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/44f9625336841a8ee3eb01a9e02e49b1d7b12648\"\u003e\u003ccode\u003e44f9625\u003c/code\u003e\u003c/a\u003e chore(deps): update vitest monorepo to v4.1.5 (\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin/issues/12307\"\u003e#12307\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/2ec35f1760aade4df4c631d76d78c7ed5e136333\"\u003e\u003ccode\u003e2ec35f1\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.59.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/ec3ef25390f7daf5a9ff33a60282bdbbb49ab0f3\"\u003e\u003ccode\u003eec3ef25\u003c/code\u003e\u003c/a\u003e test: make no-useless-empty-export tests fully static (\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin/issues/12260\"\u003e#12260\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/60d0a513870d833617374ff8ea256d86ca3cbbbb\"\u003e\u003ccode\u003e60d0a51\u003c/code\u003e\u003c/a\u003e chore(eslint-plugin): switch auto-generated test cases to hand-written in no-...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/5c53da230a70aba7d6f3d6474b5d249b430a95d0\"\u003e\u003ccode\u003e5c53da2\u003c/code\u003e\u003c/a\u003e fix(eslint-plugin): [no-deprecated] object destructuring values should be tre...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/80c28a1ada3f975a932a02587cefee632ccf6550\"\u003e\u003ccode\u003e80c28a1\u003c/code\u003e\u003c/a\u003e fix(eslint-plugin): [no-unsafe-type-assertion] handle crash on recursive temp...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/b7b2670123f76419630f88f3a807f85b7c535230\"\u003e\u003ccode\u003eb7b2670\u003c/code\u003e\u003c/a\u003e test: make no-this-alias tests fully static (\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin/issues/12258\"\u003e#12258\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/52457932e5507b5ca01e720a541f3f8d01e09b9d\"\u003e\u003ccode\u003e5245793\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.59.1\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commits/v8.59.3/packages/eslint-plugin\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@typescript-eslint/parser` from 8.56.0 to 8.59.3\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases\"\u003e@​typescript-eslint/parser's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev8.59.3\u003c/h2\u003e\n\u003ch2\u003e8.59.3 (2026-05-11)\u003c/h2\u003e\n\u003cp\u003eThis was a version bump only, there were no code changes.\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.3\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003ev8.59.2\u003c/h2\u003e\n\u003ch2\u003e8.59.2 (2026-05-04)\u003c/h2\u003e\n\u003ch3\u003e🩹 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unsafe-type-assertion] handle crash on recursive template literal types (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12150\"\u003e#12150\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-deprecated] object destructuring values should be treated as declarations (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12292\"\u003e#12292\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003erule-tester:\u003c/strong\u003e add TypeScript as a peer dependency (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12288\"\u003e#12288\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e❤️ Thank You\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eDariusz Czajkowski\u003c/li\u003e\n\u003cli\u003eDima Barabash\u003c/li\u003e\n\u003cli\u003eKirk Waiblinger \u003ca href=\"https://github.com/kirkwaiblinger\"\u003e\u003ccode\u003e@​kirkwaiblinger\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.2\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003ev8.59.1\u003c/h2\u003e\n\u003ch2\u003e8.59.1 (2026-04-27)\u003c/h2\u003e\n\u003ch3\u003e🩹 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-type-assertion] fix crash \u0026quot;TypeError: checker.getTypeArguments is not a function\u0026quot; (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12246\"\u003e#12246\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-type-assertion] preserve index signatures in undefined unions (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12257\"\u003e#12257\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-type-assertion] preserve phantom type arguments in generic inference (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12269\"\u003e#12269\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-type-assertion] avoid false positive in logical assignment assertions (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12278\"\u003e#12278\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-type-arguments] handle instantiation expressions (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12220\"\u003e#12220\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-condition] treat void as nullish in no-unnecessary-condition (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12241\"\u003e#12241\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e❤️ Thank You\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eanasm266 \u003ca href=\"https://github.com/anasm266\"\u003e\u003ccode\u003e@​anasm266\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAnshika Jain \u003ca href=\"https://github.com/Anshikakalpana\"\u003e\u003ccode\u003e@​Anshikakalpana\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUlrich Stark\u003c/li\u003e\n\u003cli\u003eyugo innami \u003ca href=\"https://github.com/nami8824\"\u003e\u003ccode\u003e@​nami8824\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.1\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/parser/CHANGELOG.md\"\u003e@​typescript-eslint/parser's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e8.59.3 (2026-05-11)\u003c/h2\u003e\n\u003cp\u003eThis was a version bump only for parser to align it with other projects, there were no code changes.\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.3\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003e8.59.2 (2026-05-04)\u003c/h2\u003e\n\u003cp\u003eThis was a version bump only for parser to align it with other projects, there were no code changes.\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.2\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003e8.59.1 (2026-04-27)\u003c/h2\u003e\n\u003cp\u003eThis was a version bump only for parser to align it with other projects, there were no code changes.\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.1\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003e8.59.0 (2026-04-20)\u003c/h2\u003e\n\u003cp\u003eThis was a version bump only for parser to align it with other projects, there were no code changes.\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.0\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003e8.58.2 (2026-04-13)\u003c/h2\u003e\n\u003ch3\u003e🩹 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eremove tsbuildinfo cache file from published packages (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12187\"\u003e#12187\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e❤️ Thank You\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAbhijeet Singh \u003ca href=\"https://github.com/cseas\"\u003e\u003ccode\u003e@​cseas\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.58.2\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003e8.58.1 (2026-04-08)\u003c/h2\u003e\n\u003cp\u003eThis was a version bump only for parser to align it with other projects, there were no code changes.\u003c/p\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/48e13c0261e3cb1bf4f4dfaa462cdb3a56ef7383\"\u003e\u003ccode\u003e48e13c0\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.59.3\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/44f9625336841a8ee3eb01a9e02e49b1d7b12648\"\u003e\u003ccode\u003e44f9625\u003c/code\u003e\u003c/a\u003e chore(deps): update vitest monorepo to v4.1.5 (\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/parser/issues/12307\"\u003e#12307\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/2ec35f1760aade4df4c631d76d78c7ed5e136333\"\u003e\u003ccode\u003e2ec35f1\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.59.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/52457932e5507b5ca01e720a541f3f8d01e09b9d\"\u003e\u003ccode\u003e5245793\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.59.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/ea9ae4f8817873480e3501145059f63e39e8d8a1\"\u003e\u003ccode\u003eea9ae4f\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.59.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/90c2803a4c250e0343598d41e973f95e743bf4ce\"\u003e\u003ccode\u003e90c2803\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.58.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/be6b49a02d68db9bdc8985e7e9e1598700fda2fa\"\u003e\u003ccode\u003ebe6b49a\u003c/code\u003e\u003c/a\u003e fix: remove tsbuildinfo cache file from published packages (\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/parser/issues/12187\"\u003e#12187\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/5311ed312eadf4e238324f2726ae0b1f3f2206e6\"\u003e\u003ccode\u003e5311ed3\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.58.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/493341709fe7d1d6433332b7bd2724e3332c7cdf\"\u003e\u003ccode\u003e4933417\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.58.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/8cde2d06fb9bc591a4c93452509ddbd600c76a35\"\u003e\u003ccode\u003e8cde2d0\u003c/code\u003e\u003c/a\u003e feat: support TypeScript 6 (\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/parser/issues/12124\"\u003e#12124\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commits/v8.59.3/packages/parser\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `eslint` from 9.39.2 to 10.4.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/eslint/eslint/releases\"\u003eeslint's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev10.4.0\u003c/h2\u003e\n\u003ch2\u003eFeatures\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/1a45ec596af1dd5f880e6874cb8f24dafb6a7ecf\"\u003e\u003ccode\u003e1a45ec5\u003c/code\u003e\u003c/a\u003e feat: check sequence expressions in \u003ccode\u003efor-direction\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20701\"\u003e#20701\u003c/a\u003e) (kuldeep kumar)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/450040bd89b989b3531824c6be45feb5fe3d936b\"\u003e\u003ccode\u003e450040b\u003c/code\u003e\u003c/a\u003e feat: add \u003ccode\u003eincludeIgnoreFile()\u003c/code\u003e to \u003ccode\u003eeslint/config\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20735\"\u003e#20735\u003c/a\u003e) (Kirk Waiblinger)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eBug Fixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/544c0c3da589166ad8e5d634f35d3d06701c57be\"\u003e\u003ccode\u003e544c0c3\u003c/code\u003e\u003c/a\u003e fix: escape code path DOT labels in debug output (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20866\"\u003e#20866\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/6799431203f2579632d0870f98ba132067f4040c\"\u003e\u003ccode\u003e6799431\u003c/code\u003e\u003c/a\u003e fix: update dependency \u003ccode\u003e@​eslint/config-helpers\u003c/code\u003e to ^0.6.0 (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20850\"\u003e#20850\u003c/a\u003e) (renovate[bot])\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/f078fef5005dceb14fc162aab7c7200e027688dd\"\u003e\u003ccode\u003ef078fef\u003c/code\u003e\u003c/a\u003e fix: handle non-array deprecated rule replacements (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20825\"\u003e#20825\u003c/a\u003e) (xbinaryx)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eDocumentation\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/7e52a7151fb92eec0e0f67fe4e5ddbd1ccce796f\"\u003e\u003ccode\u003e7e52a71\u003c/code\u003e\u003c/a\u003e docs: add mention of \u003ccode\u003e@eslint-react/eslint-plugin\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20869\"\u003e#20869\u003c/a\u003e) (Pavel)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/db3468ba746407d7f286f18f7ea9db6df0e3bc08\"\u003e\u003ccode\u003edb3468b\u003c/code\u003e\u003c/a\u003e docs: tweak wording around ambiguous CJS-vs-ESM config (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20865\"\u003e#20865\u003c/a\u003e) (Kirk Waiblinger)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/90846643ec6e97d447ae0d831fabe6d17b0a998a\"\u003e\u003ccode\u003e9084664\u003c/code\u003e\u003c/a\u003e docs: Update README (GitHub Actions Bot)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/9cc73875046e3c4b8313644cbb1e99e26b36bd3f\"\u003e\u003ccode\u003e9cc7387\u003c/code\u003e\u003c/a\u003e docs: Update README (GitHub Actions Bot)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/3d7b5484407403817aa9071a394d336d8ea96eb5\"\u003e\u003ccode\u003e3d7b548\u003c/code\u003e\u003c/a\u003e docs: Update README (GitHub Actions Bot)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/191ec3c0a3f94ce0f110df761f0b2b8949011ccb\"\u003e\u003ccode\u003e191ec3c\u003c/code\u003e\u003c/a\u003e docs: Update README (GitHub Actions Bot)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eChores\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/6616856f28fa514a30f87b5539fc100d739a94bf\"\u003e\u003ccode\u003e6616856\u003c/code\u003e\u003c/a\u003e chore: upgrade knip to v6 (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20875\"\u003e#20875\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/d13b084a3ad02f926e9addaa35fc383759ea5554\"\u003e\u003ccode\u003ed13b084\u003c/code\u003e\u003c/a\u003e ci: ensure auto-created PRs run CI (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20860\"\u003e#20860\u003c/a\u003e) (lumir)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/e71c7af86dce9acc1d18cb12d2184309f6841594\"\u003e\u003ccode\u003ee71c7af\u003c/code\u003e\u003c/a\u003e ci: bump pnpm/action-setup from 6.0.5 to 6.0.7 (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20862\"\u003e#20862\u003c/a\u003e) (dependabot[bot])\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/d84393dea170f54191fd20c8268b52c81c0ccd99\"\u003e\u003ccode\u003ed84393d\u003c/code\u003e\u003c/a\u003e test: add unit tests for SuppressionsService.applySuppressions() (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20863\"\u003e#20863\u003c/a\u003e) (kuldeep kumar)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/24db8cb8e6f07fba667121777a15b1785486be94\"\u003e\u003ccode\u003e24db8cb\u003c/code\u003e\u003c/a\u003e test: add tests for SuppressionsService.save() (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20802\"\u003e#20802\u003c/a\u003e) (kuldeep kumar)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/2ef0549cac4a9537e4c3a26b9f3edd4c99476bf6\"\u003e\u003ccode\u003e2ef0549\u003c/code\u003e\u003c/a\u003e chore: update ecosystem plugins (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20857\"\u003e#20857\u003c/a\u003e) (github-actions[bot])\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/a4297918d264d229a06cd96051ef9b91c7b86732\"\u003e\u003ccode\u003ea429791\u003c/code\u003e\u003c/a\u003e ci: remove \u003ccode\u003eeslint-webpack-plugin\u003c/code\u003e types integration test (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20668\"\u003e#20668\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/9e37386aa7f2ce220b2ef74a6afbac5f6b3527c5\"\u003e\u003ccode\u003e9e37386\u003c/code\u003e\u003c/a\u003e chore: replace \u003ccode\u003erecast\u003c/code\u003e with range approach in code-sample-minimizer (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20682\"\u003e#20682\u003c/a\u003e) (Copilot)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/0dd1f9ffc9a07704d46e2a4c8d4ccc0d0908b0c0\"\u003e\u003ccode\u003e0dd1f9f\u003c/code\u003e\u003c/a\u003e test: disable warning for \u003ccode\u003evm.constants.USE_MAIN_CONTEXT_DEFAULT_LOADER\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20845\"\u003e#20845\u003c/a\u003e) (Francesco Trotta)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/9da3c7bc92d9579f8db19ecb56e718538d09db2b\"\u003e\u003ccode\u003e9da3c7b\u003c/code\u003e\u003c/a\u003e refactor: remove deprecated \u003ccode\u003emeta.language\u003c/code\u003e and migrate \u003ccode\u003emeta.dialects\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20716\"\u003e#20716\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/2099ed12a0a74c3d7f0808514362af2499b4fe2b\"\u003e\u003ccode\u003e2099ed1\u003c/code\u003e\u003c/a\u003e refactor: add \u003ccode\u003emeta.defaultOptions\u003c/code\u003e to more rules, enable linting (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20800\"\u003e#20800\u003c/a\u003e) (xbinaryx)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/f1dfbc9ca57196de7092e1888cc99427bd6fe06e\"\u003e\u003ccode\u003ef1dfbc9\u003c/code\u003e\u003c/a\u003e chore: update ecosystem plugins (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20836\"\u003e#20836\u003c/a\u003e) (github-actions[bot])\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/c75941390c14728806cd4baef4f6072f6de78318\"\u003e\u003ccode\u003ec759413\u003c/code\u003e\u003c/a\u003e ci: bump pnpm/action-setup from 6.0.3 to 6.0.5 (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20843\"\u003e#20843\u003c/a\u003e) (dependabot[bot])\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/5b817d6fdc9ae2c35b528dc662b2eca8f40f64aa\"\u003e\u003ccode\u003e5b817d6\u003c/code\u003e\u003c/a\u003e test: add unit tests for lib/shared/ast-utils (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20838\"\u003e#20838\u003c/a\u003e) (kuldeep kumar)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/1c13ae3934c198c494e5958fa3a68b33244ff06a\"\u003e\u003ccode\u003e1c13ae3\u003c/code\u003e\u003c/a\u003e test: add unit tests for lib/shared/severity (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20835\"\u003e#20835\u003c/a\u003e) (kuldeep kumar)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev10.3.0\u003c/h2\u003e\n\u003ch2\u003eFeatures\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/379571a975f2b24d88037b9de2e72ec61d004130\"\u003e\u003ccode\u003e379571a\u003c/code\u003e\u003c/a\u003e feat: add suggestions for no-unused-private-class-members (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20773\"\u003e#20773\u003c/a\u003e) (sethamus)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eBug Fixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/b6ae5cf07b9b51802367539cb24b245b61eaa37c\"\u003e\u003ccode\u003eb6ae5cf\u003c/code\u003e\u003c/a\u003e fix: handle unavailable require cache (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20812\"\u003e#20812\u003c/a\u003e) (Simon Podlipsky)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/6fb3685bcbe9a6f72fd7dfb9129686b6fb96b0bd\"\u003e\u003ccode\u003e6fb3685\u003c/code\u003e\u003c/a\u003e fix: rule suggestions cause continuation in class body (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20787\"\u003e#20787\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eDocumentation\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/32cc7ab4ec653ce89da92deb5c40a9f4fc707fe5\"\u003e\u003ccode\u003e32cc7ab\u003c/code\u003e\u003c/a\u003e docs: fix typos in docs and comments (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20809\"\u003e#20809\u003c/a\u003e) (Tanuj Kanti)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/7f479376a2fa463d823ab762db6bb37ce8d2ee8f\"\u003e\u003ccode\u003e7f47937\u003c/code\u003e\u003c/a\u003e docs: Update README (GitHub Actions Bot)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eChores\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/d32235ec19ceea211fa86452afa383ca05f5c2f9\"\u003e\u003ccode\u003ed32235e\u003c/code\u003e\u003c/a\u003e ci: use pnpm in \u003ccode\u003eeslint-flat-config-utils\u003c/code\u003e type integration test (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20826\"\u003e#20826\u003c/a\u003e) (Francesco Trotta)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/3ffb14ea517de750ed1181579ef844af342e4096\"\u003e\u003ccode\u003e3ffb14e\u003c/code\u003e\u003c/a\u003e chore: clean up typos in comments and JSDoc (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20821\"\u003e#20821\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/452c4010c07dc2e36fe6ec6a8c48298878e86887\"\u003e\u003ccode\u003e452c401\u003c/code\u003e\u003c/a\u003e 10.4.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/b6417e8b55c9525070d6e168b485ce6ff21688ed\"\u003e\u003ccode\u003eb6417e8\u003c/code\u003e\u003c/a\u003e Build: changelog update for 10.4.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/6616856f28fa514a30f87b5539fc100d739a94bf\"\u003e\u003ccode\u003e6616856\u003c/code\u003e\u003c/a\u003e chore: upgrade knip to v6 (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20875\"\u003e#20875\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/d13b084a3ad02f926e9addaa35fc383759ea5554\"\u003e\u003ccode\u003ed13b084\u003c/code\u003e\u003c/a\u003e ci: ensure auto-created PRs run CI (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20860\"\u003e#20860\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/7e52a7151fb92eec0e0f67fe4e5ddbd1ccce796f\"\u003e\u003ccode\u003e7e52a71\u003c/code\u003e\u003c/a\u003e docs: add mention of \u003ccode\u003e@eslint-react/eslint-plugin\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20869\"\u003e#20869\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/e71c7af86dce9acc1d18cb12d2184309f6841594\"\u003e\u003ccode\u003ee71c7af\u003c/code\u003e\u003c/a\u003e ci: bump pnpm/action-setup from 6.0.5 to 6.0.7 (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20862\"\u003e#20862\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/544c0c3da589166ad8e5d634f35d3d06701c57be\"\u003e\u003ccode\u003e544c0c3\u003c/code\u003e\u003c/a\u003e fix: escape code path DOT labels in debug output (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20866\"\u003e#20866\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/db3468ba746407d7f286f18f7ea9db6df0e3bc08\"\u003e\u003ccode\u003edb3468b\u003c/code\u003e\u003c/a\u003e docs: tweak wording around ambiguous CJS-vs-ESM config (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20865\"\u003e#20865\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/d84393dea170f54191fd20c8268b52c81c0ccd99\"\u003e\u003ccode\u003ed84393d\u003c/code\u003e\u003c/a\u003e test: add unit tests for SuppressionsService.applySuppressions() (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20863\"\u003e#20863\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/90846643ec6e97d447ae0d831fabe6d17b0a998a\"\u003e\u003ccode\u003e9084664\u003c/code\u003e\u003c/a\u003e docs: Update README\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/eslint/eslint/compare/v9.39.2...v10.4.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `eslint-plugin-react-hooks` from 7.0.1 to 7.1.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/facebook/react/releases\"\u003eeslint-plugin-react-hooks's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eeslint-plugin-react-hooks@7.1.1 (April 17, 2026)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eNote:\u003c/strong\u003e 7.1.0 accidentally removed the \u003ccode\u003ecomponent-hook-factories\u003c/code\u003e rule, causing errors for users who referenced it in their ESLint config. This is now fixed.\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdd deprecated no-op \u003ccode\u003ecomponent-hook-factories\u003c/code\u003e rule for backwards compatibility. (\u003ca href=\"https://github.com/mofeiZ\"\u003e\u003ccode\u003e@​mofeiZ\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/36307\"\u003e#36307\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eeslint-plugin-react-hooks@7.1.0 (April 16, 2026)\u003c/h2\u003e\n\u003cp\u003eThis release adds ESLint v10 support, improves performance by skipping compilation for non-React files, and includes compiler lint improvements including better \u003ccode\u003eset-state-in-effect\u003c/code\u003e detection, improved ref validation, and more helpful error reporting.\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdd ESLint v10 support. (\u003ca href=\"https://github.com/azat-io\"\u003e\u003ccode\u003e@​azat-io\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/35720\"\u003e#35720\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSkip compilation for non-React files to improve performance. (\u003ca href=\"https://github.com/josephsavona\"\u003e\u003ccode\u003e@​josephsavona\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/35589\"\u003e#35589\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix exhaustive deps bug with Flow type casting. (\u003ca href=\"https://github.com/jorge-cab\"\u003e\u003ccode\u003e@​jorge-cab\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/35691\"\u003e#35691\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix \u003ccode\u003euseEffectEvent\u003c/code\u003e checks in component syntax. (\u003ca href=\"https://github.com/jbrown215\"\u003e\u003ccode\u003e@​jbrown215\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/35041\"\u003e#35041\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eImproved \u003ccode\u003eset-state-in-effect\u003c/code\u003e validation with fewer false negatives. (\u003ca href=\"https://github.com/jorge-cab\"\u003e\u003ccode\u003e@​jorge-cab\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/35134\"\u003e#35134\u003c/a\u003e, \u003ca href=\"https://github.com/josephsavona\"\u003e\u003ccode\u003e@​josephsavona\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/35147\"\u003e#35147\u003c/a\u003e, \u003ca href=\"https://github.com/jackpope\"\u003e\u003ccode\u003e@​jackpope\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/35214\"\u003e#35214\u003c/a\u003e, \u003ca href=\"https://github.com/chesnokov-tony\"\u003e\u003ccode\u003e@​chesnokov-tony\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/35419\"\u003e#35419\u003c/a\u003e, \u003ca href=\"https://github.com/jsleitor\"\u003e\u003ccode\u003e@​jsleitor\u003c/code...\n\n_Description has been truncated_","html_url":"https://github.com/devahmadsaad/react-starter-kit/pull/7","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/devahmadsaad%2Freact-starter-kit/issues/7","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/7/packages"}},{"old_version":"5.1.3","new_version":"5.2.0","update_type":"minor","path":null,"pr_created_at":"2026-05-11T04:57:41.000Z","version_change":"5.1.3 → 5.2.0","issue":{"uuid":"4418177141","node_id":"PR_kwDOSFWJz87aHMk2","number":5,"state":"open","title":"deps(deps): bump the all-dependencies group across 1 directory with 65 updates","user":"dependabot[bot]","labels":[],"assignees":[],"locked":false,"comments_count":1,"pull_request":true,"closed_at":null,"author_association":null,"state_reason":null,"created_at":"2026-05-11T04:57:41.000Z","updated_at":"2026-05-11T04:57:42.000Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"deps(deps): bump","group_name":"all-dependencies","update_count":65,"packages":[{"name":"@eslint-react/eslint-plugin","old_version":"2.13.0","new_version":"5.7.5","repository_url":"https://github.com/Rel1cx/eslint-react"},{"name":"@eslint/js","old_version":"9.39.2","new_version":"10.0.1","repository_url":"https://github.com/eslint/eslint"},{"name":"@typescript-eslint/eslint-plugin","old_version":"8.56.0","new_version":"8.59.2","repository_url":"https://github.com/typescript-eslint/typescript-eslint"},{"name":"@typescript-eslint/parser","old_version":"8.56.0","new_version":"8.59.2","repository_url":"https://github.com/typescript-eslint/typescript-eslint"},{"name":"eslint","old_version":"9.39.2","new_version":"10.3.0","repository_url":"https://github.com/eslint/eslint"},{"name":"eslint-plugin-react-hooks","old_version":"7.0.1","new_version":"7.1.1","repository_url":"https://github.com/facebook/react"},{"name":"globals","old_version":"17.3.0","new_version":"17.6.0","repository_url":"https://github.com/sindresorhus/globals"},{"name":"graphql","old_version":"16.12.0","new_version":"16.14.0","repository_url":"https://github.com/graphql/graphql-js"},{"name":"happy-dom","old_version":"20.6.2","new_version":"20.9.0","repository_url":"https://github.com/capricorn86/happy-dom"},{"name":"jiti","old_version":"2.6.1","new_version":"2.7.0","repository_url":"https://github.com/unjs/jiti"},{"name":"lint-staged","old_version":"16.2.7","new_version":"17.0.4","repository_url":"https://github.com/lint-staged/lint-staged"},{"name":"mermaid","old_version":"11.12.3","new_version":"11.14.0","repository_url":"https://github.com/mermaid-js/mermaid"},{"name":"prettier","old_version":"3.8.1","new_version":"3.8.3","repository_url":"https://github.com/prettier/prettier"},{"name":"react","old_version":"19.2.4","new_version":"19.2.6","repository_url":"https://github.com/facebook/react"},{"name":"typescript","old_version":"5.9.3","new_version":"6.0.3","repository_url":"https://github.com/microsoft/TypeScript"},{"name":"typescript-eslint","old_version":"8.56.0","new_version":"8.59.2","repository_url":"https://github.com/typescript-eslint/typescript-eslint"},{"name":"typescript-language-server","old_version":"5.1.3","new_version":"5.2.0","repository_url":"https://github.com/typescript-language-server/typescript-language-server"},{"name":"vite","old_version":"7.3.1","new_version":"8.0.11","repository_url":"https://github.com/vitejs/vite"},{"name":"vitepress","old_version":"2.0.0-alpha.16","new_version":"2.0.0-alpha.17","repository_url":"https://github.com/vuejs/vitepress"},{"name":"vitepress-plugin-llms","old_version":"1.11.0","new_version":"1.12.2","repository_url":"https://github.com/okineadev/vitepress-plugin-llms"},{"name":"vitest","old_version":"4.0.18","new_version":"4.1.5","repository_url":"https://github.com/vitest-dev/vitest"},{"name":"wrangler","old_version":"4.66.0","new_version":"4.90.0","repository_url":"https://github.com/cloudflare/workers-sdk"},{"name":"@ai-sdk/openai","old_version":"3.0.29","new_version":"3.0.63","repository_url":"https://github.com/vercel/ai"},{"name":"@better-auth/passkey","old_version":"1.4.18","new_version":"1.6.10","repository_url":"https://github.com/better-auth/better-auth"},{"name":"@better-auth/stripe","old_version":"1.4.18","new_version":"1.6.10","repository_url":"https://github.com/better-auth/better-auth"},{"name":"@trpc/server","old_version":"11.10.0","new_version":"11.17.0","repository_url":"https://github.com/trpc/trpc"},{"name":"ai","old_version":"6.0.91","new_version":"6.0.177","repository_url":"https://github.com/vercel/ai"},{"name":"better-auth","old_version":"1.4.18","new_version":"1.6.10","repository_url":"https://github.com/better-auth/better-auth"},{"name":"drizzle-orm","old_version":"0.45.1","new_version":"0.45.2","repository_url":"https://github.com/drizzle-team/drizzle-orm"},{"name":"postgres","old_version":"3.4.8","new_version":"3.4.9","repository_url":"https://github.com/porsager/postgres"},{"name":"resend","old_version":"6.9.2","new_version":"6.12.3","repository_url":"https://github.com/resend/resend-node"},{"name":"stripe","old_version":"20.3.1","new_version":"22.1.1","repository_url":"https://github.com/stripe/stripe-node"},{"name":"@cloudflare/workers-types","old_version":"4.20260218.0","new_version":"4.20260511.1","repository_url":"https://github.com/cloudflare/workerd"},{"name":"@types/bun","old_version":"1.3.9","new_version":"1.3.13","repository_url":"https://github.com/DefinitelyTyped/DefinitelyTyped"},{"name":"hono","old_version":"4.11.10","new_version":"4.12.18","repository_url":"https://github.com/honojs/hono"},{"name":"@tanstack/react-query","old_version":"5.90.21","new_version":"5.100.9","repository_url":"https://github.com/TanStack/query"},{"name":"@tanstack/react-router","old_version":"1.161.1","new_version":"1.169.2","repository_url":"https://github.com/TanStack/router"},{"name":"@trpc/client","old_version":"11.10.0","new_version":"11.17.0","repository_url":"https://github.com/trpc/trpc"},{"name":"@trpc/tanstack-react-query","old_version":"11.10.0","new_version":"11.17.0","repository_url":"https://github.com/trpc/trpc"},{"name":"jotai","old_version":"2.17.1","new_version":"2.20.0","repository_url":"https://github.com/pmndrs/jotai"},{"name":"lucide-react","old_version":"0.574.0","new_version":"1.14.0","repository_url":"https://github.com/lucide-icons/lucide"},{"name":"react-dom","old_version":"19.2.4","new_version":"19.2.6","repository_url":"https://github.com/facebook/react"},{"name":"tailwind-merge","old_version":"3.4.1","new_version":"3.6.0","repository_url":"https://github.com/dcastil/tailwind-merge"},{"name":"@tailwindcss/postcss","old_version":"4.2.0","new_version":"4.3.0","repository_url":"https://github.com/tailwindlabs/tailwindcss"},{"name":"@tanstack/react-query-devtools","old_version":"5.91.3","new_version":"5.100.9","repository_url":"https://github.com/TanStack/query"},{"name":"@tanstack/react-router-devtools","old_version":"1.161.1","new_version":"1.166.13","repository_url":"https://github.com/TanStack/router"},{"name":"@tanstack/router-plugin","old_version":"1.161.1","new_version":"1.167.35","repository_url":"https://github.com/TanStack/router"},{"name":"@types/node","old_version":"25.2.3","new_version":"25.6.2","repository_url":"https://github.com/DefinitelyTyped/DefinitelyTyped"},{"name":"@vitejs/plugin-react","old_version":"5.1.4","new_version":"6.0.1","repository_url":"https://github.com/vitejs/vite-plugin-react"},{"name":"@vitejs/plugin-react-swc","old_version":"4.2.3","new_version":"4.3.0","repository_url":"https://github.com/vitejs/vite-plugin-react"},{"name":"autoprefixer","old_version":"10.4.24","new_version":"10.5.0","repository_url":"https://github.com/postcss/autoprefixer"},{"name":"globby","old_version":"16.1.1","new_version":"16.2.0","repository_url":"https://github.com/sindresorhus/globby"},{"name":"@react-email/components","old_version":"1.0.8","new_version":"1.0.12","repository_url":"https://github.com/resend/react-email"},{"name":"@react-email/render","old_version":"2.0.4","new_version":"2.0.8","repository_url":"https://github.com/resend/react-email"},{"name":"@react-email/preview-server","old_version":"5.2.8","new_version":"5.2.10","repository_url":"https://github.com/resend/react-email"},{"name":"react-email","old_version":"5.2.8","new_version":"6.1.1","repository_url":"https://github.com/resend/react-email"},{"name":"@astrojs/react","old_version":"4.4.2","new_version":"5.0.4","repository_url":"https://github.com/withastro/astro"},{"name":"astro","old_version":"5.17.2","new_version":"6.3.1","repository_url":"https://github.com/withastro/astro"},{"name":"dotenv","old_version":"17.3.1","new_version":"17.4.2","repository_url":"https://github.com/motdotla/dotenv"},{"name":"drizzle-kit","old_version":"0.31.9","new_version":"0.31.10","repository_url":"https://github.com/drizzle-team/drizzle-orm"},{"name":"@modelcontextprotocol/sdk","old_version":"1.26.0","new_version":"1.29.0","repository_url":"https://github.com/modelcontextprotocol/typescript-sdk"},{"name":"got","old_version":"14.6.6","new_version":"15.0.5","repository_url":"https://github.com/sindresorhus/got"}],"path":null,"ecosystem":"npm"},"body":"Bumps the all-dependencies group with 62 updates in the / directory:\n\n| Package | From | To |\n| --- | --- | --- |\n| [@eslint-react/eslint-plugin](https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin) | `2.13.0` | `5.7.5` |\n| [@eslint/js](https://github.com/eslint/eslint/tree/HEAD/packages/js) | `9.39.2` | `10.0.1` |\n| [@typescript-eslint/eslint-plugin](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin) | `8.56.0` | `8.59.2` |\n| [@typescript-eslint/parser](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/parser) | `8.56.0` | `8.59.2` |\n| [eslint](https://github.com/eslint/eslint) | `9.39.2` | `10.3.0` |\n| [eslint-plugin-react-hooks](https://github.com/facebook/react/tree/HEAD/packages/eslint-plugin-react-hooks) | `7.0.1` | `7.1.1` |\n| [globals](https://github.com/sindresorhus/globals) | `17.3.0` | `17.6.0` |\n| [graphql](https://github.com/graphql/graphql-js) | `16.12.0` | `16.14.0` |\n| [happy-dom](https://github.com/capricorn86/happy-dom) | `20.6.2` | `20.9.0` |\n| [jiti](https://github.com/unjs/jiti) | `2.6.1` | `2.7.0` |\n| [lint-staged](https://github.com/lint-staged/lint-staged) | `16.2.7` | `17.0.4` |\n| [mermaid](https://github.com/mermaid-js/mermaid) | `11.12.3` | `11.14.0` |\n| [prettier](https://github.com/prettier/prettier) | `3.8.1` | `3.8.3` |\n| [react](https://github.com/facebook/react/tree/HEAD/packages/react) | `19.2.4` | `19.2.6` |\n| [typescript](https://github.com/microsoft/TypeScript) | `5.9.3` | `6.0.3` |\n| [typescript-eslint](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/typescript-eslint) | `8.56.0` | `8.59.2` |\n| [typescript-language-server](https://github.com/typescript-language-server/typescript-language-server) | `5.1.3` | `5.2.0` |\n| [vite](https://github.com/vitejs/vite/tree/HEAD/packages/vite) | `7.3.1` | `8.0.11` |\n| [vitepress](https://github.com/vuejs/vitepress) | `2.0.0-alpha.16` | `2.0.0-alpha.17` |\n| [vitepress-plugin-llms](https://github.com/okineadev/vitepress-plugin-llms) | `1.11.0` | `1.12.2` |\n| [vitest](https://github.com/vitest-dev/vitest/tree/HEAD/packages/vitest) | `4.0.18` | `4.1.5` |\n| [wrangler](https://github.com/cloudflare/workers-sdk/tree/HEAD/packages/wrangler) | `4.66.0` | `4.90.0` |\n| [@ai-sdk/openai](https://github.com/vercel/ai/tree/HEAD/packages/openai) | `3.0.29` | `3.0.63` |\n| [@better-auth/passkey](https://github.com/better-auth/better-auth/tree/HEAD/packages/passkey) | `1.4.18` | `1.6.10` |\n| [@better-auth/stripe](https://github.com/better-auth/better-auth/tree/HEAD/packages/stripe) | `1.4.18` | `1.6.10` |\n| [@trpc/server](https://github.com/trpc/trpc/tree/HEAD/packages/server) | `11.10.0` | `11.17.0` |\n| [ai](https://github.com/vercel/ai/tree/HEAD/packages/ai) | `6.0.91` | `6.0.177` |\n| [better-auth](https://github.com/better-auth/better-auth/tree/HEAD/packages/better-auth) | `1.4.18` | `1.6.10` |\n| [drizzle-orm](https://github.com/drizzle-team/drizzle-orm) | `0.45.1` | `0.45.2` |\n| [postgres](https://github.com/porsager/postgres) | `3.4.8` | `3.4.9` |\n| [resend](https://github.com/resend/resend-node) | `6.9.2` | `6.12.3` |\n| [stripe](https://github.com/stripe/stripe-node) | `20.3.1` | `22.1.1` |\n| [@cloudflare/workers-types](https://github.com/cloudflare/workerd) | `4.20260218.0` | `4.20260511.1` |\n| [@types/bun](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/bun) | `1.3.9` | `1.3.13` |\n| [hono](https://github.com/honojs/hono) | `4.11.10` | `4.12.18` |\n| [@tanstack/react-query](https://github.com/TanStack/query/tree/HEAD/packages/react-query) | `5.90.21` | `5.100.9` |\n| [@tanstack/react-router](https://github.com/TanStack/router/tree/HEAD/packages/react-router) | `1.161.1` | `1.169.2` |\n| [@trpc/client](https://github.com/trpc/trpc/tree/HEAD/packages/client) | `11.10.0` | `11.17.0` |\n| [@trpc/tanstack-react-query](https://github.com/trpc/trpc/tree/HEAD/packages/tanstack-react-query) | `11.10.0` | `11.17.0` |\n| [jotai](https://github.com/pmndrs/jotai) | `2.17.1` | `2.20.0` |\n| [lucide-react](https://github.com/lucide-icons/lucide/tree/HEAD/packages/lucide-react) | `0.574.0` | `1.14.0` |\n| [react-dom](https://github.com/facebook/react/tree/HEAD/packages/react-dom) | `19.2.4` | `19.2.6` |\n| [tailwind-merge](https://github.com/dcastil/tailwind-merge) | `3.4.1` | `3.6.0` |\n| [@tailwindcss/postcss](https://github.com/tailwindlabs/tailwindcss/tree/HEAD/packages/@tailwindcss-postcss) | `4.2.0` | `4.3.0` |\n| [@tanstack/react-query-devtools](https://github.com/TanStack/query/tree/HEAD/packages/react-query-devtools) | `5.91.3` | `5.100.9` |\n| [@tanstack/react-router-devtools](https://github.com/TanStack/router/tree/HEAD/packages/react-router-devtools) | `1.161.1` | `1.166.13` |\n| [@tanstack/router-plugin](https://github.com/TanStack/router/tree/HEAD/packages/router-plugin) | `1.161.1` | `1.167.35` |\n| [@types/node](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/node) | `25.2.3` | `25.6.2` |\n| [@vitejs/plugin-react](https://github.com/vitejs/vite-plugin-react/tree/HEAD/packages/plugin-react) | `5.1.4` | `6.0.1` |\n| [@vitejs/plugin-react-swc](https://github.com/vitejs/vite-plugin-react/tree/HEAD/packages/plugin-react-swc) | `4.2.3` | `4.3.0` |\n| [autoprefixer](https://github.com/postcss/autoprefixer) | `10.4.24` | `10.5.0` |\n| [globby](https://github.com/sindresorhus/globby) | `16.1.1` | `16.2.0` |\n| [@react-email/components](https://github.com/resend/react-email/tree/HEAD/packages/components) | `1.0.8` | `1.0.12` |\n| [@react-email/render](https://github.com/resend/react-email/tree/HEAD/packages/render) | `2.0.4` | `2.0.8` |\n| [@react-email/preview-server](https://github.com/resend/react-email/tree/HEAD/packages/preview-server) | `5.2.8` | `5.2.10` |\n| [react-email](https://github.com/resend/react-email/tree/HEAD/packages/react-email) | `5.2.8` | `6.1.1` |\n| [@astrojs/react](https://github.com/withastro/astro/tree/HEAD/packages/integrations/react) | `4.4.2` | `5.0.4` |\n| [astro](https://github.com/withastro/astro/tree/HEAD/packages/astro) | `5.17.2` | `6.3.1` |\n| [dotenv](https://github.com/motdotla/dotenv) | `17.3.1` | `17.4.2` |\n| [drizzle-kit](https://github.com/drizzle-team/drizzle-orm) | `0.31.9` | `0.31.10` |\n| [@modelcontextprotocol/sdk](https://github.com/modelcontextprotocol/typescript-sdk) | `1.26.0` | `1.29.0` |\n| [got](https://github.com/sindresorhus/got) | `14.6.6` | `15.0.5` |\n\n\nUpdates `@eslint-react/eslint-plugin` from 2.13.0 to 5.7.5\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/Rel1cx/eslint-react/releases\"\u003e@​eslint-react/eslint-plugin's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev5.7.5 (2026-05-08)\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003ch3\u003e🏗️ Internal\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eBumped \u003ccode\u003e@eslint/compat\u003c/code\u003e from 2.0.5 to 2.1.0.\u003c/li\u003e\n\u003cli\u003eBumped \u003ccode\u003e@types/node\u003c/code\u003e from 25.6.0 to 25.6.2.\u003c/li\u003e\n\u003cli\u003eBumped \u003ccode\u003enext\u003c/code\u003e from 16.2.5 to 16.2.6.\u003c/li\u003e\n\u003cli\u003eBumped \u003ccode\u003epublint\u003c/code\u003e from 0.3.19 to 0.3.20.\u003c/li\u003e\n\u003cli\u003eBumped \u003ccode\u003etsdown\u003c/code\u003e from 0.21.10 to 0.22.0.\u003c/li\u003e\n\u003cli\u003eBumped \u003ccode\u003epnpm\u003c/code\u003e from 10.33.4 to 11.0.8.\u003c/li\u003e\n\u003cli\u003eAdjusted website styles.\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/Rel1cx/eslint-react/compare/v5.7.4...v5.7.5\"\u003ehttps://github.com/Rel1cx/eslint-react/compare/v5.7.4...v5.7.5\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev5.7.4 (2026-05-07)\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003ch3\u003e🏗️ Internal\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eBumped \u003ccode\u003e@typescript-eslint\u003c/code\u003e packages from 8.59.1 to 8.59.2.\u003c/li\u003e\n\u003cli\u003eBumped \u003ccode\u003ereact\u003c/code\u003e and \u003ccode\u003ereact-dom\u003c/code\u003e from 19.2.5 to 19.2.6.\u003c/li\u003e\n\u003cli\u003eBumped \u003ccode\u003enext\u003c/code\u003e from 16.2.4 to 16.2.5.\u003c/li\u003e\n\u003cli\u003eBumped \u003ccode\u003enx\u003c/code\u003e from 22.7.1 to 23.0.0-canary.20260506-b594537.\u003c/li\u003e\n\u003cli\u003eBumped \u003ccode\u003efumadocs-core\u003c/code\u003e and \u003ccode\u003efumadocs-ui\u003c/code\u003e from 16.8.5 to 16.8.7.\u003c/li\u003e\n\u003cli\u003eBumped \u003ccode\u003epostcss\u003c/code\u003e from 8.5.13 to 8.5.14.\u003c/li\u003e\n\u003cli\u003eBumped \u003ccode\u003epublint\u003c/code\u003e from 0.3.18 to 0.3.19.\u003c/li\u003e\n\u003cli\u003eBumped \u003ccode\u003epnpm\u003c/code\u003e from 10.33.2 to 10.33.4.\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/Rel1cx/eslint-react/compare/v5.7.3...v5.7.4\"\u003ehttps://github.com/Rel1cx/eslint-react/compare/v5.7.3...v5.7.4\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev5.7.3 (2026-05-06)\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003ch3\u003e🐞 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003e\u003ccode\u003ereact-x/immutability\u003c/code\u003e\u003c/strong\u003e: Exempted ref mutations via a naming heuristic — any object whose identifier is \u003ccode\u003eref\u003c/code\u003e or ends with \u003ccode\u003eRef\u003c/code\u003e is treated as a mutable ref and skipped from immutability checks. This fixes false positives when mutating \u003ccode\u003eRefObject\u0026lt;T\u0026gt;\u003c/code\u003e values received as props (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1752\"\u003e#1752\u003c/a\u003e, \u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1751\"\u003e#1751\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003e\u003ccode\u003ereact-x/immutability\u003c/code\u003e\u003c/strong\u003e: Added \u003ccode\u003enoRefLikeStateName\u003c/code\u003e diagnostic to prevent state variables from being named \u003ccode\u003eref\u003c/code\u003e or ending with \u003ccode\u003eRef\u003c/code\u003e, which would otherwise bypass the ref exemption heuristic (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1752\"\u003e#1752\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e📝 Documentation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFixed the full rule name in \u003ccode\u003ereact-jsx/no-key-after-spread\u003c/code\u003e documentation (\u003ccode\u003ejsx/no-key-after-spread\u003c/code\u003e → \u003ccode\u003ejsx-no-key-after-spread\u003c/code\u003e) (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1750\"\u003e#1750\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/Rel1cx/eslint-react/compare/v5.7.2...v5.7.3\"\u003ehttps://github.com/Rel1cx/eslint-react/compare/v5.7.2...v5.7.3\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev5.7.2 (2026-05-04)\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003ch3\u003e🐞 Fixes\u003c/h3\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/Rel1cx/eslint-react/blob/main/CHANGELOG.md\"\u003e@​eslint-react/eslint-plugin's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev5.7.5 (2026-05-08)\u003c/h2\u003e\n\u003ch3\u003e🏗️ Internal\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eBumped \u003ccode\u003e@eslint/compat\u003c/code\u003e from 2.0.5 to 2.1.0.\u003c/li\u003e\n\u003cli\u003eBumped \u003ccode\u003e@types/node\u003c/code\u003e from 25.6.0 to 25.6.2.\u003c/li\u003e\n\u003cli\u003eBumped \u003ccode\u003enext\u003c/code\u003e from 16.2.5 to 16.2.6.\u003c/li\u003e\n\u003cli\u003eBumped \u003ccode\u003epublint\u003c/code\u003e from 0.3.19 to 0.3.20.\u003c/li\u003e\n\u003cli\u003eBumped \u003ccode\u003etsdown\u003c/code\u003e from 0.21.10 to 0.22.0.\u003c/li\u003e\n\u003cli\u003eBumped \u003ccode\u003epnpm\u003c/code\u003e from 10.33.4 to 11.0.8.\u003c/li\u003e\n\u003cli\u003eAdjusted website styles.\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/Rel1cx/eslint-react/compare/v5.7.4...v5.7.5\"\u003ehttps://github.com/Rel1cx/eslint-react/compare/v5.7.4...v5.7.5\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev5.7.4 (2026-05-07)\u003c/h2\u003e\n\u003ch3\u003e🏗️ Internal\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eBumped \u003ccode\u003e@typescript-eslint\u003c/code\u003e packages from 8.59.1 to 8.59.2.\u003c/li\u003e\n\u003cli\u003eBumped \u003ccode\u003ereact\u003c/code\u003e and \u003ccode\u003ereact-dom\u003c/code\u003e from 19.2.5 to 19.2.6.\u003c/li\u003e\n\u003cli\u003eBumped \u003ccode\u003enext\u003c/code\u003e from 16.2.4 to 16.2.5.\u003c/li\u003e\n\u003cli\u003eBumped \u003ccode\u003enx\u003c/code\u003e from 22.7.1 to 23.0.0-canary.20260506-b594537.\u003c/li\u003e\n\u003cli\u003eBumped \u003ccode\u003efumadocs-core\u003c/code\u003e and \u003ccode\u003efumadocs-ui\u003c/code\u003e from 16.8.5 to 16.8.7.\u003c/li\u003e\n\u003cli\u003eBumped \u003ccode\u003epostcss\u003c/code\u003e from 8.5.13 to 8.5.14.\u003c/li\u003e\n\u003cli\u003eBumped \u003ccode\u003epublint\u003c/code\u003e from 0.3.18 to 0.3.19.\u003c/li\u003e\n\u003cli\u003eBumped \u003ccode\u003epnpm\u003c/code\u003e from 10.33.2 to 10.33.4.\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/Rel1cx/eslint-react/compare/v5.7.3...v5.7.4\"\u003ehttps://github.com/Rel1cx/eslint-react/compare/v5.7.3...v5.7.4\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev5.7.3 (2026-05-06)\u003c/h2\u003e\n\u003ch3\u003e🐞 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003e\u003ccode\u003ereact-x/immutability\u003c/code\u003e\u003c/strong\u003e: Exempted ref mutations via a naming heuristic — any object whose identifier is \u003ccode\u003eref\u003c/code\u003e or ends with \u003ccode\u003eRef\u003c/code\u003e is treated as a mutable ref and skipped from immutability checks. This fixes false positives when mutating \u003ccode\u003eRefObject\u0026lt;T\u0026gt;\u003c/code\u003e values received as props (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1752\"\u003e#1752\u003c/a\u003e, \u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1751\"\u003e#1751\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003e\u003ccode\u003ereact-x/immutability\u003c/code\u003e\u003c/strong\u003e: Added \u003ccode\u003enoRefLikeStateName\u003c/code\u003e diagnostic to prevent state variables from being named \u003ccode\u003eref\u003c/code\u003e or ending with \u003ccode\u003eRef\u003c/code\u003e, which would otherwise bypass the ref exemption heuristic (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1752\"\u003e#1752\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e📝 Documentation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFixed the full rule name in \u003ccode\u003ereact-jsx/no-key-after-spread\u003c/code\u003e documentation (\u003ccode\u003ejsx/no-key-after-spread\u003c/code\u003e → \u003ccode\u003ejsx-no-key-after-spread\u003c/code\u003e) (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1750\"\u003e#1750\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/Rel1cx/eslint-react/compare/v5.7.2...v5.7.3\"\u003ehttps://github.com/Rel1cx/eslint-react/compare/v5.7.2...v5.7.3\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev5.7.2 (2026-05-04)\u003c/h2\u003e\n\u003ch3\u003e🐞 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003e\u003ccode\u003ereact-x/no-unused-state\u003c/code\u003e\u003c/strong\u003e: Removed the rule from the \u003ccode\u003erecommended\u003c/code\u003e preset for now (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1747\"\u003e#1747\u003c/a\u003e, \u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1748\"\u003e#1748\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e📝 Documentation\u003c/h3\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/de60fa2e3003c60e8c4f03970b5b84c7c9c84334\"\u003e\u003ccode\u003ede60fa2\u003c/code\u003e\u003c/a\u003e release: 5.7.5\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/2b075487d7952a8662c76305b64ce677776bab34\"\u003e\u003ccode\u003e2b07548\u003c/code\u003e\u003c/a\u003e release: 5.7.5-beta.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/9e186c17a28ff1d9e02e0a22f4f6b18193ceadca\"\u003e\u003ccode\u003e9e186c1\u003c/code\u003e\u003c/a\u003e release: 5.7.5-next.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/f7b012180b71b03a69e944b39fdc88811b16839b\"\u003e\u003ccode\u003ef7b0121\u003c/code\u003e\u003c/a\u003e chore: bump dependencies and adjust website styles (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1754\"\u003e#1754\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/99736d816cdcb56dd71be0ba8440c6b12017d862\"\u003e\u003ccode\u003e99736d8\u003c/code\u003e\u003c/a\u003e release: 5.7.4\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/bcd23f09215b120a119a53eacdb12e670ee897b9\"\u003e\u003ccode\u003ebcd23f0\u003c/code\u003e\u003c/a\u003e release: 5.7.4-beta.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/52071021ab5ae079fa69fc3996ac9109a76c230a\"\u003e\u003ccode\u003e5207102\u003c/code\u003e\u003c/a\u003e release: 5.7.4-next.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/b35fba3ea0e14827433efcc6017e8eaef0ca6486\"\u003e\u003ccode\u003eb35fba3\u003c/code\u003e\u003c/a\u003e Bump dependencies: eslint, react, next, and nx packages\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/a9098f22fc1a8c7b59e3b4916d0d5ff3cb2358be\"\u003e\u003ccode\u003ea9098f2\u003c/code\u003e\u003c/a\u003e release: 5.7.3\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/677db67c648814dbc500bdd40dea84ac9efa770c\"\u003e\u003ccode\u003e677db67\u003c/code\u003e\u003c/a\u003e release: 5.7.2\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/Rel1cx/eslint-react/commits/v5.7.5/plugins/eslint-plugin\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@eslint/js` from 9.39.2 to 10.0.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/eslint/eslint/releases\"\u003e@​eslint/js's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev10.0.1\u003c/h2\u003e\n\u003ch2\u003eBug Fixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/c87d5bded54c5cf491eb04c24c9d09bbbd42c23e\"\u003e\u003ccode\u003ec87d5bd\u003c/code\u003e\u003c/a\u003e fix: update eslint (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20531\"\u003e#20531\u003c/a\u003e) (renovate[bot])\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/d84100115c14691691058f00779c94e74fca946a\"\u003e\u003ccode\u003ed841001\u003c/code\u003e\u003c/a\u003e fix: update \u003ccode\u003eminimatch\u003c/code\u003e to \u003ccode\u003e10.2.1\u003c/code\u003e to address security vulnerabilities (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20519\"\u003e#20519\u003c/a\u003e) (루밀LuMir)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/04c21475b3004904948f02049f2888b401d82c78\"\u003e\u003ccode\u003e04c2147\u003c/code\u003e\u003c/a\u003e fix: update error message for unused suppressions (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20496\"\u003e#20496\u003c/a\u003e) (fnx)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/38b089c1726feac0e31a31d47941bd99e29ce003\"\u003e\u003ccode\u003e38b089c\u003c/code\u003e\u003c/a\u003e fix: update dependency \u003ccode\u003e@​eslint/config-array\u003c/code\u003e to ^0.23.1 (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20484\"\u003e#20484\u003c/a\u003e) (renovate[bot])\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eDocumentation\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/5b3dbce50a1404a9f118afe810cefeee79388a2a\"\u003e\u003ccode\u003e5b3dbce\u003c/code\u003e\u003c/a\u003e docs: add AI acknowledgement section to templates (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20431\"\u003e#20431\u003c/a\u003e) (루밀LuMir)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/6f23076037d5879f20fb3be2ef094293b1e8d38c\"\u003e\u003ccode\u003e6f23076\u003c/code\u003e\u003c/a\u003e docs: toggle nav in no-JS mode (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20476\"\u003e#20476\u003c/a\u003e) (Tanuj Kanti)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/b69cfb32a16c5d5e9986390d484fae1d21e406f9\"\u003e\u003ccode\u003eb69cfb3\u003c/code\u003e\u003c/a\u003e docs: Update README (GitHub Actions Bot)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eChores\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/e5c281ffd038a3a7a3e5364db0b9378e0ad83020\"\u003e\u003ccode\u003ee5c281f\u003c/code\u003e\u003c/a\u003e chore: updates for v9.39.3 release (Jenkins)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/8c3832adb77cd993b4a24891900d5eeaaf093cdc\"\u003e\u003ccode\u003e8c3832a\u003c/code\u003e\u003c/a\u003e chore: update \u003ccode\u003e@​typescript-eslint/parser\u003c/code\u003e to ^8.56.0 (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20514\"\u003e#20514\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/8330d238ae6adb68bb6a1c9381e38cfedd990d94\"\u003e\u003ccode\u003e8330d23\u003c/code\u003e\u003c/a\u003e test: add tests for config-api (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20493\"\u003e#20493\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/37d6e91e88fa6a2ca6d8726679096acff21ba6cc\"\u003e\u003ccode\u003e37d6e91\u003c/code\u003e\u003c/a\u003e chore: remove eslint v10 prereleases from eslint-config-eslint deps (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20494\"\u003e#20494\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/da7cd0e79197ad16e17052eef99df141de6dbfb1\"\u003e\u003ccode\u003eda7cd0e\u003c/code\u003e\u003c/a\u003e refactor: cleanup error message templates (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20479\"\u003e#20479\u003c/a\u003e) (Francesco Trotta)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/84fb885d49ac810e79a9491276b4828b53d913e5\"\u003e\u003ccode\u003e84fb885\u003c/code\u003e\u003c/a\u003e chore: package.json update for \u003ccode\u003e@​eslint/js\u003c/code\u003e release (Jenkins)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/1f667344b57c4c09b548d94bcfac1f91b6e5c63d\"\u003e\u003ccode\u003e1f66734\u003c/code\u003e\u003c/a\u003e chore: add \u003ccode\u003eeslint\u003c/code\u003e to \u003ccode\u003epeerDependencies\u003c/code\u003e of \u003ccode\u003e@eslint/js\u003c/code\u003e (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20467\"\u003e#20467\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev10.0.0\u003c/h2\u003e\n\u003ch2\u003eBreaking Changes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/f9e54f43a5e497cdfa179338b431093245cb787b\"\u003e\u003ccode\u003ef9e54f4\u003c/code\u003e\u003c/a\u003e feat!: estimate rule-tester failure location (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20420\"\u003e#20420\u003c/a\u003e) (ST-DDT)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/a176319d8ade1a7d9b2d7fb8f038f55a2662325f\"\u003e\u003ccode\u003ea176319\u003c/code\u003e\u003c/a\u003e feat!: replace \u003ccode\u003echalk\u003c/code\u003e with \u003ccode\u003estyleText\u003c/code\u003e and add \u003ccode\u003ecolor\u003c/code\u003e to \u003ccode\u003eResultsMeta\u003c/code\u003e (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20227\"\u003e#20227\u003c/a\u003e) (루밀LuMir)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/c7046e6c1e03c4ca0eee4888a1f2eba4c6454f84\"\u003e\u003ccode\u003ec7046e6\u003c/code\u003e\u003c/a\u003e feat!: enable JSX reference tracking (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20152\"\u003e#20152\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/fa31a608901684fbcd9906d1907e66561d16e5aa\"\u003e\u003ccode\u003efa31a60\u003c/code\u003e\u003c/a\u003e feat!: add \u003ccode\u003ename\u003c/code\u003e to configs (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20015\"\u003e#20015\u003c/a\u003e) (Kirk Waiblinger)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/3383e7ec9028166cafc8ea7986c2f7498d0049f0\"\u003e\u003ccode\u003e3383e7e\u003c/code\u003e\u003c/a\u003e fix!: remove deprecated \u003ccode\u003eSourceCode\u003c/code\u003e methods (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20137\"\u003e#20137\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/501abd0e916a35554c58b7c0365537f1fa3880ce\"\u003e\u003ccode\u003e501abd0\u003c/code\u003e\u003c/a\u003e feat!: update dependency minimatch to v10 (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20246\"\u003e#20246\u003c/a\u003e) (renovate[bot])\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/ca4d3b40085de47561f89656a2207d09946ed45e\"\u003e\u003ccode\u003eca4d3b4\u003c/code\u003e\u003c/a\u003e fix!: stricter rule tester assertions for valid test cases (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20125\"\u003e#20125\u003c/a\u003e) (唯然)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/96512a66c86402fb0538cdcb6cd30b9073f6bf3b\"\u003e\u003ccode\u003e96512a6\u003c/code\u003e\u003c/a\u003e fix!: Remove deprecated rule context methods (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20086\"\u003e#20086\u003c/a\u003e) (Nicholas C. Zakas)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/c69fdacdb2e886b9d965568a397aa8220db3fe90\"\u003e\u003ccode\u003ec69fdac\u003c/code\u003e\u003c/a\u003e feat!: remove eslintrc support (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20037\"\u003e#20037\u003c/a\u003e) (Francesco Trotta)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/208b5cc34a8374ff81412b5bec2e0800eebfbd04\"\u003e\u003ccode\u003e208b5cc\u003c/code\u003e\u003c/a\u003e feat!: Use \u003ccode\u003eScopeManager#addGlobals()\u003c/code\u003e (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20132\"\u003e#20132\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/a2ee188ea7a38a0c6155f3d39e2b00e1d0f36e14\"\u003e\u003ccode\u003ea2ee188\u003c/code\u003e\u003c/a\u003e fix!: add \u003ccode\u003euniqueItems: true\u003c/code\u003e in \u003ccode\u003eno-invalid-regexp\u003c/code\u003e option (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20155\"\u003e#20155\u003c/a\u003e) (Tanuj Kanti)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/a89059dbf2832d417dd493ee81483227ec44e4ab\"\u003e\u003ccode\u003ea89059d\u003c/code\u003e\u003c/a\u003e feat!: Program range span entire source text (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20133\"\u003e#20133\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/39a6424373d915fa9de0d7b0caba9a4dc3da9b53\"\u003e\u003ccode\u003e39a6424\u003c/code\u003e\u003c/a\u003e fix!: assert 'text' is a string across all RuleFixer methods (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20082\"\u003e#20082\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/f28fbf846244e043c92b355b224d121b06140b44\"\u003e\u003ccode\u003ef28fbf8\u003c/code\u003e\u003c/a\u003e fix!: Deprecate \u003ccode\u003e\u0026quot;always\u0026quot;\u003c/code\u003e and \u003ccode\u003e\u0026quot;as-needed\u0026quot;\u003c/code\u003e options of the \u003ccode\u003eradix\u003c/code\u003e rule (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20223\"\u003e#20223\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/aa3fb2b233e929b37220be940575f42c280e0b98\"\u003e\u003ccode\u003eaa3fb2b\u003c/code\u003e\u003c/a\u003e fix!: tighten \u003ccode\u003efunc-names\u003c/code\u003e schema (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20119\"\u003e#20119\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/f6c0ed0311dcfee853367d5068c765d066e6b756\"\u003e\u003ccode\u003ef6c0ed0\u003c/code\u003e\u003c/a\u003e feat!: report \u003ccode\u003eeslint-env\u003c/code\u003e comments as errors (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20128\"\u003e#20128\u003c/a\u003e) (Francesco Trotta)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/4bf739fb533e59f7f0a66b65f7bc80be0f37d8db\"\u003e\u003ccode\u003e4bf739f\u003c/code\u003e\u003c/a\u003e fix!: remove deprecated \u003ccode\u003eLintMessage#nodeType\u003c/code\u003e and \u003ccode\u003eTestCaseError#type\u003c/code\u003e (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20096\"\u003e#20096\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/523c076866400670fb2192a3f55dbf7ad3469247\"\u003e\u003ccode\u003e523c076\u003c/code\u003e\u003c/a\u003e feat!: drop support for jiti \u0026lt; 2.2.0 (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20016\"\u003e#20016\u003c/a\u003e) (michael faith)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/454a292c95f34dad232411ddac06408e6383bb64\"\u003e\u003ccode\u003e454a292\u003c/code\u003e\u003c/a\u003e feat!: update \u003ccode\u003eeslint:recommended\u003c/code\u003e configuration (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20210\"\u003e#20210\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/4f880ee02992e1bf0e96ebaba679985e2d1295f1\"\u003e\u003ccode\u003e4f880ee\u003c/code\u003e\u003c/a\u003e feat!: remove \u003ccode\u003ev10_*\u003c/code\u003e and inactive \u003ccode\u003eunstable_*\u003c/code\u003e flags (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20225\"\u003e#20225\u003c/a\u003e) (sethamus)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/f18115c363a4ac7671a4c7f30ee13d57ebba330f\"\u003e\u003ccode\u003ef18115c\u003c/code\u003e\u003c/a\u003e feat!: \u003ccode\u003eno-shadow-restricted-names\u003c/code\u003e report \u003ccode\u003eglobalThis\u003c/code\u003e by default (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20027\"\u003e#20027\u003c/a\u003e) (sethamus)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/c6358c31fbd3937b92d89be2618ffdf5a774604e\"\u003e\u003ccode\u003ec6358c3\u003c/code\u003e\u003c/a\u003e feat!: Require Node.js \u003ccode\u003e^20.19.0 || ^22.13.0 || \u0026gt;=24\u003c/code\u003e (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20160\"\u003e#20160\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eFeatures\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/bff9091927811497dbf066b0e3b85ecb37d43822\"\u003e\u003ccode\u003ebff9091\u003c/code\u003e\u003c/a\u003e feat: handle \u003ccode\u003eArray.fromAsync\u003c/code\u003e in \u003ccode\u003earray-callback-return\u003c/code\u003e (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20457\"\u003e#20457\u003c/a\u003e) (Francesco Trotta)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/290c594bb50c439fb71bc75521ee5360daa8c222\"\u003e\u003ccode\u003e290c594\u003c/code\u003e\u003c/a\u003e feat: add \u003ccode\u003eself\u003c/code\u003e to \u003ccode\u003eno-implied-eval\u003c/code\u003e rule (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20468\"\u003e#20468\u003c/a\u003e) (sethamus)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/43677de07ebd6e14bfac40a46ad749ba783c45f2\"\u003e\u003ccode\u003e43677de\u003c/code\u003e\u003c/a\u003e feat: fix handling of function and class expression names in \u003ccode\u003eno-shadow\u003c/code\u003e (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20432\"\u003e#20432\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/84fb885d49ac810e79a9491276b4828b53d913e5\"\u003e\u003ccode\u003e84fb885\u003c/code\u003e\u003c/a\u003e chore: package.json update for \u003ccode\u003e@​eslint/js\u003c/code\u003e release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/1f667344b57c4c09b548d94bcfac1f91b6e5c63d\"\u003e\u003ccode\u003e1f66734\u003c/code\u003e\u003c/a\u003e chore: add \u003ccode\u003eeslint\u003c/code\u003e to \u003ccode\u003epeerDependencies\u003c/code\u003e of \u003ccode\u003e@eslint/js\u003c/code\u003e (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20467\"\u003e#20467\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/f3fbc2f60cbe2c718364feb8c3fc0452c0df3c56\"\u003e\u003ccode\u003ef3fbc2f\u003c/code\u003e\u003c/a\u003e chore: set \u003ccode\u003e@eslint/js\u003c/code\u003e version to 10.0.0 to skip releasing it (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20466\"\u003e#20466\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/b4b3127f8542c599ce2dea804b6582ebc40c993d\"\u003e\u003ccode\u003eb4b3127\u003c/code\u003e\u003c/a\u003e chore: package.json update for \u003ccode\u003e@​eslint/js\u003c/code\u003e release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/0b14059491d830a49b3577931f4f68fbcfce6be5\"\u003e\u003ccode\u003e0b14059\u003c/code\u003e\u003c/a\u003e chore: package.json update for \u003ccode\u003e@​eslint/js\u003c/code\u003e release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/fa31a608901684fbcd9906d1907e66561d16e5aa\"\u003e\u003ccode\u003efa31a60\u003c/code\u003e\u003c/a\u003e feat!: add \u003ccode\u003ename\u003c/code\u003e to configs (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20015\"\u003e#20015\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/1e2cad5f6fa47ed6ed89d2a29798dda926d50990\"\u003e\u003ccode\u003e1e2cad5\u003c/code\u003e\u003c/a\u003e chore: package.json update for \u003ccode\u003e@​eslint/js\u003c/code\u003e release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/454a292c95f34dad232411ddac06408e6383bb64\"\u003e\u003ccode\u003e454a292\u003c/code\u003e\u003c/a\u003e feat!: update \u003ccode\u003eeslint:recommended\u003c/code\u003e configuration (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20210\"\u003e#20210\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/c6358c31fbd3937b92d89be2618ffdf5a774604e\"\u003e\u003ccode\u003ec6358c3\u003c/code\u003e\u003c/a\u003e feat!: Require Node.js \u003ccode\u003e^20.19.0 || ^22.13.0 || \u0026gt;=24\u003c/code\u003e (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20160\"\u003e#20160\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/eslint/eslint/commits/v10.0.1/packages/js\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@typescript-eslint/eslint-plugin` from 8.56.0 to 8.59.2\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases\"\u003e@​typescript-eslint/eslint-plugin's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev8.59.2\u003c/h2\u003e\n\u003ch2\u003e8.59.2 (2026-05-04)\u003c/h2\u003e\n\u003ch3\u003e🩹 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unsafe-type-assertion] handle crash on recursive template literal types (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12150\"\u003e#12150\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-deprecated] object destructuring values should be treated as declarations (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12292\"\u003e#12292\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003erule-tester:\u003c/strong\u003e add TypeScript as a peer dependency (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12288\"\u003e#12288\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e❤️ Thank You\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eDariusz Czajkowski\u003c/li\u003e\n\u003cli\u003eDima Barabash\u003c/li\u003e\n\u003cli\u003eKirk Waiblinger \u003ca href=\"https://github.com/kirkwaiblinger\"\u003e\u003ccode\u003e@​kirkwaiblinger\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.2\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003ev8.59.1\u003c/h2\u003e\n\u003ch2\u003e8.59.1 (2026-04-27)\u003c/h2\u003e\n\u003ch3\u003e🩹 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-type-assertion] fix crash \u0026quot;TypeError: checker.getTypeArguments is not a function\u0026quot; (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12246\"\u003e#12246\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-type-assertion] preserve index signatures in undefined unions (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12257\"\u003e#12257\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-type-assertion] preserve phantom type arguments in generic inference (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12269\"\u003e#12269\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-type-assertion] avoid false positive in logical assignment assertions (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12278\"\u003e#12278\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-type-arguments] handle instantiation expressions (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12220\"\u003e#12220\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-condition] treat void as nullish in no-unnecessary-condition (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12241\"\u003e#12241\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e❤️ Thank You\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eanasm266 \u003ca href=\"https://github.com/anasm266\"\u003e\u003ccode\u003e@​anasm266\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAnshika Jain \u003ca href=\"https://github.com/Anshikakalpana\"\u003e\u003ccode\u003e@​Anshikakalpana\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUlrich Stark\u003c/li\u003e\n\u003cli\u003eyugo innami \u003ca href=\"https://github.com/nami8824\"\u003e\u003ccode\u003e@​nami8824\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.1\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003ev8.59.0\u003c/h2\u003e\n\u003ch2\u003e8.59.0 (2026-04-20)\u003c/h2\u003e\n\u003ch3\u003e🚀 Features\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-type-assertion] report more cases based on assignability (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/11789\"\u003e#11789\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e❤️ Thank You\u003c/h3\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/CHANGELOG.md\"\u003e@​typescript-eslint/eslint-plugin's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e8.59.2 (2026-05-04)\u003c/h2\u003e\n\u003ch3\u003e🩹 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-deprecated] object destructuring values should be treated as declarations (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12292\"\u003e#12292\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unsafe-type-assertion] handle crash on recursive template literal types (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12150\"\u003e#12150\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e❤️ Thank You\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eDima Barabash\u003c/li\u003e\n\u003cli\u003eKirk Waiblinger \u003ca href=\"https://github.com/kirkwaiblinger\"\u003e\u003ccode\u003e@​kirkwaiblinger\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.2\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003e8.59.1 (2026-04-27)\u003c/h2\u003e\n\u003ch3\u003e🩹 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-condition] treat void as nullish in no-unnecessary-condition (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12241\"\u003e#12241\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-type-arguments] handle instantiation expressions (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12220\"\u003e#12220\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-type-assertion] avoid false positive in logical assignment assertions (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12278\"\u003e#12278\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-type-assertion] preserve phantom type arguments in generic inference (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12269\"\u003e#12269\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-type-assertion] preserve index signatures in undefined unions (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12257\"\u003e#12257\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-type-assertion] fix crash \u0026quot;TypeError: checker.getTypeArguments is not a function\u0026quot; (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12246\"\u003e#12246\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e❤️ Thank You\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eanasm266 \u003ca href=\"https://github.com/anasm266\"\u003e\u003ccode\u003e@​anasm266\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAnshika Jain \u003ca href=\"https://github.com/Anshikakalpana\"\u003e\u003ccode\u003e@​Anshikakalpana\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUlrich Stark\u003c/li\u003e\n\u003cli\u003eyugo innami \u003ca href=\"https://github.com/nami8824\"\u003e\u003ccode\u003e@​nami8824\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.1\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003e8.59.0 (2026-04-20)\u003c/h2\u003e\n\u003ch3\u003e🚀 Features\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-type-assertion] report more cases based on assignability (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/11789\"\u003e#11789\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e❤️ Thank You\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUlrich Stark\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.0\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/2ec35f1760aade4df4c631d76d78c7ed5e136333\"\u003e\u003ccode\u003e2ec35f1\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.59.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/ec3ef25390f7daf5a9ff33a60282bdbbb49ab0f3\"\u003e\u003ccode\u003eec3ef25\u003c/code\u003e\u003c/a\u003e test: make no-useless-empty-export tests fully static (\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin/issues/12260\"\u003e#12260\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/60d0a513870d833617374ff8ea256d86ca3cbbbb\"\u003e\u003ccode\u003e60d0a51\u003c/code\u003e\u003c/a\u003e chore(eslint-plugin): switch auto-generated test cases to hand-written in no-...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/5c53da230a70aba7d6f3d6474b5d249b430a95d0\"\u003e\u003ccode\u003e5c53da2\u003c/code\u003e\u003c/a\u003e fix(eslint-plugin): [no-deprecated] object destructuring values should be tre...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/80c28a1ada3f975a932a02587cefee632ccf6550\"\u003e\u003ccode\u003e80c28a1\u003c/code\u003e\u003c/a\u003e fix(eslint-plugin): [no-unsafe-type-assertion] handle crash on recursive temp...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/b7b2670123f76419630f88f3a807f85b7c535230\"\u003e\u003ccode\u003eb7b2670\u003c/code\u003e\u003c/a\u003e test: make no-this-alias tests fully static (\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin/issues/12258\"\u003e#12258\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/52457932e5507b5ca01e720a541f3f8d01e09b9d\"\u003e\u003ccode\u003e5245793\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.59.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/3cef12471659c42c9d4b179f4113a080b1fa2d66\"\u003e\u003ccode\u003e3cef124\u003c/code\u003e\u003c/a\u003e chore(eslint-plugin): switch auto-generated test cases to hand-written in dot...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/27c507b6e532abcd1efa51055f045b00f22055c3\"\u003e\u003ccode\u003e27c507b\u003c/code\u003e\u003c/a\u003e test: make sort-type-constituents tests fully static (\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin/issues/12262\"\u003e#12262\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/a03b31d422be35d8ddc979f48f9317e3f33dd1ce\"\u003e\u003ccode\u003ea03b31d\u003c/code\u003e\u003c/a\u003e chore(eslint-plugin): switch auto-generated test cases to hand-written in no-...\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commits/v8.59.2/packages/eslint-plugin\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@typescript-eslint/parser` from 8.56.0 to 8.59.2\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases\"\u003e@​typescript-eslint/parser's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev8.59.2\u003c/h2\u003e\n\u003ch2\u003e8.59.2 (2026-05-04)\u003c/h2\u003e\n\u003ch3\u003e🩹 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unsafe-type-assertion] handle crash on recursive template literal types (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12150\"\u003e#12150\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-deprecated] object destructuring values should be treated as declarations (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12292\"\u003e#12292\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003erule-tester:\u003c/strong\u003e add TypeScript as a peer dependency (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12288\"\u003e#12288\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e❤️ Thank You\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eDariusz Czajkowski\u003c/li\u003e\n\u003cli\u003eDima Barabash\u003c/li\u003e\n\u003cli\u003eKirk Waiblinger \u003ca href=\"https://github.com/kirkwaiblinger\"\u003e\u003ccode\u003e@​kirkwaiblinger\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.2\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003ev8.59.1\u003c/h2\u003e\n\u003ch2\u003e8.59.1 (2026-04-27)\u003c/h2\u003e\n\u003ch3\u003e🩹 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-type-assertion] fix crash \u0026quot;TypeError: checker.getTypeArguments is not a function\u0026quot; (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12246\"\u003e#12246\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-type-assertion] preserve index signatures in undefined unions (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12257\"\u003e#12257\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-type-assertion] preserve phantom type arguments in generic inference (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12269\"\u003e#12269\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-type-assertion] avoid false positive in logical assignment assertions (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12278\"\u003e#12278\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-type-arguments] handle instantiation expressions (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12220\"\u003e#12220\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-condition] treat void as nullish in no-unnecessary-condition (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12241\"\u003e#12241\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e❤️ Thank You\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eanasm266 \u003ca href=\"https://github.com/anasm266\"\u003e\u003ccode\u003e@​anasm266\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAnshika Jain \u003ca href=\"https://github.com/Anshikakalpana\"\u003e\u003ccode\u003e@​Anshikakalpana\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUlrich Stark\u003c/li\u003e\n\u003cli\u003eyugo innami \u003ca href=\"https://github.com/nami8824\"\u003e\u003ccode\u003e@​nami8824\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.1\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003ev8.59.0\u003c/h2\u003e\n\u003ch2\u003e8.59.0 (2026-04-20)\u003c/h2\u003e\n\u003ch3\u003e🚀 Features\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-type-assertion] report more cases based on assignability (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/11789\"\u003e#11789\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e❤️ Thank You\u003c/h3\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/parser/CHANGELOG.md\"\u003e@​typescript-eslint/parser's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e8.59.2 (2026-05-04)\u003c/h2\u003e\n\u003cp\u003eThis was a version bump only for parser to align it with other projects, there were no code changes.\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.2\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003e8.59.1 (2026-04-27)\u003c/h2\u003e\n\u003cp\u003eThis was a version bump only for parser to align it with other projects, there were no code changes.\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.1\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003e8.59.0 (2026-04-20)\u003c/h2\u003e\n\u003cp\u003eThis was a version bump only for parser to align it with other projects, there were no code changes.\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.0\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003e8.58.2 (2026-04-13)\u003c/h2\u003e\n\u003ch3\u003e🩹 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eremove tsbuildinfo cache file from published packages (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12187\"\u003e#12187\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e❤️ Thank You\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAbhijeet Singh \u003ca href=\"https://github.com/cseas\"\u003e\u003ccode\u003e@​cseas\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.58.2\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003e8.58.1 (2026-04-08)\u003c/h2\u003e\n\u003cp\u003eThis was a version bump only for parser to align it with other projects, there were no code changes.\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.58.1\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003e8.58.0 (2026-03-30)\u003c/h2\u003e\n\u003ch3\u003e🚀 Features\u003c/h3\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/2ec35f1760aade4df4c631d76d78c7ed5e136333\"\u003e\u003ccode\u003e2ec35f1\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.59.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/52457932e5507b5ca01e720a541f3f8d01e09b9d\"\u003e\u003ccode\u003e5245793\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.59.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/ea9ae4f8817873480e3501145059f63e39e8d8a1\"\u003e\u003ccode\u003eea9ae4f\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.59.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/90c2803a4c250e0343598d41e973f95e743bf4ce\"\u003e\u003ccode\u003e90c2803\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.58.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/be6b49a02d68db9bdc8985e7e9e1598700fda2fa\"\u003e\u003ccode\u003ebe6b49a\u003c/code\u003e\u003c/a\u003e fix: remove tsbuildinfo cache file from published packages (\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/parser/issues/12187\"\u003e#12187\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/5311ed312eadf4e238324f2726ae0b1f3f2206e6\"\u003e\u003ccode\u003e5311ed3\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.58.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/493341709fe7d1d6433332b7bd2724e3332c7cdf\"\u003e\u003ccode\u003e4933417\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.58.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/8cde2d06fb9bc591a4c93452509ddbd600c76a35\"\u003e\u003ccode\u003e8cde2d0\u003c/code\u003e\u003c/a\u003e feat: support TypeScript 6 (\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/parser/issues/12124\"\u003e#12124\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/be4d54d26e695cc93605ffcca67dd75848e95c6f\"\u003e\u003ccode\u003ebe4d54d\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.57.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/c7c38aa252d7bf6708a225aebedc57686ac33dcd\"\u003e\u003ccode\u003ec7c38aa\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.57.1\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commits/v8.59.2/packages/parser\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `eslint` from 9.39.2 to 10.3.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/eslint/eslint/releases\"\u003eeslint's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev10.3.0\u003c/h2\u003e\n\u003ch2\u003eFeatures\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/379571a975f2b24d88037b9de2e72ec61d004130\"\u003e\u003ccode\u003e379571a\u003c/code\u003e\u003c/a\u003e feat: add suggestions for no-unused-private-class-members (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20773\"\u003e#20773\u003c/a\u003e) (sethamus)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eBug Fixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/b6ae5cf07b9b51802367539cb24b245b61eaa37c\"\u003e\u003ccode\u003eb6ae5cf\u003c/code\u003e\u003c/a\u003e fix: handle unavailable require cache (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20812\"\u003e#20812\u003c/a\u003e) (Simon Podlipsky)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/6fb3685bcbe9a6f72fd7dfb9129686b6fb96b0bd\"\u003e\u003ccode\u003e6fb3685\u003c/code\u003e\u003c/a\u003e fix: rule suggestions cause continuation in class body (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20787\"\u003e#20787\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eDocumentation\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/32cc7ab4ec653ce89da92deb5c40a9f4fc707fe5\"\u003e\u003ccode\u003e32cc7ab\u003c/code\u003e\u003c/a\u003e docs: fix typos in docs and comments (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20809\"\u003e#20809\u003c/a\u003e) (Tanuj Kanti)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/7f479376a2fa463d823ab762db6bb37ce8d2ee8f\"\u003e\u003ccode\u003e7f47937\u003c/code\u003e\u003c/a\u003e docs: Update README (GitHub Actions Bot)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eChores\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/d32235ec19ceea211fa86452afa383ca05f5c2f9\"\u003e\u003ccode\u003ed32235e\u003c/code\u003e\u003c/a\u003e ci: use pnpm in \u003ccode\u003eeslint-flat-config-utils\u003c/code\u003e type integration test (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20826\"\u003e#20826\u003c/a\u003e) (Francesco Trotta)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/3ffb14ea517de750ed1181579ef844af342e4096\"\u003e\u003ccode\u003e3ffb14e\u003c/code\u003e\u003c/a\u003e chore: clean up typos in comments and JSDoc (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20821\"\u003e#20821\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/22eb58a21cbde2fbd53a1fae99453d408672de50\"\u003e\u003ccode\u003e22eb58a\u003c/code\u003e\u003c/a\u003e chore: add missing continue-on-error to ecosystem-tests.yml (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20818\"\u003e#20818\u003c/a\u003e) (Josh Goldberg ✨)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/88bf0024cb36caebf2880516d9a1f81aa75dafe2\"\u003e\u003ccode\u003e88bf002\u003c/code\u003e\u003c/a\u003e ci: bump pnpm/action-setup from 6.0.1 to 6.0.3 (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20815\"\u003e#20815\u003c/a\u003e) (dependabot[bot])\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/97c8c330beae9557ad24e19f94eebc8d08d1a722\"\u003e\u003ccode\u003e97c8c33\u003c/code\u003e\u003c/a\u003e chore: update ilshidur/action-discord action to v0.4.0 (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20811\"\u003e#20811\u003c/a\u003e) (renovate[bot])\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/2f58136dd47364a4cae7054a64f7bf1e79693813\"\u003e\u003ccode\u003e2f58136\u003c/code\u003e\u003c/a\u003e chore: pin peter-evans/create-pull-request action to 5f6978f (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20810\"\u003e#20810\u003c/a\u003e) (renovate[bot])\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/77add7f1bc91ed17bba3be3289928a9146c5f5a1\"\u003e\u003ccode\u003e77add7f\u003c/code\u003e\u003c/a\u003e chore: add initial ecosystem plugin tests workflow (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/19643\"\u003e#19643\u003c/a\u003e) (Josh Goldberg ✨)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/4023b55490fae55e464fe35530ef038cdf5d79a5\"\u003e\u003ccode\u003e4023b55\u003c/code\u003e\u003c/a\u003e test: Add unit tests for SuppressionsService.prune() (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20797\"\u003e#20797\u003c/a\u003e) (kuldeep kumar)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/54080dad4f77bb39a1a843933d4ff3a2b7c175e2\"\u003e\u003ccode\u003e54080da\u003c/code\u003e\u003c/a\u003e test: add unit tests for ForkContext (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20778\"\u003e#20778\u003c/a\u003e) (kuldeep kumar)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/f0e2bcc4bf19253aaebfbd7df87824b0ca4a151f\"\u003e\u003ccode\u003ef0e2bcc\u003c/code\u003e\u003c/a\u003e test: add unit tests for SuppressionsService.suppress() method (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20765\"\u003e#20765\u003c/a\u003e) (kuldeep kumar)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/a7f0b94743a99bcdf8d07cff15ffbfa6a6c5f927\"\u003e\u003ccode\u003ea7f0b94\u003c/code\u003e\u003c/a\u003e chore: update dependency prettier to v3.8.3 (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20782\"\u003e#20782\u003c/a\u003e) (renovate[bot])\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/7bf93d9e79f6dbf77242cbb9a9b8be834730fccd\"\u003e\u003ccode\u003e7bf93d9\u003c/code\u003e\u003c/a\u003e chore: update TypeScript to v6 (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20677\"\u003e#20677\u003c/a\u003e) (sethamus)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/b42dd72e76e7f90e7f0be9458288d93353052adc\"\u003e\u003ccode\u003eb42dd72\u003c/code\u003e\u003c/a\u003e ci: bump pnpm/action-setup from 6.0.0 to 6.0.1 (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20781\"\u003e#20781\u003c/a\u003e) (dependabot[bot])\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/2b252be80f362cca7be3326a6dbe958680fdfe9a\"\u003e\u003ccode\u003e2b252be\u003c/code\u003e\u003c/a\u003e test: add unit tests for IdGenerator (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20775\"\u003e#20775\u003c/a\u003e) (kuldeep kumar)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev10.2.1\u003c/h2\u003e\n\u003ch2\u003eBug Fixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/14be92b6d1fa0923b8923830f2208e5e2705b002\"\u003e\u003ccode\u003e14be92b\u003c/code\u003e\u003c/a\u003e fix: model generator yield resumption paths in code path analysis (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20665\"\u003e#20665\u003c/a\u003e) (sethamus)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/84a19d2c32255db6b9cfc08644a607aae6d5cb62\"\u003e\u003ccode\u003e84a19d2\u003c/code\u003e\u003c/a\u003e fix: no-async-promise-executor false positives for shadowed Promise (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20740\"\u003e#20740\u003c/a\u003e) (xbinaryx)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/af764af0ec38225755fbf8a6f207f0c77b595a8d\"\u003e\u003ccode\u003eaf764af\u003c/code\u003e\u003c/a\u003e fix: clarify language and processor validation errors (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20729\"\u003e#20729\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/e251b89a38280973e468a4a9386c138f4f55d10d\"\u003e\u003ccode\u003ee251b89\u003c/code\u003e\u003c/a\u003e fix: update eslint (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20715\"\u003e#20715\u003c/a\u003e) (renovate[bot])\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eDocumentation\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/ca92ca0fb4599e8de1e2fb914e695fe7397cbe63\"\u003e\u003ccode\u003eca92ca0\u003c/code\u003e\u003c/a\u003e docs: reuse markdown-it instance for markdown filter (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20768\"\u003e#20768\u003c/a\u003e) (Amaresh  S M)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/57d2ee213305cee0cb55ef08e0480b57396269a9\"\u003e\u003ccode\u003e57d2ee2\u003c/code\u003e\u003c/a\u003e docs:  Enable Eleventy incremental mode for watch (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20767\"\u003e#20767\u003c/a\u003e) (Amaresh  S M)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/c1621b915742276e5f4b25efe790ca62296330dc\"\u003e\u003ccode\u003ec1621b9\u003c/code\u003e\u003c/a\u003e docs: fix typos in code-path-analyzer.js (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20700\"\u003e#20700\u003c/a\u003e) (Ayush Shukla)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/1418d522d10bde1960f4942afb548bc7160ec49e\"\u003e\u003ccode\u003e1418d52\u003c/code\u003e\u003c/a\u003e docs: Update README (GitHub Actions Bot)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/39771e6e600f0b0617fdeafff6dd07e4211ffde6\"\u003e\u003ccode\u003e39771e6\u003c/code\u003e\u003c/a\u003e docs: Update README (GitHub Actions Bot)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/71e04693def2df57268f08f3072a2749df6bf438\"\u003e\u003ccode\u003e71e0469\u003c/code\u003e\u003c/a\u003e docs: fix incomplete JSDoc param description in no-shadow rule (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20728\"\u003e#20728\u003c/a\u003e) (kuldeep kumar)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/22119ceb93e28f62262fc1d98ff1b1442d6e2dbf\"\u003e\u003ccode\u003e22119ce\u003c/code\u003e\u003c/a\u003e docs: clarify scope of for-direction rule with dead code examples (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20723\"\u003e#20723\u003c/a\u003e) (Amaresh  S M)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/8f3fb77f122a5641d1833cad5d93f3f54fa3be0b\"\u003e\u003ccode\u003e8f3fb77\u003c/code\u003e\u003c/a\u003e docs: document \u003ccode\u003emeta.docs.dialects\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20718\"\u003e#20718\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eChores\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/7ddfea9c4f62add1588c5c0b0da568c299246383\"\u003e\u003ccode\u003e7ddfea9\u003c/code\u003e\u003c/a\u003e chore: update dependency prettier to v3.8.2 (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20770\"\u003e#20770\u003c/a\u003e) (renovate[bot])\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/fac40e1de2ba7646cc7cd2d3f93fbdd1f8819001\"\u003e\u003ccode\u003efac40e1\u003c/code\u003e\u003c/a\u003e ci: bump pnpm/action-setup from 5.0.0 to 6.0.0 (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20763\"\u003e#20763\u003c/a\u003e) (dependabot[bot])\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/7246f923332522d8b3d46b6ee646fce88535f3fb\"\u003e\u003ccode\u003e7246f92\u003c/code\u003e\u003c/a\u003e test: add tests for SuppressionsService.load() error handling (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20734\"\u003e#20734\u003c/a\u003e) (kuldeep kumar)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/4f34b1e592b0f63d766d9903998e8e36eb49d3aa\"\u003e\u003ccode\u003e4f34b1e\u003c/code\u003e\u003c/a\u003e chore: update pnpm/action-setup action to v5 (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20762\"\u003e#20762\u003c/a\u003e) (renovate[bot])\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/78892043a36da4aa7640b59c99344b00c181048a\"\u003e\u003ccode\u003e7889204\u003c/code\u003e\u003c/a\u003e 10.3.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/5b69b4fce4dc407c8e960eba638b5a3409c4f1fd\"\u003e\u003ccode\u003e5b69b4f\u003c/code\u003e\u003c/a\u003e Build: changelog update for 10.3.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/d32235ec19ceea211fa86452afa383ca05f5c2f9\"\u003e\u003ccode\u003ed32235e\u003c/code\u003e\u003c/a\u003e ci: use pnpm in \u003ccode\u003eeslint-flat-config-utils\u003c/code\u003e type integration test (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20826\"\u003e#20826\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/b6ae5cf07b9b51802367539cb24b245b61eaa37c\"\u003e\u003ccode\u003eb6ae5cf\u003c/code\u003e\u003c/a\u003e fix: handle unavailable require cache (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20812\"\u003e#20812\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/3ffb14ea517de750ed1181579ef844af342e4096\"\u003e\u003ccode\u003e3ffb14e\u003c/code\u003e\u003c/a\u003e chore: clean up typos in comments and JSDoc (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20821\"\u003e#20821\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/6fb3685bcbe9a6f72fd7dfb9129686b6fb96b0bd\"\u003e\u003ccode\u003e6fb3685\u003c/code\u003e\u003c/a\u003e fix: rule suggestions cause continuation in class body (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20787\"\u003e#20787\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/22eb58a21cbde2fbd53a1fae99453d408672de50\"\u003e\u003ccode\u003e22eb58a\u003c/code\u003e\u003c/a\u003e chore: add missing continue-on-error to ecosystem-tests.yml (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20818\"\u003e#20818\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/88bf0024cb36caebf2880516d9a1f81aa75dafe2\"\u003e\u003ccode\u003e88bf002\u003c/code\u003e\u003c/a\u003e ci: bump pnpm/action-setup from 6.0.1 to 6.0.3 (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20815\"\u003e#20815\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/379571a975f2b24d88037b9de2e72ec61d004130\"\u003e\u003ccode\u003e379571a\u003c/code\u003e\u003c/a\u003e feat: add suggestions for no-unused-private-class-members (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20773\"\u003e#20773\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/97c8c330beae9557ad24e19f94eebc8d08d1a722\"\u003e\u003ccode\u003e97c8c33\u003c/code\u003e\u003c/a\u003e chore: update ilshidur/action-discord action to v0.4.0 (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20811\"\u003e#20811\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/eslint/eslint/compare/v9.39.2...v10.3.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `eslint-plugin-react-hooks` from 7.0.1 to 7.1.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/facebook/react/releases\"\u003eeslint-plugin-react-hooks's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eeslint-plugin-react-hooks@7.1.1 (April 17, 2026)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eNote:\u003c/strong\u003e 7.1.0 accidentally removed the \u003ccode\u003ecomponent-hook-factories\u003c/code\u003e rule, causing errors for users who referenced it in their ESLint config. This is now fixed.\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdd deprecated no-op \u003ccode\u003ecomponent-hook-factories\u003c/code\u003e rule for backwards compatibility. (\u003ca href=\"https://github.com/mofeiZ\"\u003e\u003ccode\u003e@​mofeiZ\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/36307\"\u003e#36307\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eeslint-plugin-react-hooks@7.1.0 (April 16, 2026)\u003c/h2\u003e\n\u003cp\u003eThis release adds ESLint v10 support, improves performance by skipping compilation for non-React files, and includes compiler lint improvements including better \u003ccode\u003eset-state-in-effect\u003c/code\u003e detection, improved ref validation, and more helpful error reporting.\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdd ESLint v10 support. (\u003ca href=\"https://github.com/azat-io\"\u003e\u003ccode\u003e@​azat-io\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/35720\"\u003e#35720\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSkip compilation for non-React files to improve performance. (\u003ca href=\"https://github.com/josephsavona\"\u003e\u003ccode\u003e@​josephsavona\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/35589\"\u003e#35589\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix exhaustive deps bug with Flow type casting. (\u003ca href=\"https://github.com/jorge-cab\"\u003e\u003ccode\u003e@​jorge-cab\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/35691\"\u003e#35691\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix \u003ccode\u003euseEffectEvent\u003c/code\u003e checks in component syntax. (\u003ca href=\"https://github.com/jbrown215\"\u003e\u003ccode\u003e@​jbrown215\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/35041\"\u003e#35041\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eImproved \u003ccode\u003eset-state-in-effect\u003c/code\u003e validation with fewer false negatives. (\u003ca href=\"https://github.com/jorge-cab\"\u003e\u003ccode\u003e@​jorge-cab\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/35134\"\u003e#35134\u003c/a\u003e, \u003ca href=\"https://github.com/josephsavona\"\u003e\u003ccode\u003e@​josephsavona\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/35147\"\u003e#35147\u003c/a\u003e, \u003ca href=\"https://github.com/jackpope\"\u003e\u003ccode\u003e@​jackpope\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/35214\"\u003e#35214\u003c/a\u003e, \u003ca href=\"https://github.com/chesnokov-tony\"\u003e\u003ccode\u003e@​chesnokov-tony\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/35419\"\u003e#35419\u003c/a\u003e, \u003ca href=\"https://github.com/jsleitor\"\u003e\u003ccode\u003e@​jsleitor\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/36107\"\u003e#36107\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eImproved ref validation for non-mutating functions and event handler props. (\u003ca href=\"https://github.com/josephsavona\"\u003e\u003ccode\u003e@​josephsavona\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/35893\"\u003e#35893\u003c/a\u003e, \u003ca href=\"https://github.com/kolvian\"\u003e\u003ccode\u003e@​kolvian\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/35062\"\u003e#35062\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCompiler now reports all errors instead of stopping at the first. (\u003ca href=\"https://github.com/josephsavona\"\u003e\u003ccode\u003e@​josephsavona\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/35873\"\u003e#35873\u003c/a\u003e–\u003ca href=\"https://redirect.github.com/facebook/react/pull/35884\"\u003e#35884\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eImproved source locations and error display in compiler diagnostics. (\u003ca href=\"https://github.com/nathanmarks\"\u003e\u003ccode\u003e@​nathanmarks\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/35348\"\u003e#35348\u003c/a\u003e, \u003ca href=\"https://github.com/josephsavona\"\u003e\u003ccode\u003e@​josephsavona\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/34963\"\u003e#34963\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/facebook/react/blob/main/packages/eslint-plugin-react-hooks/CHANGELOG.md\"\u003eeslint-plugin-react-hooks's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e7.1.1\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eNote:\u003c/strong\u003e 7.1.0 accidentally removed the \u003ccode\u003ecomponent-hook-factories\u003c/code\u003e rule, causing errors for users who referenced it in their ESLint config. This is now fixed.\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdd deprecated no-op \u003ccode\u003ecomponent-hook-factories\u003c/code\u003e rule for backwards compatibility. (\u003ca href=\"https://github.com/mofeiZ\"\u003e\u003ccode\u003e@​mofeiZ\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/36307\"\u003e#36307\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e7.1.0\u003c/h2\u003e\n\u003cp\u003eThis release adds ESLint v10 support, improves performance by skipping compilation for non-React...\n\n_Description has been truncated_","html_url":"https://github.com/Stsnleys/shiny-enigma/pull/5","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/Stsnleys%2Fshiny-enigma/issues/5","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/5/packages"}},{"old_version":"5.1.3","new_version":"5.2.0","update_type":"minor","path":null,"pr_created_at":"2026-05-11T04:55:05.000Z","version_change":"5.1.3 → 5.2.0","issue":{"uuid":"4418166792","node_id":"PR_kwDORzuuMc7aHKht","number":6,"state":"closed","title":"deps(deps): bump the all-dependencies group across 1 directory with 65 updates","user":"dependabot[bot]","labels":[],"assignees":[],"locked":false,"comments_count":2,"pull_request":true,"closed_at":"2026-05-18T05:26:34.000Z","author_association":null,"state_reason":null,"created_at":"2026-05-11T04:55:05.000Z","updated_at":"2026-05-18T05:26:36.000Z","time_to_close":606689,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"deps(deps): bump","group_name":"all-dependencies","update_count":65,"packages":[{"name":"@eslint-react/eslint-plugin","old_version":"2.13.0","new_version":"5.7.5","repository_url":"https://github.com/Rel1cx/eslint-react"},{"name":"@eslint/js","old_version":"9.39.2","new_version":"10.0.1","repository_url":"https://github.com/eslint/eslint"},{"name":"@typescript-eslint/eslint-plugin","old_version":"8.56.0","new_version":"8.59.2","repository_url":"https://github.com/typescript-eslint/typescript-eslint"},{"name":"@typescript-eslint/parser","old_version":"8.56.0","new_version":"8.59.2","repository_url":"https://github.com/typescript-eslint/typescript-eslint"},{"name":"eslint","old_version":"9.39.2","new_version":"10.3.0","repository_url":"https://github.com/eslint/eslint"},{"name":"eslint-plugin-react-hooks","old_version":"7.0.1","new_version":"7.1.1","repository_url":"https://github.com/facebook/react"},{"name":"globals","old_version":"17.3.0","new_version":"17.6.0","repository_url":"https://github.com/sindresorhus/globals"},{"name":"graphql","old_version":"16.12.0","new_version":"16.14.0","repository_url":"https://github.com/graphql/graphql-js"},{"name":"happy-dom","old_version":"20.6.2","new_version":"20.9.0","repository_url":"https://github.com/capricorn86/happy-dom"},{"name":"jiti","old_version":"2.6.1","new_version":"2.7.0","repository_url":"https://github.com/unjs/jiti"},{"name":"lint-staged","old_version":"16.2.7","new_version":"17.0.4","repository_url":"https://github.com/lint-staged/lint-staged"},{"name":"mermaid","old_version":"11.12.3","new_version":"11.14.0","repository_url":"https://github.com/mermaid-js/mermaid"},{"name":"prettier","old_version":"3.8.1","new_version":"3.8.3","repository_url":"https://github.com/prettier/prettier"},{"name":"react","old_version":"19.2.4","new_version":"19.2.6","repository_url":"https://github.com/facebook/react"},{"name":"typescript","old_version":"5.9.3","new_version":"6.0.3","repository_url":"https://github.com/microsoft/TypeScript"},{"name":"typescript-eslint","old_version":"8.56.0","new_version":"8.59.2","repository_url":"https://github.com/typescript-eslint/typescript-eslint"},{"name":"typescript-language-server","old_version":"5.1.3","new_version":"5.2.0","repository_url":"https://github.com/typescript-language-server/typescript-language-server"},{"name":"vite","old_version":"7.3.1","new_version":"8.0.11","repository_url":"https://github.com/vitejs/vite"},{"name":"vitepress","old_version":"2.0.0-alpha.16","new_version":"2.0.0-alpha.17","repository_url":"https://github.com/vuejs/vitepress"},{"name":"vitepress-plugin-llms","old_version":"1.11.0","new_version":"1.12.2","repository_url":"https://github.com/okineadev/vitepress-plugin-llms"},{"name":"vitest","old_version":"4.0.18","new_version":"4.1.5","repository_url":"https://github.com/vitest-dev/vitest"},{"name":"wrangler","old_version":"4.66.0","new_version":"4.90.0","repository_url":"https://github.com/cloudflare/workers-sdk"},{"name":"@ai-sdk/openai","old_version":"3.0.29","new_version":"3.0.63","repository_url":"https://github.com/vercel/ai"},{"name":"@better-auth/passkey","old_version":"1.4.18","new_version":"1.6.10","repository_url":"https://github.com/better-auth/better-auth"},{"name":"@better-auth/stripe","old_version":"1.4.18","new_version":"1.6.10","repository_url":"https://github.com/better-auth/better-auth"},{"name":"@trpc/server","old_version":"11.10.0","new_version":"11.17.0","repository_url":"https://github.com/trpc/trpc"},{"name":"ai","old_version":"6.0.91","new_version":"6.0.177","repository_url":"https://github.com/vercel/ai"},{"name":"better-auth","old_version":"1.4.18","new_version":"1.6.10","repository_url":"https://github.com/better-auth/better-auth"},{"name":"drizzle-orm","old_version":"0.45.1","new_version":"0.45.2","repository_url":"https://github.com/drizzle-team/drizzle-orm"},{"name":"postgres","old_version":"3.4.8","new_version":"3.4.9","repository_url":"https://github.com/porsager/postgres"},{"name":"resend","old_version":"6.9.2","new_version":"6.12.3","repository_url":"https://github.com/resend/resend-node"},{"name":"stripe","old_version":"20.3.1","new_version":"22.1.1","repository_url":"https://github.com/stripe/stripe-node"},{"name":"@cloudflare/workers-types","old_version":"4.20260218.0","new_version":"4.20260511.1","repository_url":"https://github.com/cloudflare/workerd"},{"name":"@types/bun","old_version":"1.3.9","new_version":"1.3.13","repository_url":"https://github.com/DefinitelyTyped/DefinitelyTyped"},{"name":"hono","old_version":"4.11.10","new_version":"4.12.18","repository_url":"https://github.com/honojs/hono"},{"name":"@tanstack/react-query","old_version":"5.90.21","new_version":"5.100.9","repository_url":"https://github.com/TanStack/query"},{"name":"@tanstack/react-router","old_version":"1.161.1","new_version":"1.169.2","repository_url":"https://github.com/TanStack/router"},{"name":"@trpc/client","old_version":"11.10.0","new_version":"11.17.0","repository_url":"https://github.com/trpc/trpc"},{"name":"@trpc/tanstack-react-query","old_version":"11.10.0","new_version":"11.17.0","repository_url":"https://github.com/trpc/trpc"},{"name":"jotai","old_version":"2.17.1","new_version":"2.20.0","repository_url":"https://github.com/pmndrs/jotai"},{"name":"lucide-react","old_version":"0.574.0","new_version":"1.14.0","repository_url":"https://github.com/lucide-icons/lucide"},{"name":"react-dom","old_version":"19.2.4","new_version":"19.2.6","repository_url":"https://github.com/facebook/react"},{"name":"tailwind-merge","old_version":"3.4.1","new_version":"3.6.0","repository_url":"https://github.com/dcastil/tailwind-merge"},{"name":"@tailwindcss/postcss","old_version":"4.2.0","new_version":"4.3.0","repository_url":"https://github.com/tailwindlabs/tailwindcss"},{"name":"@tanstack/react-query-devtools","old_version":"5.91.3","new_version":"5.100.9","repository_url":"https://github.com/TanStack/query"},{"name":"@tanstack/react-router-devtools","old_version":"1.161.1","new_version":"1.166.13","repository_url":"https://github.com/TanStack/router"},{"name":"@tanstack/router-plugin","old_version":"1.161.1","new_version":"1.167.35","repository_url":"https://github.com/TanStack/router"},{"name":"@types/node","old_version":"25.2.3","new_version":"25.6.2","repository_url":"https://github.com/DefinitelyTyped/DefinitelyTyped"},{"name":"@vitejs/plugin-react","old_version":"5.1.4","new_version":"6.0.1","repository_url":"https://github.com/vitejs/vite-plugin-react"},{"name":"@vitejs/plugin-react-swc","old_version":"4.2.3","new_version":"4.3.0","repository_url":"https://github.com/vitejs/vite-plugin-react"},{"name":"autoprefixer","old_version":"10.4.24","new_version":"10.5.0","repository_url":"https://github.com/postcss/autoprefixer"},{"name":"globby","old_version":"16.1.1","new_version":"16.2.0","repository_url":"https://github.com/sindresorhus/globby"},{"name":"@react-email/components","old_version":"1.0.8","new_version":"1.0.12","repository_url":"https://github.com/resend/react-email"},{"name":"@react-email/render","old_version":"2.0.4","new_version":"2.0.8","repository_url":"https://github.com/resend/react-email"},{"name":"@react-email/preview-server","old_version":"5.2.8","new_version":"5.2.10","repository_url":"https://github.com/resend/react-email"},{"name":"react-email","old_version":"5.2.8","new_version":"6.1.1","repository_url":"https://github.com/resend/react-email"},{"name":"@astrojs/react","old_version":"4.4.2","new_version":"5.0.4","repository_url":"https://github.com/withastro/astro"},{"name":"astro","old_version":"5.17.2","new_version":"6.3.1","repository_url":"https://github.com/withastro/astro"},{"name":"dotenv","old_version":"17.3.1","new_version":"17.4.2","repository_url":"https://github.com/motdotla/dotenv"},{"name":"drizzle-kit","old_version":"0.31.9","new_version":"0.31.10","repository_url":"https://github.com/drizzle-team/drizzle-orm"},{"name":"@modelcontextprotocol/sdk","old_version":"1.26.0","new_version":"1.29.0","repository_url":"https://github.com/modelcontextprotocol/typescript-sdk"},{"name":"got","old_version":"14.6.6","new_version":"15.0.5","repository_url":"https://github.com/sindresorhus/got"}],"path":null,"ecosystem":"npm"},"body":"Bumps the all-dependencies group with 62 updates in the / directory:\n\n| Package | From | To |\n| --- | --- | --- |\n| [@eslint-react/eslint-plugin](https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin) | `2.13.0` | `5.7.5` |\n| [@eslint/js](https://github.com/eslint/eslint/tree/HEAD/packages/js) | `9.39.2` | `10.0.1` |\n| [@typescript-eslint/eslint-plugin](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin) | `8.56.0` | `8.59.2` |\n| [@typescript-eslint/parser](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/parser) | `8.56.0` | `8.59.2` |\n| [eslint](https://github.com/eslint/eslint) | `9.39.2` | `10.3.0` |\n| [eslint-plugin-react-hooks](https://github.com/facebook/react/tree/HEAD/packages/eslint-plugin-react-hooks) | `7.0.1` | `7.1.1` |\n| [globals](https://github.com/sindresorhus/globals) | `17.3.0` | `17.6.0` |\n| [graphql](https://github.com/graphql/graphql-js) | `16.12.0` | `16.14.0` |\n| [happy-dom](https://github.com/capricorn86/happy-dom) | `20.6.2` | `20.9.0` |\n| [jiti](https://github.com/unjs/jiti) | `2.6.1` | `2.7.0` |\n| [lint-staged](https://github.com/lint-staged/lint-staged) | `16.2.7` | `17.0.4` |\n| [mermaid](https://github.com/mermaid-js/mermaid) | `11.12.3` | `11.14.0` |\n| [prettier](https://github.com/prettier/prettier) | `3.8.1` | `3.8.3` |\n| [react](https://github.com/facebook/react/tree/HEAD/packages/react) | `19.2.4` | `19.2.6` |\n| [typescript](https://github.com/microsoft/TypeScript) | `5.9.3` | `6.0.3` |\n| [typescript-eslint](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/typescript-eslint) | `8.56.0` | `8.59.2` |\n| [typescript-language-server](https://github.com/typescript-language-server/typescript-language-server) | `5.1.3` | `5.2.0` |\n| [vite](https://github.com/vitejs/vite/tree/HEAD/packages/vite) | `7.3.1` | `8.0.11` |\n| [vitepress](https://github.com/vuejs/vitepress) | `2.0.0-alpha.16` | `2.0.0-alpha.17` |\n| [vitepress-plugin-llms](https://github.com/okineadev/vitepress-plugin-llms) | `1.11.0` | `1.12.2` |\n| [vitest](https://github.com/vitest-dev/vitest/tree/HEAD/packages/vitest) | `4.0.18` | `4.1.5` |\n| [wrangler](https://github.com/cloudflare/workers-sdk/tree/HEAD/packages/wrangler) | `4.66.0` | `4.90.0` |\n| [@ai-sdk/openai](https://github.com/vercel/ai/tree/HEAD/packages/openai) | `3.0.29` | `3.0.63` |\n| [@better-auth/passkey](https://github.com/better-auth/better-auth/tree/HEAD/packages/passkey) | `1.4.18` | `1.6.10` |\n| [@better-auth/stripe](https://github.com/better-auth/better-auth/tree/HEAD/packages/stripe) | `1.4.18` | `1.6.10` |\n| [@trpc/server](https://github.com/trpc/trpc/tree/HEAD/packages/server) | `11.10.0` | `11.17.0` |\n| [ai](https://github.com/vercel/ai/tree/HEAD/packages/ai) | `6.0.91` | `6.0.177` |\n| [better-auth](https://github.com/better-auth/better-auth/tree/HEAD/packages/better-auth) | `1.4.18` | `1.6.10` |\n| [drizzle-orm](https://github.com/drizzle-team/drizzle-orm) | `0.45.1` | `0.45.2` |\n| [postgres](https://github.com/porsager/postgres) | `3.4.8` | `3.4.9` |\n| [resend](https://github.com/resend/resend-node) | `6.9.2` | `6.12.3` |\n| [stripe](https://github.com/stripe/stripe-node) | `20.3.1` | `22.1.1` |\n| [@cloudflare/workers-types](https://github.com/cloudflare/workerd) | `4.20260218.0` | `4.20260511.1` |\n| [@types/bun](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/bun) | `1.3.9` | `1.3.13` |\n| [hono](https://github.com/honojs/hono) | `4.11.10` | `4.12.18` |\n| [@tanstack/react-query](https://github.com/TanStack/query/tree/HEAD/packages/react-query) | `5.90.21` | `5.100.9` |\n| [@tanstack/react-router](https://github.com/TanStack/router/tree/HEAD/packages/react-router) | `1.161.1` | `1.169.2` |\n| [@trpc/client](https://github.com/trpc/trpc/tree/HEAD/packages/client) | `11.10.0` | `11.17.0` |\n| [@trpc/tanstack-react-query](https://github.com/trpc/trpc/tree/HEAD/packages/tanstack-react-query) | `11.10.0` | `11.17.0` |\n| [jotai](https://github.com/pmndrs/jotai) | `2.17.1` | `2.20.0` |\n| [lucide-react](https://github.com/lucide-icons/lucide/tree/HEAD/packages/lucide-react) | `0.574.0` | `1.14.0` |\n| [react-dom](https://github.com/facebook/react/tree/HEAD/packages/react-dom) | `19.2.4` | `19.2.6` |\n| [tailwind-merge](https://github.com/dcastil/tailwind-merge) | `3.4.1` | `3.6.0` |\n| [@tailwindcss/postcss](https://github.com/tailwindlabs/tailwindcss/tree/HEAD/packages/@tailwindcss-postcss) | `4.2.0` | `4.3.0` |\n| [@tanstack/react-query-devtools](https://github.com/TanStack/query/tree/HEAD/packages/react-query-devtools) | `5.91.3` | `5.100.9` |\n| [@tanstack/react-router-devtools](https://github.com/TanStack/router/tree/HEAD/packages/react-router-devtools) | `1.161.1` | `1.166.13` |\n| [@tanstack/router-plugin](https://github.com/TanStack/router/tree/HEAD/packages/router-plugin) | `1.161.1` | `1.167.35` |\n| [@types/node](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/node) | `25.2.3` | `25.6.2` |\n| [@vitejs/plugin-react](https://github.com/vitejs/vite-plugin-react/tree/HEAD/packages/plugin-react) | `5.1.4` | `6.0.1` |\n| [@vitejs/plugin-react-swc](https://github.com/vitejs/vite-plugin-react/tree/HEAD/packages/plugin-react-swc) | `4.2.3` | `4.3.0` |\n| [autoprefixer](https://github.com/postcss/autoprefixer) | `10.4.24` | `10.5.0` |\n| [globby](https://github.com/sindresorhus/globby) | `16.1.1` | `16.2.0` |\n| [@react-email/components](https://github.com/resend/react-email/tree/HEAD/packages/components) | `1.0.8` | `1.0.12` |\n| [@react-email/render](https://github.com/resend/react-email/tree/HEAD/packages/render) | `2.0.4` | `2.0.8` |\n| [@react-email/preview-server](https://github.com/resend/react-email/tree/HEAD/packages/preview-server) | `5.2.8` | `5.2.10` |\n| [react-email](https://github.com/resend/react-email/tree/HEAD/packages/react-email) | `5.2.8` | `6.1.1` |\n| [@astrojs/react](https://github.com/withastro/astro/tree/HEAD/packages/integrations/react) | `4.4.2` | `5.0.4` |\n| [astro](https://github.com/withastro/astro/tree/HEAD/packages/astro) | `5.17.2` | `6.3.1` |\n| [dotenv](https://github.com/motdotla/dotenv) | `17.3.1` | `17.4.2` |\n| [drizzle-kit](https://github.com/drizzle-team/drizzle-orm) | `0.31.9` | `0.31.10` |\n| [@modelcontextprotocol/sdk](https://github.com/modelcontextprotocol/typescript-sdk) | `1.26.0` | `1.29.0` |\n| [got](https://github.com/sindresorhus/got) | `14.6.6` | `15.0.5` |\n\n\nUpdates `@eslint-react/eslint-plugin` from 2.13.0 to 5.7.5\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/Rel1cx/eslint-react/releases\"\u003e@​eslint-react/eslint-plugin's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev5.7.5 (2026-05-08)\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003ch3\u003e🏗️ Internal\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eBumped \u003ccode\u003e@eslint/compat\u003c/code\u003e from 2.0.5 to 2.1.0.\u003c/li\u003e\n\u003cli\u003eBumped \u003ccode\u003e@types/node\u003c/code\u003e from 25.6.0 to 25.6.2.\u003c/li\u003e\n\u003cli\u003eBumped \u003ccode\u003enext\u003c/code\u003e from 16.2.5 to 16.2.6.\u003c/li\u003e\n\u003cli\u003eBumped \u003ccode\u003epublint\u003c/code\u003e from 0.3.19 to 0.3.20.\u003c/li\u003e\n\u003cli\u003eBumped \u003ccode\u003etsdown\u003c/code\u003e from 0.21.10 to 0.22.0.\u003c/li\u003e\n\u003cli\u003eBumped \u003ccode\u003epnpm\u003c/code\u003e from 10.33.4 to 11.0.8.\u003c/li\u003e\n\u003cli\u003eAdjusted website styles.\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/Rel1cx/eslint-react/compare/v5.7.4...v5.7.5\"\u003ehttps://github.com/Rel1cx/eslint-react/compare/v5.7.4...v5.7.5\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev5.7.4 (2026-05-07)\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003ch3\u003e🏗️ Internal\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eBumped \u003ccode\u003e@typescript-eslint\u003c/code\u003e packages from 8.59.1 to 8.59.2.\u003c/li\u003e\n\u003cli\u003eBumped \u003ccode\u003ereact\u003c/code\u003e and \u003ccode\u003ereact-dom\u003c/code\u003e from 19.2.5 to 19.2.6.\u003c/li\u003e\n\u003cli\u003eBumped \u003ccode\u003enext\u003c/code\u003e from 16.2.4 to 16.2.5.\u003c/li\u003e\n\u003cli\u003eBumped \u003ccode\u003enx\u003c/code\u003e from 22.7.1 to 23.0.0-canary.20260506-b594537.\u003c/li\u003e\n\u003cli\u003eBumped \u003ccode\u003efumadocs-core\u003c/code\u003e and \u003ccode\u003efumadocs-ui\u003c/code\u003e from 16.8.5 to 16.8.7.\u003c/li\u003e\n\u003cli\u003eBumped \u003ccode\u003epostcss\u003c/code\u003e from 8.5.13 to 8.5.14.\u003c/li\u003e\n\u003cli\u003eBumped \u003ccode\u003epublint\u003c/code\u003e from 0.3.18 to 0.3.19.\u003c/li\u003e\n\u003cli\u003eBumped \u003ccode\u003epnpm\u003c/code\u003e from 10.33.2 to 10.33.4.\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/Rel1cx/eslint-react/compare/v5.7.3...v5.7.4\"\u003ehttps://github.com/Rel1cx/eslint-react/compare/v5.7.3...v5.7.4\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev5.7.3 (2026-05-06)\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003ch3\u003e🐞 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003e\u003ccode\u003ereact-x/immutability\u003c/code\u003e\u003c/strong\u003e: Exempted ref mutations via a naming heuristic — any object whose identifier is \u003ccode\u003eref\u003c/code\u003e or ends with \u003ccode\u003eRef\u003c/code\u003e is treated as a mutable ref and skipped from immutability checks. This fixes false positives when mutating \u003ccode\u003eRefObject\u0026lt;T\u0026gt;\u003c/code\u003e values received as props (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1752\"\u003e#1752\u003c/a\u003e, \u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1751\"\u003e#1751\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003e\u003ccode\u003ereact-x/immutability\u003c/code\u003e\u003c/strong\u003e: Added \u003ccode\u003enoRefLikeStateName\u003c/code\u003e diagnostic to prevent state variables from being named \u003ccode\u003eref\u003c/code\u003e or ending with \u003ccode\u003eRef\u003c/code\u003e, which would otherwise bypass the ref exemption heuristic (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1752\"\u003e#1752\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e📝 Documentation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFixed the full rule name in \u003ccode\u003ereact-jsx/no-key-after-spread\u003c/code\u003e documentation (\u003ccode\u003ejsx/no-key-after-spread\u003c/code\u003e → \u003ccode\u003ejsx-no-key-after-spread\u003c/code\u003e) (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1750\"\u003e#1750\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/Rel1cx/eslint-react/compare/v5.7.2...v5.7.3\"\u003ehttps://github.com/Rel1cx/eslint-react/compare/v5.7.2...v5.7.3\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev5.7.2 (2026-05-04)\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003ch3\u003e🐞 Fixes\u003c/h3\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/Rel1cx/eslint-react/blob/main/CHANGELOG.md\"\u003e@​eslint-react/eslint-plugin's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev5.7.5 (2026-05-08)\u003c/h2\u003e\n\u003ch3\u003e🏗️ Internal\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eBumped \u003ccode\u003e@eslint/compat\u003c/code\u003e from 2.0.5 to 2.1.0.\u003c/li\u003e\n\u003cli\u003eBumped \u003ccode\u003e@types/node\u003c/code\u003e from 25.6.0 to 25.6.2.\u003c/li\u003e\n\u003cli\u003eBumped \u003ccode\u003enext\u003c/code\u003e from 16.2.5 to 16.2.6.\u003c/li\u003e\n\u003cli\u003eBumped \u003ccode\u003epublint\u003c/code\u003e from 0.3.19 to 0.3.20.\u003c/li\u003e\n\u003cli\u003eBumped \u003ccode\u003etsdown\u003c/code\u003e from 0.21.10 to 0.22.0.\u003c/li\u003e\n\u003cli\u003eBumped \u003ccode\u003epnpm\u003c/code\u003e from 10.33.4 to 11.0.8.\u003c/li\u003e\n\u003cli\u003eAdjusted website styles.\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/Rel1cx/eslint-react/compare/v5.7.4...v5.7.5\"\u003ehttps://github.com/Rel1cx/eslint-react/compare/v5.7.4...v5.7.5\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev5.7.4 (2026-05-07)\u003c/h2\u003e\n\u003ch3\u003e🏗️ Internal\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eBumped \u003ccode\u003e@typescript-eslint\u003c/code\u003e packages from 8.59.1 to 8.59.2.\u003c/li\u003e\n\u003cli\u003eBumped \u003ccode\u003ereact\u003c/code\u003e and \u003ccode\u003ereact-dom\u003c/code\u003e from 19.2.5 to 19.2.6.\u003c/li\u003e\n\u003cli\u003eBumped \u003ccode\u003enext\u003c/code\u003e from 16.2.4 to 16.2.5.\u003c/li\u003e\n\u003cli\u003eBumped \u003ccode\u003enx\u003c/code\u003e from 22.7.1 to 23.0.0-canary.20260506-b594537.\u003c/li\u003e\n\u003cli\u003eBumped \u003ccode\u003efumadocs-core\u003c/code\u003e and \u003ccode\u003efumadocs-ui\u003c/code\u003e from 16.8.5 to 16.8.7.\u003c/li\u003e\n\u003cli\u003eBumped \u003ccode\u003epostcss\u003c/code\u003e from 8.5.13 to 8.5.14.\u003c/li\u003e\n\u003cli\u003eBumped \u003ccode\u003epublint\u003c/code\u003e from 0.3.18 to 0.3.19.\u003c/li\u003e\n\u003cli\u003eBumped \u003ccode\u003epnpm\u003c/code\u003e from 10.33.2 to 10.33.4.\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/Rel1cx/eslint-react/compare/v5.7.3...v5.7.4\"\u003ehttps://github.com/Rel1cx/eslint-react/compare/v5.7.3...v5.7.4\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev5.7.3 (2026-05-06)\u003c/h2\u003e\n\u003ch3\u003e🐞 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003e\u003ccode\u003ereact-x/immutability\u003c/code\u003e\u003c/strong\u003e: Exempted ref mutations via a naming heuristic — any object whose identifier is \u003ccode\u003eref\u003c/code\u003e or ends with \u003ccode\u003eRef\u003c/code\u003e is treated as a mutable ref and skipped from immutability checks. This fixes false positives when mutating \u003ccode\u003eRefObject\u0026lt;T\u0026gt;\u003c/code\u003e values received as props (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1752\"\u003e#1752\u003c/a\u003e, \u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1751\"\u003e#1751\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003e\u003ccode\u003ereact-x/immutability\u003c/code\u003e\u003c/strong\u003e: Added \u003ccode\u003enoRefLikeStateName\u003c/code\u003e diagnostic to prevent state variables from being named \u003ccode\u003eref\u003c/code\u003e or ending with \u003ccode\u003eRef\u003c/code\u003e, which would otherwise bypass the ref exemption heuristic (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1752\"\u003e#1752\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e📝 Documentation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFixed the full rule name in \u003ccode\u003ereact-jsx/no-key-after-spread\u003c/code\u003e documentation (\u003ccode\u003ejsx/no-key-after-spread\u003c/code\u003e → \u003ccode\u003ejsx-no-key-after-spread\u003c/code\u003e) (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1750\"\u003e#1750\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/Rel1cx/eslint-react/compare/v5.7.2...v5.7.3\"\u003ehttps://github.com/Rel1cx/eslint-react/compare/v5.7.2...v5.7.3\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev5.7.2 (2026-05-04)\u003c/h2\u003e\n\u003ch3\u003e🐞 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003e\u003ccode\u003ereact-x/no-unused-state\u003c/code\u003e\u003c/strong\u003e: Removed the rule from the \u003ccode\u003erecommended\u003c/code\u003e preset for now (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1747\"\u003e#1747\u003c/a\u003e, \u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1748\"\u003e#1748\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e📝 Documentation\u003c/h3\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/de60fa2e3003c60e8c4f03970b5b84c7c9c84334\"\u003e\u003ccode\u003ede60fa2\u003c/code\u003e\u003c/a\u003e release: 5.7.5\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/2b075487d7952a8662c76305b64ce677776bab34\"\u003e\u003ccode\u003e2b07548\u003c/code\u003e\u003c/a\u003e release: 5.7.5-beta.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/9e186c17a28ff1d9e02e0a22f4f6b18193ceadca\"\u003e\u003ccode\u003e9e186c1\u003c/code\u003e\u003c/a\u003e release: 5.7.5-next.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/f7b012180b71b03a69e944b39fdc88811b16839b\"\u003e\u003ccode\u003ef7b0121\u003c/code\u003e\u003c/a\u003e chore: bump dependencies and adjust website styles (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1754\"\u003e#1754\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/99736d816cdcb56dd71be0ba8440c6b12017d862\"\u003e\u003ccode\u003e99736d8\u003c/code\u003e\u003c/a\u003e release: 5.7.4\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/bcd23f09215b120a119a53eacdb12e670ee897b9\"\u003e\u003ccode\u003ebcd23f0\u003c/code\u003e\u003c/a\u003e release: 5.7.4-beta.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/52071021ab5ae079fa69fc3996ac9109a76c230a\"\u003e\u003ccode\u003e5207102\u003c/code\u003e\u003c/a\u003e release: 5.7.4-next.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/b35fba3ea0e14827433efcc6017e8eaef0ca6486\"\u003e\u003ccode\u003eb35fba3\u003c/code\u003e\u003c/a\u003e Bump dependencies: eslint, react, next, and nx packages\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/a9098f22fc1a8c7b59e3b4916d0d5ff3cb2358be\"\u003e\u003ccode\u003ea9098f2\u003c/code\u003e\u003c/a\u003e release: 5.7.3\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/677db67c648814dbc500bdd40dea84ac9efa770c\"\u003e\u003ccode\u003e677db67\u003c/code\u003e\u003c/a\u003e release: 5.7.2\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/Rel1cx/eslint-react/commits/v5.7.5/plugins/eslint-plugin\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@eslint/js` from 9.39.2 to 10.0.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/eslint/eslint/releases\"\u003e@​eslint/js's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev10.0.1\u003c/h2\u003e\n\u003ch2\u003eBug Fixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/c87d5bded54c5cf491eb04c24c9d09bbbd42c23e\"\u003e\u003ccode\u003ec87d5bd\u003c/code\u003e\u003c/a\u003e fix: update eslint (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20531\"\u003e#20531\u003c/a\u003e) (renovate[bot])\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/d84100115c14691691058f00779c94e74fca946a\"\u003e\u003ccode\u003ed841001\u003c/code\u003e\u003c/a\u003e fix: update \u003ccode\u003eminimatch\u003c/code\u003e to \u003ccode\u003e10.2.1\u003c/code\u003e to address security vulnerabilities (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20519\"\u003e#20519\u003c/a\u003e) (루밀LuMir)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/04c21475b3004904948f02049f2888b401d82c78\"\u003e\u003ccode\u003e04c2147\u003c/code\u003e\u003c/a\u003e fix: update error message for unused suppressions (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20496\"\u003e#20496\u003c/a\u003e) (fnx)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/38b089c1726feac0e31a31d47941bd99e29ce003\"\u003e\u003ccode\u003e38b089c\u003c/code\u003e\u003c/a\u003e fix: update dependency \u003ccode\u003e@​eslint/config-array\u003c/code\u003e to ^0.23.1 (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20484\"\u003e#20484\u003c/a\u003e) (renovate[bot])\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eDocumentation\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/5b3dbce50a1404a9f118afe810cefeee79388a2a\"\u003e\u003ccode\u003e5b3dbce\u003c/code\u003e\u003c/a\u003e docs: add AI acknowledgement section to templates (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20431\"\u003e#20431\u003c/a\u003e) (루밀LuMir)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/6f23076037d5879f20fb3be2ef094293b1e8d38c\"\u003e\u003ccode\u003e6f23076\u003c/code\u003e\u003c/a\u003e docs: toggle nav in no-JS mode (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20476\"\u003e#20476\u003c/a\u003e) (Tanuj Kanti)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/b69cfb32a16c5d5e9986390d484fae1d21e406f9\"\u003e\u003ccode\u003eb69cfb3\u003c/code\u003e\u003c/a\u003e docs: Update README (GitHub Actions Bot)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eChores\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/e5c281ffd038a3a7a3e5364db0b9378e0ad83020\"\u003e\u003ccode\u003ee5c281f\u003c/code\u003e\u003c/a\u003e chore: updates for v9.39.3 release (Jenkins)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/8c3832adb77cd993b4a24891900d5eeaaf093cdc\"\u003e\u003ccode\u003e8c3832a\u003c/code\u003e\u003c/a\u003e chore: update \u003ccode\u003e@​typescript-eslint/parser\u003c/code\u003e to ^8.56.0 (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20514\"\u003e#20514\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/8330d238ae6adb68bb6a1c9381e38cfedd990d94\"\u003e\u003ccode\u003e8330d23\u003c/code\u003e\u003c/a\u003e test: add tests for config-api (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20493\"\u003e#20493\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/37d6e91e88fa6a2ca6d8726679096acff21ba6cc\"\u003e\u003ccode\u003e37d6e91\u003c/code\u003e\u003c/a\u003e chore: remove eslint v10 prereleases from eslint-config-eslint deps (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20494\"\u003e#20494\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/da7cd0e79197ad16e17052eef99df141de6dbfb1\"\u003e\u003ccode\u003eda7cd0e\u003c/code\u003e\u003c/a\u003e refactor: cleanup error message templates (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20479\"\u003e#20479\u003c/a\u003e) (Francesco Trotta)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/84fb885d49ac810e79a9491276b4828b53d913e5\"\u003e\u003ccode\u003e84fb885\u003c/code\u003e\u003c/a\u003e chore: package.json update for \u003ccode\u003e@​eslint/js\u003c/code\u003e release (Jenkins)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/1f667344b57c4c09b548d94bcfac1f91b6e5c63d\"\u003e\u003ccode\u003e1f66734\u003c/code\u003e\u003c/a\u003e chore: add \u003ccode\u003eeslint\u003c/code\u003e to \u003ccode\u003epeerDependencies\u003c/code\u003e of \u003ccode\u003e@eslint/js\u003c/code\u003e (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20467\"\u003e#20467\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev10.0.0\u003c/h2\u003e\n\u003ch2\u003eBreaking Changes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/f9e54f43a5e497cdfa179338b431093245cb787b\"\u003e\u003ccode\u003ef9e54f4\u003c/code\u003e\u003c/a\u003e feat!: estimate rule-tester failure location (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20420\"\u003e#20420\u003c/a\u003e) (ST-DDT)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/a176319d8ade1a7d9b2d7fb8f038f55a2662325f\"\u003e\u003ccode\u003ea176319\u003c/code\u003e\u003c/a\u003e feat!: replace \u003ccode\u003echalk\u003c/code\u003e with \u003ccode\u003estyleText\u003c/code\u003e and add \u003ccode\u003ecolor\u003c/code\u003e to \u003ccode\u003eResultsMeta\u003c/code\u003e (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20227\"\u003e#20227\u003c/a\u003e) (루밀LuMir)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/c7046e6c1e03c4ca0eee4888a1f2eba4c6454f84\"\u003e\u003ccode\u003ec7046e6\u003c/code\u003e\u003c/a\u003e feat!: enable JSX reference tracking (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20152\"\u003e#20152\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/fa31a608901684fbcd9906d1907e66561d16e5aa\"\u003e\u003ccode\u003efa31a60\u003c/code\u003e\u003c/a\u003e feat!: add \u003ccode\u003ename\u003c/code\u003e to configs (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20015\"\u003e#20015\u003c/a\u003e) (Kirk Waiblinger)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/3383e7ec9028166cafc8ea7986c2f7498d0049f0\"\u003e\u003ccode\u003e3383e7e\u003c/code\u003e\u003c/a\u003e fix!: remove deprecated \u003ccode\u003eSourceCode\u003c/code\u003e methods (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20137\"\u003e#20137\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/501abd0e916a35554c58b7c0365537f1fa3880ce\"\u003e\u003ccode\u003e501abd0\u003c/code\u003e\u003c/a\u003e feat!: update dependency minimatch to v10 (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20246\"\u003e#20246\u003c/a\u003e) (renovate[bot])\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/ca4d3b40085de47561f89656a2207d09946ed45e\"\u003e\u003ccode\u003eca4d3b4\u003c/code\u003e\u003c/a\u003e fix!: stricter rule tester assertions for valid test cases (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20125\"\u003e#20125\u003c/a\u003e) (唯然)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/96512a66c86402fb0538cdcb6cd30b9073f6bf3b\"\u003e\u003ccode\u003e96512a6\u003c/code\u003e\u003c/a\u003e fix!: Remove deprecated rule context methods (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20086\"\u003e#20086\u003c/a\u003e) (Nicholas C. Zakas)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/c69fdacdb2e886b9d965568a397aa8220db3fe90\"\u003e\u003ccode\u003ec69fdac\u003c/code\u003e\u003c/a\u003e feat!: remove eslintrc support (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20037\"\u003e#20037\u003c/a\u003e) (Francesco Trotta)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/208b5cc34a8374ff81412b5bec2e0800eebfbd04\"\u003e\u003ccode\u003e208b5cc\u003c/code\u003e\u003c/a\u003e feat!: Use \u003ccode\u003eScopeManager#addGlobals()\u003c/code\u003e (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20132\"\u003e#20132\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/a2ee188ea7a38a0c6155f3d39e2b00e1d0f36e14\"\u003e\u003ccode\u003ea2ee188\u003c/code\u003e\u003c/a\u003e fix!: add \u003ccode\u003euniqueItems: true\u003c/code\u003e in \u003ccode\u003eno-invalid-regexp\u003c/code\u003e option (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20155\"\u003e#20155\u003c/a\u003e) (Tanuj Kanti)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/a89059dbf2832d417dd493ee81483227ec44e4ab\"\u003e\u003ccode\u003ea89059d\u003c/code\u003e\u003c/a\u003e feat!: Program range span entire source text (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20133\"\u003e#20133\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/39a6424373d915fa9de0d7b0caba9a4dc3da9b53\"\u003e\u003ccode\u003e39a6424\u003c/code\u003e\u003c/a\u003e fix!: assert 'text' is a string across all RuleFixer methods (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20082\"\u003e#20082\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/f28fbf846244e043c92b355b224d121b06140b44\"\u003e\u003ccode\u003ef28fbf8\u003c/code\u003e\u003c/a\u003e fix!: Deprecate \u003ccode\u003e\u0026quot;always\u0026quot;\u003c/code\u003e and \u003ccode\u003e\u0026quot;as-needed\u0026quot;\u003c/code\u003e options of the \u003ccode\u003eradix\u003c/code\u003e rule (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20223\"\u003e#20223\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/aa3fb2b233e929b37220be940575f42c280e0b98\"\u003e\u003ccode\u003eaa3fb2b\u003c/code\u003e\u003c/a\u003e fix!: tighten \u003ccode\u003efunc-names\u003c/code\u003e schema (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20119\"\u003e#20119\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/f6c0ed0311dcfee853367d5068c765d066e6b756\"\u003e\u003ccode\u003ef6c0ed0\u003c/code\u003e\u003c/a\u003e feat!: report \u003ccode\u003eeslint-env\u003c/code\u003e comments as errors (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20128\"\u003e#20128\u003c/a\u003e) (Francesco Trotta)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/4bf739fb533e59f7f0a66b65f7bc80be0f37d8db\"\u003e\u003ccode\u003e4bf739f\u003c/code\u003e\u003c/a\u003e fix!: remove deprecated \u003ccode\u003eLintMessage#nodeType\u003c/code\u003e and \u003ccode\u003eTestCaseError#type\u003c/code\u003e (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20096\"\u003e#20096\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/523c076866400670fb2192a3f55dbf7ad3469247\"\u003e\u003ccode\u003e523c076\u003c/code\u003e\u003c/a\u003e feat!: drop support for jiti \u0026lt; 2.2.0 (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20016\"\u003e#20016\u003c/a\u003e) (michael faith)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/454a292c95f34dad232411ddac06408e6383bb64\"\u003e\u003ccode\u003e454a292\u003c/code\u003e\u003c/a\u003e feat!: update \u003ccode\u003eeslint:recommended\u003c/code\u003e configuration (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20210\"\u003e#20210\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/4f880ee02992e1bf0e96ebaba679985e2d1295f1\"\u003e\u003ccode\u003e4f880ee\u003c/code\u003e\u003c/a\u003e feat!: remove \u003ccode\u003ev10_*\u003c/code\u003e and inactive \u003ccode\u003eunstable_*\u003c/code\u003e flags (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20225\"\u003e#20225\u003c/a\u003e) (sethamus)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/f18115c363a4ac7671a4c7f30ee13d57ebba330f\"\u003e\u003ccode\u003ef18115c\u003c/code\u003e\u003c/a\u003e feat!: \u003ccode\u003eno-shadow-restricted-names\u003c/code\u003e report \u003ccode\u003eglobalThis\u003c/code\u003e by default (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20027\"\u003e#20027\u003c/a\u003e) (sethamus)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/c6358c31fbd3937b92d89be2618ffdf5a774604e\"\u003e\u003ccode\u003ec6358c3\u003c/code\u003e\u003c/a\u003e feat!: Require Node.js \u003ccode\u003e^20.19.0 || ^22.13.0 || \u0026gt;=24\u003c/code\u003e (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20160\"\u003e#20160\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eFeatures\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/bff9091927811497dbf066b0e3b85ecb37d43822\"\u003e\u003ccode\u003ebff9091\u003c/code\u003e\u003c/a\u003e feat: handle \u003ccode\u003eArray.fromAsync\u003c/code\u003e in \u003ccode\u003earray-callback-return\u003c/code\u003e (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20457\"\u003e#20457\u003c/a\u003e) (Francesco Trotta)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/290c594bb50c439fb71bc75521ee5360daa8c222\"\u003e\u003ccode\u003e290c594\u003c/code\u003e\u003c/a\u003e feat: add \u003ccode\u003eself\u003c/code\u003e to \u003ccode\u003eno-implied-eval\u003c/code\u003e rule (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20468\"\u003e#20468\u003c/a\u003e) (sethamus)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/43677de07ebd6e14bfac40a46ad749ba783c45f2\"\u003e\u003ccode\u003e43677de\u003c/code\u003e\u003c/a\u003e feat: fix handling of function and class expression names in \u003ccode\u003eno-shadow\u003c/code\u003e (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20432\"\u003e#20432\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/84fb885d49ac810e79a9491276b4828b53d913e5\"\u003e\u003ccode\u003e84fb885\u003c/code\u003e\u003c/a\u003e chore: package.json update for \u003ccode\u003e@​eslint/js\u003c/code\u003e release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/1f667344b57c4c09b548d94bcfac1f91b6e5c63d\"\u003e\u003ccode\u003e1f66734\u003c/code\u003e\u003c/a\u003e chore: add \u003ccode\u003eeslint\u003c/code\u003e to \u003ccode\u003epeerDependencies\u003c/code\u003e of \u003ccode\u003e@eslint/js\u003c/code\u003e (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20467\"\u003e#20467\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/f3fbc2f60cbe2c718364feb8c3fc0452c0df3c56\"\u003e\u003ccode\u003ef3fbc2f\u003c/code\u003e\u003c/a\u003e chore: set \u003ccode\u003e@eslint/js\u003c/code\u003e version to 10.0.0 to skip releasing it (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20466\"\u003e#20466\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/b4b3127f8542c599ce2dea804b6582ebc40c993d\"\u003e\u003ccode\u003eb4b3127\u003c/code\u003e\u003c/a\u003e chore: package.json update for \u003ccode\u003e@​eslint/js\u003c/code\u003e release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/0b14059491d830a49b3577931f4f68fbcfce6be5\"\u003e\u003ccode\u003e0b14059\u003c/code\u003e\u003c/a\u003e chore: package.json update for \u003ccode\u003e@​eslint/js\u003c/code\u003e release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/fa31a608901684fbcd9906d1907e66561d16e5aa\"\u003e\u003ccode\u003efa31a60\u003c/code\u003e\u003c/a\u003e feat!: add \u003ccode\u003ename\u003c/code\u003e to configs (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20015\"\u003e#20015\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/1e2cad5f6fa47ed6ed89d2a29798dda926d50990\"\u003e\u003ccode\u003e1e2cad5\u003c/code\u003e\u003c/a\u003e chore: package.json update for \u003ccode\u003e@​eslint/js\u003c/code\u003e release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/454a292c95f34dad232411ddac06408e6383bb64\"\u003e\u003ccode\u003e454a292\u003c/code\u003e\u003c/a\u003e feat!: update \u003ccode\u003eeslint:recommended\u003c/code\u003e configuration (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20210\"\u003e#20210\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/c6358c31fbd3937b92d89be2618ffdf5a774604e\"\u003e\u003ccode\u003ec6358c3\u003c/code\u003e\u003c/a\u003e feat!: Require Node.js \u003ccode\u003e^20.19.0 || ^22.13.0 || \u0026gt;=24\u003c/code\u003e (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20160\"\u003e#20160\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/eslint/eslint/commits/v10.0.1/packages/js\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@typescript-eslint/eslint-plugin` from 8.56.0 to 8.59.2\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases\"\u003e@​typescript-eslint/eslint-plugin's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev8.59.2\u003c/h2\u003e\n\u003ch2\u003e8.59.2 (2026-05-04)\u003c/h2\u003e\n\u003ch3\u003e🩹 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unsafe-type-assertion] handle crash on recursive template literal types (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12150\"\u003e#12150\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-deprecated] object destructuring values should be treated as declarations (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12292\"\u003e#12292\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003erule-tester:\u003c/strong\u003e add TypeScript as a peer dependency (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12288\"\u003e#12288\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e❤️ Thank You\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eDariusz Czajkowski\u003c/li\u003e\n\u003cli\u003eDima Barabash\u003c/li\u003e\n\u003cli\u003eKirk Waiblinger \u003ca href=\"https://github.com/kirkwaiblinger\"\u003e\u003ccode\u003e@​kirkwaiblinger\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.2\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003ev8.59.1\u003c/h2\u003e\n\u003ch2\u003e8.59.1 (2026-04-27)\u003c/h2\u003e\n\u003ch3\u003e🩹 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-type-assertion] fix crash \u0026quot;TypeError: checker.getTypeArguments is not a function\u0026quot; (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12246\"\u003e#12246\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-type-assertion] preserve index signatures in undefined unions (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12257\"\u003e#12257\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-type-assertion] preserve phantom type arguments in generic inference (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12269\"\u003e#12269\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-type-assertion] avoid false positive in logical assignment assertions (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12278\"\u003e#12278\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-type-arguments] handle instantiation expressions (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12220\"\u003e#12220\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-condition] treat void as nullish in no-unnecessary-condition (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12241\"\u003e#12241\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e❤️ Thank You\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eanasm266 \u003ca href=\"https://github.com/anasm266\"\u003e\u003ccode\u003e@​anasm266\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAnshika Jain \u003ca href=\"https://github.com/Anshikakalpana\"\u003e\u003ccode\u003e@​Anshikakalpana\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUlrich Stark\u003c/li\u003e\n\u003cli\u003eyugo innami \u003ca href=\"https://github.com/nami8824\"\u003e\u003ccode\u003e@​nami8824\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.1\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003ev8.59.0\u003c/h2\u003e\n\u003ch2\u003e8.59.0 (2026-04-20)\u003c/h2\u003e\n\u003ch3\u003e🚀 Features\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-type-assertion] report more cases based on assignability (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/11789\"\u003e#11789\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e❤️ Thank You\u003c/h3\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/CHANGELOG.md\"\u003e@​typescript-eslint/eslint-plugin's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e8.59.2 (2026-05-04)\u003c/h2\u003e\n\u003ch3\u003e🩹 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-deprecated] object destructuring values should be treated as declarations (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12292\"\u003e#12292\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unsafe-type-assertion] handle crash on recursive template literal types (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12150\"\u003e#12150\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e❤️ Thank You\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eDima Barabash\u003c/li\u003e\n\u003cli\u003eKirk Waiblinger \u003ca href=\"https://github.com/kirkwaiblinger\"\u003e\u003ccode\u003e@​kirkwaiblinger\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.2\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003e8.59.1 (2026-04-27)\u003c/h2\u003e\n\u003ch3\u003e🩹 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-condition] treat void as nullish in no-unnecessary-condition (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12241\"\u003e#12241\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-type-arguments] handle instantiation expressions (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12220\"\u003e#12220\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-type-assertion] avoid false positive in logical assignment assertions (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12278\"\u003e#12278\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-type-assertion] preserve phantom type arguments in generic inference (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12269\"\u003e#12269\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-type-assertion] preserve index signatures in undefined unions (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12257\"\u003e#12257\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-type-assertion] fix crash \u0026quot;TypeError: checker.getTypeArguments is not a function\u0026quot; (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12246\"\u003e#12246\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e❤️ Thank You\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eanasm266 \u003ca href=\"https://github.com/anasm266\"\u003e\u003ccode\u003e@​anasm266\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAnshika Jain \u003ca href=\"https://github.com/Anshikakalpana\"\u003e\u003ccode\u003e@​Anshikakalpana\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUlrich Stark\u003c/li\u003e\n\u003cli\u003eyugo innami \u003ca href=\"https://github.com/nami8824\"\u003e\u003ccode\u003e@​nami8824\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.1\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003e8.59.0 (2026-04-20)\u003c/h2\u003e\n\u003ch3\u003e🚀 Features\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-type-assertion] report more cases based on assignability (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/11789\"\u003e#11789\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e❤️ Thank You\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUlrich Stark\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.0\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/2ec35f1760aade4df4c631d76d78c7ed5e136333\"\u003e\u003ccode\u003e2ec35f1\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.59.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/ec3ef25390f7daf5a9ff33a60282bdbbb49ab0f3\"\u003e\u003ccode\u003eec3ef25\u003c/code\u003e\u003c/a\u003e test: make no-useless-empty-export tests fully static (\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin/issues/12260\"\u003e#12260\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/60d0a513870d833617374ff8ea256d86ca3cbbbb\"\u003e\u003ccode\u003e60d0a51\u003c/code\u003e\u003c/a\u003e chore(eslint-plugin): switch auto-generated test cases to hand-written in no-...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/5c53da230a70aba7d6f3d6474b5d249b430a95d0\"\u003e\u003ccode\u003e5c53da2\u003c/code\u003e\u003c/a\u003e fix(eslint-plugin): [no-deprecated] object destructuring values should be tre...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/80c28a1ada3f975a932a02587cefee632ccf6550\"\u003e\u003ccode\u003e80c28a1\u003c/code\u003e\u003c/a\u003e fix(eslint-plugin): [no-unsafe-type-assertion] handle crash on recursive temp...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/b7b2670123f76419630f88f3a807f85b7c535230\"\u003e\u003ccode\u003eb7b2670\u003c/code\u003e\u003c/a\u003e test: make no-this-alias tests fully static (\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin/issues/12258\"\u003e#12258\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/52457932e5507b5ca01e720a541f3f8d01e09b9d\"\u003e\u003ccode\u003e5245793\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.59.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/3cef12471659c42c9d4b179f4113a080b1fa2d66\"\u003e\u003ccode\u003e3cef124\u003c/code\u003e\u003c/a\u003e chore(eslint-plugin): switch auto-generated test cases to hand-written in dot...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/27c507b6e532abcd1efa51055f045b00f22055c3\"\u003e\u003ccode\u003e27c507b\u003c/code\u003e\u003c/a\u003e test: make sort-type-constituents tests fully static (\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin/issues/12262\"\u003e#12262\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/a03b31d422be35d8ddc979f48f9317e3f33dd1ce\"\u003e\u003ccode\u003ea03b31d\u003c/code\u003e\u003c/a\u003e chore(eslint-plugin): switch auto-generated test cases to hand-written in no-...\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commits/v8.59.2/packages/eslint-plugin\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@typescript-eslint/parser` from 8.56.0 to 8.59.2\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases\"\u003e@​typescript-eslint/parser's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev8.59.2\u003c/h2\u003e\n\u003ch2\u003e8.59.2 (2026-05-04)\u003c/h2\u003e\n\u003ch3\u003e🩹 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unsafe-type-assertion] handle crash on recursive template literal types (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12150\"\u003e#12150\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-deprecated] object destructuring values should be treated as declarations (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12292\"\u003e#12292\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003erule-tester:\u003c/strong\u003e add TypeScript as a peer dependency (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12288\"\u003e#12288\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e❤️ Thank You\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eDariusz Czajkowski\u003c/li\u003e\n\u003cli\u003eDima Barabash\u003c/li\u003e\n\u003cli\u003eKirk Waiblinger \u003ca href=\"https://github.com/kirkwaiblinger\"\u003e\u003ccode\u003e@​kirkwaiblinger\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.2\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003ev8.59.1\u003c/h2\u003e\n\u003ch2\u003e8.59.1 (2026-04-27)\u003c/h2\u003e\n\u003ch3\u003e🩹 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-type-assertion] fix crash \u0026quot;TypeError: checker.getTypeArguments is not a function\u0026quot; (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12246\"\u003e#12246\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-type-assertion] preserve index signatures in undefined unions (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12257\"\u003e#12257\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-type-assertion] preserve phantom type arguments in generic inference (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12269\"\u003e#12269\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-type-assertion] avoid false positive in logical assignment assertions (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12278\"\u003e#12278\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-type-arguments] handle instantiation expressions (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12220\"\u003e#12220\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-condition] treat void as nullish in no-unnecessary-condition (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12241\"\u003e#12241\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e❤️ Thank You\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eanasm266 \u003ca href=\"https://github.com/anasm266\"\u003e\u003ccode\u003e@​anasm266\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAnshika Jain \u003ca href=\"https://github.com/Anshikakalpana\"\u003e\u003ccode\u003e@​Anshikakalpana\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUlrich Stark\u003c/li\u003e\n\u003cli\u003eyugo innami \u003ca href=\"https://github.com/nami8824\"\u003e\u003ccode\u003e@​nami8824\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.1\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003ev8.59.0\u003c/h2\u003e\n\u003ch2\u003e8.59.0 (2026-04-20)\u003c/h2\u003e\n\u003ch3\u003e🚀 Features\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-type-assertion] report more cases based on assignability (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/11789\"\u003e#11789\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e❤️ Thank You\u003c/h3\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/parser/CHANGELOG.md\"\u003e@​typescript-eslint/parser's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e8.59.2 (2026-05-04)\u003c/h2\u003e\n\u003cp\u003eThis was a version bump only for parser to align it with other projects, there were no code changes.\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.2\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003e8.59.1 (2026-04-27)\u003c/h2\u003e\n\u003cp\u003eThis was a version bump only for parser to align it with other projects, there were no code changes.\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.1\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003e8.59.0 (2026-04-20)\u003c/h2\u003e\n\u003cp\u003eThis was a version bump only for parser to align it with other projects, there were no code changes.\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.0\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003e8.58.2 (2026-04-13)\u003c/h2\u003e\n\u003ch3\u003e🩹 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eremove tsbuildinfo cache file from published packages (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12187\"\u003e#12187\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e❤️ Thank You\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAbhijeet Singh \u003ca href=\"https://github.com/cseas\"\u003e\u003ccode\u003e@​cseas\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.58.2\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003e8.58.1 (2026-04-08)\u003c/h2\u003e\n\u003cp\u003eThis was a version bump only for parser to align it with other projects, there were no code changes.\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.58.1\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003e8.58.0 (2026-03-30)\u003c/h2\u003e\n\u003ch3\u003e🚀 Features\u003c/h3\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/2ec35f1760aade4df4c631d76d78c7ed5e136333\"\u003e\u003ccode\u003e2ec35f1\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.59.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/52457932e5507b5ca01e720a541f3f8d01e09b9d\"\u003e\u003ccode\u003e5245793\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.59.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/ea9ae4f8817873480e3501145059f63e39e8d8a1\"\u003e\u003ccode\u003eea9ae4f\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.59.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/90c2803a4c250e0343598d41e973f95e743bf4ce\"\u003e\u003ccode\u003e90c2803\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.58.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/be6b49a02d68db9bdc8985e7e9e1598700fda2fa\"\u003e\u003ccode\u003ebe6b49a\u003c/code\u003e\u003c/a\u003e fix: remove tsbuildinfo cache file from published packages (\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/parser/issues/12187\"\u003e#12187\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/5311ed312eadf4e238324f2726ae0b1f3f2206e6\"\u003e\u003ccode\u003e5311ed3\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.58.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/493341709fe7d1d6433332b7bd2724e3332c7cdf\"\u003e\u003ccode\u003e4933417\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.58.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/8cde2d06fb9bc591a4c93452509ddbd600c76a35\"\u003e\u003ccode\u003e8cde2d0\u003c/code\u003e\u003c/a\u003e feat: support TypeScript 6 (\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/parser/issues/12124\"\u003e#12124\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/be4d54d26e695cc93605ffcca67dd75848e95c6f\"\u003e\u003ccode\u003ebe4d54d\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.57.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/c7c38aa252d7bf6708a225aebedc57686ac33dcd\"\u003e\u003ccode\u003ec7c38aa\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.57.1\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commits/v8.59.2/packages/parser\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `eslint` from 9.39.2 to 10.3.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/eslint/eslint/releases\"\u003eeslint's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev10.3.0\u003c/h2\u003e\n\u003ch2\u003eFeatures\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/379571a975f2b24d88037b9de2e72ec61d004130\"\u003e\u003ccode\u003e379571a\u003c/code\u003e\u003c/a\u003e feat: add suggestions for no-unused-private-class-members (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20773\"\u003e#20773\u003c/a\u003e) (sethamus)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eBug Fixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/b6ae5cf07b9b51802367539cb24b245b61eaa37c\"\u003e\u003ccode\u003eb6ae5cf\u003c/code\u003e\u003c/a\u003e fix: handle unavailable require cache (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20812\"\u003e#20812\u003c/a\u003e) (Simon Podlipsky)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/6fb3685bcbe9a6f72fd7dfb9129686b6fb96b0bd\"\u003e\u003ccode\u003e6fb3685\u003c/code\u003e\u003c/a\u003e fix: rule suggestions cause continuation in class body (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20787\"\u003e#20787\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eDocumentation\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/32cc7ab4ec653ce89da92deb5c40a9f4fc707fe5\"\u003e\u003ccode\u003e32cc7ab\u003c/code\u003e\u003c/a\u003e docs: fix typos in docs and comments (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20809\"\u003e#20809\u003c/a\u003e) (Tanuj Kanti)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/7f479376a2fa463d823ab762db6bb37ce8d2ee8f\"\u003e\u003ccode\u003e7f47937\u003c/code\u003e\u003c/a\u003e docs: Update README (GitHub Actions Bot)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eChores\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/d32235ec19ceea211fa86452afa383ca05f5c2f9\"\u003e\u003ccode\u003ed32235e\u003c/code\u003e\u003c/a\u003e ci: use pnpm in \u003ccode\u003eeslint-flat-config-utils\u003c/code\u003e type integration test (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20826\"\u003e#20826\u003c/a\u003e) (Francesco Trotta)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/3ffb14ea517de750ed1181579ef844af342e4096\"\u003e\u003ccode\u003e3ffb14e\u003c/code\u003e\u003c/a\u003e chore: clean up typos in comments and JSDoc (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20821\"\u003e#20821\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/22eb58a21cbde2fbd53a1fae99453d408672de50\"\u003e\u003ccode\u003e22eb58a\u003c/code\u003e\u003c/a\u003e chore: add missing continue-on-error to ecosystem-tests.yml (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20818\"\u003e#20818\u003c/a\u003e) (Josh Goldberg ✨)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/88bf0024cb36caebf2880516d9a1f81aa75dafe2\"\u003e\u003ccode\u003e88bf002\u003c/code\u003e\u003c/a\u003e ci: bump pnpm/action-setup from 6.0.1 to 6.0.3 (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20815\"\u003e#20815\u003c/a\u003e) (dependabot[bot])\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/97c8c330beae9557ad24e19f94eebc8d08d1a722\"\u003e\u003ccode\u003e97c8c33\u003c/code\u003e\u003c/a\u003e chore: update ilshidur/action-discord action to v0.4.0 (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20811\"\u003e#20811\u003c/a\u003e) (renovate[bot])\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/2f58136dd47364a4cae7054a64f7bf1e79693813\"\u003e\u003ccode\u003e2f58136\u003c/code\u003e\u003c/a\u003e chore: pin peter-evans/create-pull-request action to 5f6978f (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20810\"\u003e#20810\u003c/a\u003e) (renovate[bot])\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/77add7f1bc91ed17bba3be3289928a9146c5f5a1\"\u003e\u003ccode\u003e77add7f\u003c/code\u003e\u003c/a\u003e chore: add initial ecosystem plugin tests workflow (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/19643\"\u003e#19643\u003c/a\u003e) (Josh Goldberg ✨)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/4023b55490fae55e464fe35530ef038cdf5d79a5\"\u003e\u003ccode\u003e4023b55\u003c/code\u003e\u003c/a\u003e test: Add unit tests for SuppressionsService.prune() (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20797\"\u003e#20797\u003c/a\u003e) (kuldeep kumar)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/54080dad4f77bb39a1a843933d4ff3a2b7c175e2\"\u003e\u003ccode\u003e54080da\u003c/code\u003e\u003c/a\u003e test: add unit tests for ForkContext (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20778\"\u003e#20778\u003c/a\u003e) (kuldeep kumar)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/f0e2bcc4bf19253aaebfbd7df87824b0ca4a151f\"\u003e\u003ccode\u003ef0e2bcc\u003c/code\u003e\u003c/a\u003e test: add unit tests for SuppressionsService.suppress() method (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20765\"\u003e#20765\u003c/a\u003e) (kuldeep kumar)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/a7f0b94743a99bcdf8d07cff15ffbfa6a6c5f927\"\u003e\u003ccode\u003ea7f0b94\u003c/code\u003e\u003c/a\u003e chore: update dependency prettier to v3.8.3 (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20782\"\u003e#20782\u003c/a\u003e) (renovate[bot])\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/7bf93d9e79f6dbf77242cbb9a9b8be834730fccd\"\u003e\u003ccode\u003e7bf93d9\u003c/code\u003e\u003c/a\u003e chore: update TypeScript to v6 (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20677\"\u003e#20677\u003c/a\u003e) (sethamus)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/b42dd72e76e7f90e7f0be9458288d93353052adc\"\u003e\u003ccode\u003eb42dd72\u003c/code\u003e\u003c/a\u003e ci: bump pnpm/action-setup from 6.0.0 to 6.0.1 (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20781\"\u003e#20781\u003c/a\u003e) (dependabot[bot])\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/2b252be80f362cca7be3326a6dbe958680fdfe9a\"\u003e\u003ccode\u003e2b252be\u003c/code\u003e\u003c/a\u003e test: add unit tests for IdGenerator (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20775\"\u003e#20775\u003c/a\u003e) (kuldeep kumar)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev10.2.1\u003c/h2\u003e\n\u003ch2\u003eBug Fixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/14be92b6d1fa0923b8923830f2208e5e2705b002\"\u003e\u003ccode\u003e14be92b\u003c/code\u003e\u003c/a\u003e fix: model generator yield resumption paths in code path analysis (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20665\"\u003e#20665\u003c/a\u003e) (sethamus)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/84a19d2c32255db6b9cfc08644a607aae6d5cb62\"\u003e\u003ccode\u003e84a19d2\u003c/code\u003e\u003c/a\u003e fix: no-async-promise-executor false positives for shadowed Promise (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20740\"\u003e#20740\u003c/a\u003e) (xbinaryx)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/af764af0ec38225755fbf8a6f207f0c77b595a8d\"\u003e\u003ccode\u003eaf764af\u003c/code\u003e\u003c/a\u003e fix: clarify language and processor validation errors (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20729\"\u003e#20729\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/e251b89a38280973e468a4a9386c138f4f55d10d\"\u003e\u003ccode\u003ee251b89\u003c/code\u003e\u003c/a\u003e fix: update eslint (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20715\"\u003e#20715\u003c/a\u003e) (renovate[bot])\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eDocumentation\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/ca92ca0fb4599e8de1e2fb914e695fe7397cbe63\"\u003e\u003ccode\u003eca92ca0\u003c/code\u003e\u003c/a\u003e docs: reuse markdown-it instance for markdown filter (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20768\"\u003e#20768\u003c/a\u003e) (Amaresh  S M)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/57d2ee213305cee0cb55ef08e0480b57396269a9\"\u003e\u003ccode\u003e57d2ee2\u003c/code\u003e\u003c/a\u003e docs:  Enable Eleventy incremental mode for watch (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20767\"\u003e#20767\u003c/a\u003e) (Amaresh  S M)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/c1621b915742276e5f4b25efe790ca62296330dc\"\u003e\u003ccode\u003ec1621b9\u003c/code\u003e\u003c/a\u003e docs: fix typos in code-path-analyzer.js (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20700\"\u003e#20700\u003c/a\u003e) (Ayush Shukla)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/1418d522d10bde1960f4942afb548bc7160ec49e\"\u003e\u003ccode\u003e1418d52\u003c/code\u003e\u003c/a\u003e docs: Update README (GitHub Actions Bot)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/39771e6e600f0b0617fdeafff6dd07e4211ffde6\"\u003e\u003ccode\u003e39771e6\u003c/code\u003e\u003c/a\u003e docs: Update README (GitHub Actions Bot)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/71e04693def2df57268f08f3072a2749df6bf438\"\u003e\u003ccode\u003e71e0469\u003c/code\u003e\u003c/a\u003e docs: fix incomplete JSDoc param description in no-shadow rule (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20728\"\u003e#20728\u003c/a\u003e) (kuldeep kumar)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/22119ceb93e28f62262fc1d98ff1b1442d6e2dbf\"\u003e\u003ccode\u003e22119ce\u003c/code\u003e\u003c/a\u003e docs: clarify scope of for-direction rule with dead code examples (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20723\"\u003e#20723\u003c/a\u003e) (Amaresh  S M)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/8f3fb77f122a5641d1833cad5d93f3f54fa3be0b\"\u003e\u003ccode\u003e8f3fb77\u003c/code\u003e\u003c/a\u003e docs: document \u003ccode\u003emeta.docs.dialects\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20718\"\u003e#20718\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eChores\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/7ddfea9c4f62add1588c5c0b0da568c299246383\"\u003e\u003ccode\u003e7ddfea9\u003c/code\u003e\u003c/a\u003e chore: update dependency prettier to v3.8.2 (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20770\"\u003e#20770\u003c/a\u003e) (renovate[bot])\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/fac40e1de2ba7646cc7cd2d3f93fbdd1f8819001\"\u003e\u003ccode\u003efac40e1\u003c/code\u003e\u003c/a\u003e ci: bump pnpm/action-setup from 5.0.0 to 6.0.0 (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20763\"\u003e#20763\u003c/a\u003e) (dependabot[bot])\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/7246f923332522d8b3d46b6ee646fce88535f3fb\"\u003e\u003ccode\u003e7246f92\u003c/code\u003e\u003c/a\u003e test: add tests for SuppressionsService.load() error handling (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20734\"\u003e#20734\u003c/a\u003e) (kuldeep kumar)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/4f34b1e592b0f63d766d9903998e8e36eb49d3aa\"\u003e\u003ccode\u003e4f34b1e\u003c/code\u003e\u003c/a\u003e chore: update pnpm/action-setup action to v5 (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20762\"\u003e#20762\u003c/a\u003e) (renovate[bot])\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/78892043a36da4aa7640b59c99344b00c181048a\"\u003e\u003ccode\u003e7889204\u003c/code\u003e\u003c/a\u003e 10.3.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/5b69b4fce4dc407c8e960eba638b5a3409c4f1fd\"\u003e\u003ccode\u003e5b69b4f\u003c/code\u003e\u003c/a\u003e Build: changelog update for 10.3.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/d32235ec19ceea211fa86452afa383ca05f5c2f9\"\u003e\u003ccode\u003ed32235e\u003c/code\u003e\u003c/a\u003e ci: use pnpm in \u003ccode\u003eeslint-flat-config-utils\u003c/code\u003e type integration test (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20826\"\u003e#20826\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/b6ae5cf07b9b51802367539cb24b245b61eaa37c\"\u003e\u003ccode\u003eb6ae5cf\u003c/code\u003e\u003c/a\u003e fix: handle unavailable require cache (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20812\"\u003e#20812\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/3ffb14ea517de750ed1181579ef844af342e4096\"\u003e\u003ccode\u003e3ffb14e\u003c/code\u003e\u003c/a\u003e chore: clean up typos in comments and JSDoc (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20821\"\u003e#20821\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/6fb3685bcbe9a6f72fd7dfb9129686b6fb96b0bd\"\u003e\u003ccode\u003e6fb3685\u003c/code\u003e\u003c/a\u003e fix: rule suggestions cause continuation in class body (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20787\"\u003e#20787\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/22eb58a21cbde2fbd53a1fae99453d408672de50\"\u003e\u003ccode\u003e22eb58a\u003c/code\u003e\u003c/a\u003e chore: add missing continue-on-error to ecosystem-tests.yml (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20818\"\u003e#20818\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/88bf0024cb36caebf2880516d9a1f81aa75dafe2\"\u003e\u003ccode\u003e88bf002\u003c/code\u003e\u003c/a\u003e ci: bump pnpm/action-setup from 6.0.1 to 6.0.3 (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20815\"\u003e#20815\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/379571a975f2b24d88037b9de2e72ec61d004130\"\u003e\u003ccode\u003e379571a\u003c/code\u003e\u003c/a\u003e feat: add suggestions for no-unused-private-class-members (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20773\"\u003e#20773\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/97c8c330beae9557ad24e19f94eebc8d08d1a722\"\u003e\u003ccode\u003e97c8c33\u003c/code\u003e\u003c/a\u003e chore: update ilshidur/action-discord action to v0.4.0 (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20811\"\u003e#20811\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/eslint/eslint/compare/v9.39.2...v10.3.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `eslint-plugin-react-hooks` from 7.0.1 to 7.1.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/facebook/react/releases\"\u003eeslint-plugin-react-hooks's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eeslint-plugin-react-hooks@7.1.1 (April 17, 2026)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eNote:\u003c/strong\u003e 7.1.0 accidentally removed the \u003ccode\u003ecomponent-hook-factories\u003c/code\u003e rule, causing errors for users who referenced it in their ESLint config. This is now fixed.\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdd deprecated no-op \u003ccode\u003ecomponent-hook-factories\u003c/code\u003e rule for backwards compatibility. (\u003ca href=\"https://github.com/mofeiZ\"\u003e\u003ccode\u003e@​mofeiZ\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/36307\"\u003e#36307\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eeslint-plugin-react-hooks@7.1.0 (April 16, 2026)\u003c/h2\u003e\n\u003cp\u003eThis release adds ESLint v10 support, improves performance by skipping compilation for non-React files, and includes compiler lint improvements including better \u003ccode\u003eset-state-in-effect\u003c/code\u003e detection, improved ref validation, and more helpful error reporting.\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdd ESLint v10 support. (\u003ca href=\"https://github.com/azat-io\"\u003e\u003ccode\u003e@​azat-io\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/35720\"\u003e#35720\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSkip compilation for non-React files to improve performance. (\u003ca href=\"https://github.com/josephsavona\"\u003e\u003ccode\u003e@​josephsavona\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/35589\"\u003e#35589\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix exhaustive deps bug with Flow type casting. (\u003ca href=\"https://github.com/jorge-cab\"\u003e\u003ccode\u003e@​jorge-cab\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/35691\"\u003e#35691\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix \u003ccode\u003euseEffectEvent\u003c/code\u003e checks in component syntax. (\u003ca href=\"https://github.com/jbrown215\"\u003e\u003ccode\u003e@​jbrown215\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/35041\"\u003e#35041\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eImproved \u003ccode\u003eset-state-in-effect\u003c/code\u003e validation with fewer false negatives. (\u003ca href=\"https://github.com/jorge-cab\"\u003e\u003ccode\u003e@​jorge-cab\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/35134\"\u003e#35134\u003c/a\u003e, \u003ca href=\"https://github.com/josephsavona\"\u003e\u003ccode\u003e@​josephsavona\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/35147\"\u003e#35147\u003c/a\u003e, \u003ca href=\"https://github.com/jackpope\"\u003e\u003ccode\u003e@​jackpope\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/35214\"\u003e#35214\u003c/a\u003e, \u003ca href=\"https://github.com/chesnokov-tony\"\u003e\u003ccode\u003e@​chesnokov-tony\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/35419\"\u003e#35419\u003c/a\u003e, \u003ca href=\"https://github.com/jsleitor\"\u003e\u003ccode\u003e@​jsleitor\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/36107\"\u003e#36107\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eImproved ref validation for non-mutating functions and event handler props. (\u003ca href=\"https://github.com/josephsavona\"\u003e\u003ccode\u003e@​josephsavona\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/35893\"\u003e#35893\u003c/a\u003e, \u003ca href=\"https://github.com/kolvian\"\u003e\u003ccode\u003e@​kolvian\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/35062\"\u003e#35062\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCompiler now reports all errors instead of stopping at the first. (\u003ca href=\"https://github.com/josephsavona\"\u003e\u003ccode\u003e@​josephsavona\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/35873\"\u003e#35873\u003c/a\u003e–\u003ca href=\"https://redirect.github.com/facebook/react/pull/35884\"\u003e#35884\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eImproved source locations and error display in compiler diagnostics. (\u003ca href=\"https://github.com/nathanmarks\"\u003e\u003ccode\u003e@​nathanmarks\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/35348\"\u003e#35348\u003c/a\u003e, \u003ca href=\"https://github.com/josephsavona\"\u003e\u003ccode\u003e@​josephsavona\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/34963\"\u003e#34963\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/facebook/react/blob/main/packages/eslint-plugin-react-hooks/CHANGELOG.md\"\u003eeslint-plugin-react-hooks's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e7.1.1\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eNote:\u003c/strong\u003e 7.1.0 accidentally removed the \u003ccode\u003ecomponent-hook-factories\u003c/code\u003e rule, causing errors for users who referenced it in their ESLint config. This is now fixed.\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdd deprecated no-op \u003ccode\u003ecomponent-hook-factories\u003c/code\u003e rule for backwards compatibility. (\u003ca href=\"https://github.com/mofeiZ\"\u003e\u003ccode\u003e@​mofeiZ\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/36307\"\u003e#36307\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e7.1.0\u003c/h2\u003e\n\u003cp\u003eThis release adds ESLint v10 support, improves performance by skipping compilation for non-React...\n\n_Description has been truncated_","html_url":"https://github.com/localhostamit/pyqhub-mockgen/pull/6","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/localhostamit%2Fpyqhub-mockgen/issues/6","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/6/packages"}},{"old_version":"5.1.3","new_version":"5.2.0","update_type":"minor","path":null,"pr_created_at":"2026-05-11T04:54:52.000Z","version_change":"5.1.3 → 5.2.0","issue":{"uuid":"4418166005","node_id":"PR_kwDOR1uAnc7aHKXo","number":6,"state":"open","title":"deps(deps): bump the all-dependencies group across 1 directory with 65 updates","user":"dependabot[bot]","labels":[],"assignees":[],"locked":false,"comments_count":1,"pull_request":true,"closed_at":null,"author_association":null,"state_reason":null,"created_at":"2026-05-11T04:54:52.000Z","updated_at":"2026-05-11T04:54:53.000Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"deps(deps): bump","group_name":"all-dependencies","update_count":65,"packages":[{"name":"@eslint-react/eslint-plugin","old_version":"2.13.0","new_version":"5.7.5","repository_url":"https://github.com/Rel1cx/eslint-react"},{"name":"@eslint/js","old_version":"9.39.2","new_version":"10.0.1","repository_url":"https://github.com/eslint/eslint"},{"name":"@typescript-eslint/eslint-plugin","old_version":"8.56.0","new_version":"8.59.2","repository_url":"https://github.com/typescript-eslint/typescript-eslint"},{"name":"@typescript-eslint/parser","old_version":"8.56.0","new_version":"8.59.2","repository_url":"https://github.com/typescript-eslint/typescript-eslint"},{"name":"eslint","old_version":"9.39.2","new_version":"10.3.0","repository_url":"https://github.com/eslint/eslint"},{"name":"eslint-plugin-react-hooks","old_version":"7.0.1","new_version":"7.1.1","repository_url":"https://github.com/facebook/react"},{"name":"globals","old_version":"17.3.0","new_version":"17.6.0","repository_url":"https://github.com/sindresorhus/globals"},{"name":"graphql","old_version":"16.12.0","new_version":"16.14.0","repository_url":"https://github.com/graphql/graphql-js"},{"name":"happy-dom","old_version":"20.6.2","new_version":"20.9.0","repository_url":"https://github.com/capricorn86/happy-dom"},{"name":"jiti","old_version":"2.6.1","new_version":"2.7.0","repository_url":"https://github.com/unjs/jiti"},{"name":"lint-staged","old_version":"16.2.7","new_version":"17.0.4","repository_url":"https://github.com/lint-staged/lint-staged"},{"name":"mermaid","old_version":"11.12.3","new_version":"11.14.0","repository_url":"https://github.com/mermaid-js/mermaid"},{"name":"prettier","old_version":"3.8.1","new_version":"3.8.3","repository_url":"https://github.com/prettier/prettier"},{"name":"react","old_version":"19.2.4","new_version":"19.2.6","repository_url":"https://github.com/facebook/react"},{"name":"typescript","old_version":"5.9.3","new_version":"6.0.3","repository_url":"https://github.com/microsoft/TypeScript"},{"name":"typescript-eslint","old_version":"8.56.0","new_version":"8.59.2","repository_url":"https://github.com/typescript-eslint/typescript-eslint"},{"name":"typescript-language-server","old_version":"5.1.3","new_version":"5.2.0","repository_url":"https://github.com/typescript-language-server/typescript-language-server"},{"name":"vite","old_version":"7.3.1","new_version":"8.0.11","repository_url":"https://github.com/vitejs/vite"},{"name":"vitepress","old_version":"2.0.0-alpha.16","new_version":"2.0.0-alpha.17","repository_url":"https://github.com/vuejs/vitepress"},{"name":"vitepress-plugin-llms","old_version":"1.11.0","new_version":"1.12.2","repository_url":"https://github.com/okineadev/vitepress-plugin-llms"},{"name":"vitest","old_version":"4.0.18","new_version":"4.1.5","repository_url":"https://github.com/vitest-dev/vitest"},{"name":"wrangler","old_version":"4.66.0","new_version":"4.90.0","repository_url":"https://github.com/cloudflare/workers-sdk"},{"name":"@ai-sdk/openai","old_version":"3.0.29","new_version":"3.0.63","repository_url":"https://github.com/vercel/ai"},{"name":"@better-auth/passkey","old_version":"1.4.18","new_version":"1.6.10","repository_url":"https://github.com/better-auth/better-auth"},{"name":"@better-auth/stripe","old_version":"1.4.18","new_version":"1.6.10","repository_url":"https://github.com/better-auth/better-auth"},{"name":"@trpc/server","old_version":"11.10.0","new_version":"11.17.0","repository_url":"https://github.com/trpc/trpc"},{"name":"ai","old_version":"6.0.91","new_version":"6.0.177","repository_url":"https://github.com/vercel/ai"},{"name":"better-auth","old_version":"1.4.18","new_version":"1.6.10","repository_url":"https://github.com/better-auth/better-auth"},{"name":"drizzle-orm","old_version":"0.45.1","new_version":"0.45.2","repository_url":"https://github.com/drizzle-team/drizzle-orm"},{"name":"postgres","old_version":"3.4.8","new_version":"3.4.9","repository_url":"https://github.com/porsager/postgres"},{"name":"resend","old_version":"6.9.2","new_version":"6.12.3","repository_url":"https://github.com/resend/resend-node"},{"name":"stripe","old_version":"20.3.1","new_version":"22.1.1","repository_url":"https://github.com/stripe/stripe-node"},{"name":"@cloudflare/workers-types","old_version":"4.20260218.0","new_version":"4.20260511.1","repository_url":"https://github.com/cloudflare/workerd"},{"name":"@types/bun","old_version":"1.3.9","new_version":"1.3.13","repository_url":"https://github.com/DefinitelyTyped/DefinitelyTyped"},{"name":"hono","old_version":"4.11.10","new_version":"4.12.18","repository_url":"https://github.com/honojs/hono"},{"name":"@tanstack/react-query","old_version":"5.90.21","new_version":"5.100.9","repository_url":"https://github.com/TanStack/query"},{"name":"@tanstack/react-router","old_version":"1.161.1","new_version":"1.169.2","repository_url":"https://github.com/TanStack/router"},{"name":"@trpc/client","old_version":"11.10.0","new_version":"11.17.0","repository_url":"https://github.com/trpc/trpc"},{"name":"@trpc/tanstack-react-query","old_version":"11.10.0","new_version":"11.17.0","repository_url":"https://github.com/trpc/trpc"},{"name":"jotai","old_version":"2.17.1","new_version":"2.20.0","repository_url":"https://github.com/pmndrs/jotai"},{"name":"lucide-react","old_version":"0.574.0","new_version":"1.14.0","repository_url":"https://github.com/lucide-icons/lucide"},{"name":"react-dom","old_version":"19.2.4","new_version":"19.2.6","repository_url":"https://github.com/facebook/react"},{"name":"tailwind-merge","old_version":"3.4.1","new_version":"3.6.0","repository_url":"https://github.com/dcastil/tailwind-merge"},{"name":"@tailwindcss/postcss","old_version":"4.2.0","new_version":"4.3.0","repository_url":"https://github.com/tailwindlabs/tailwindcss"},{"name":"@tanstack/react-query-devtools","old_version":"5.91.3","new_version":"5.100.9","repository_url":"https://github.com/TanStack/query"},{"name":"@tanstack/react-router-devtools","old_version":"1.161.1","new_version":"1.166.13","repository_url":"https://github.com/TanStack/router"},{"name":"@tanstack/router-plugin","old_version":"1.161.1","new_version":"1.167.35","repository_url":"https://github.com/TanStack/router"},{"name":"@types/node","old_version":"25.2.3","new_version":"25.6.2","repository_url":"https://github.com/DefinitelyTyped/DefinitelyTyped"},{"name":"@vitejs/plugin-react","old_version":"5.1.4","new_version":"6.0.1","repository_url":"https://github.com/vitejs/vite-plugin-react"},{"name":"@vitejs/plugin-react-swc","old_version":"4.2.3","new_version":"4.3.0","repository_url":"https://github.com/vitejs/vite-plugin-react"},{"name":"autoprefixer","old_version":"10.4.24","new_version":"10.5.0","repository_url":"https://github.com/postcss/autoprefixer"},{"name":"globby","old_version":"16.1.1","new_version":"16.2.0","repository_url":"https://github.com/sindresorhus/globby"},{"name":"@react-email/components","old_version":"1.0.8","new_version":"1.0.12","repository_url":"https://github.com/resend/react-email"},{"name":"@react-email/render","old_version":"2.0.4","new_version":"2.0.8","repository_url":"https://github.com/resend/react-email"},{"name":"@react-email/preview-server","old_version":"5.2.8","new_version":"5.2.10","repository_url":"https://github.com/resend/react-email"},{"name":"react-email","old_version":"5.2.8","new_version":"6.1.1","repository_url":"https://github.com/resend/react-email"},{"name":"@astrojs/react","old_version":"4.4.2","new_version":"5.0.4","repository_url":"https://github.com/withastro/astro"},{"name":"astro","old_version":"5.17.2","new_version":"6.3.1","repository_url":"https://github.com/withastro/astro"},{"name":"dotenv","old_version":"17.3.1","new_version":"17.4.2","repository_url":"https://github.com/motdotla/dotenv"},{"name":"drizzle-kit","old_version":"0.31.9","new_version":"0.31.10","repository_url":"https://github.com/drizzle-team/drizzle-orm"},{"name":"@modelcontextprotocol/sdk","old_version":"1.26.0","new_version":"1.29.0","repository_url":"https://github.com/modelcontextprotocol/typescript-sdk"},{"name":"got","old_version":"14.6.6","new_version":"15.0.5","repository_url":"https://github.com/sindresorhus/got"}],"path":null,"ecosystem":"npm"},"body":"Bumps the all-dependencies group with 62 updates in the / directory:\n\n| Package | From | To |\n| --- | --- | --- |\n| [@eslint-react/eslint-plugin](https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin) | `2.13.0` | `5.7.5` |\n| [@eslint/js](https://github.com/eslint/eslint/tree/HEAD/packages/js) | `9.39.2` | `10.0.1` |\n| [@typescript-eslint/eslint-plugin](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin) | `8.56.0` | `8.59.2` |\n| [@typescript-eslint/parser](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/parser) | `8.56.0` | `8.59.2` |\n| [eslint](https://github.com/eslint/eslint) | `9.39.2` | `10.3.0` |\n| [eslint-plugin-react-hooks](https://github.com/facebook/react/tree/HEAD/packages/eslint-plugin-react-hooks) | `7.0.1` | `7.1.1` |\n| [globals](https://github.com/sindresorhus/globals) | `17.3.0` | `17.6.0` |\n| [graphql](https://github.com/graphql/graphql-js) | `16.12.0` | `16.14.0` |\n| [happy-dom](https://github.com/capricorn86/happy-dom) | `20.6.2` | `20.9.0` |\n| [jiti](https://github.com/unjs/jiti) | `2.6.1` | `2.7.0` |\n| [lint-staged](https://github.com/lint-staged/lint-staged) | `16.2.7` | `17.0.4` |\n| [mermaid](https://github.com/mermaid-js/mermaid) | `11.12.3` | `11.14.0` |\n| [prettier](https://github.com/prettier/prettier) | `3.8.1` | `3.8.3` |\n| [react](https://github.com/facebook/react/tree/HEAD/packages/react) | `19.2.4` | `19.2.6` |\n| [typescript](https://github.com/microsoft/TypeScript) | `5.9.3` | `6.0.3` |\n| [typescript-eslint](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/typescript-eslint) | `8.56.0` | `8.59.2` |\n| [typescript-language-server](https://github.com/typescript-language-server/typescript-language-server) | `5.1.3` | `5.2.0` |\n| [vite](https://github.com/vitejs/vite/tree/HEAD/packages/vite) | `7.3.1` | `8.0.11` |\n| [vitepress](https://github.com/vuejs/vitepress) | `2.0.0-alpha.16` | `2.0.0-alpha.17` |\n| [vitepress-plugin-llms](https://github.com/okineadev/vitepress-plugin-llms) | `1.11.0` | `1.12.2` |\n| [vitest](https://github.com/vitest-dev/vitest/tree/HEAD/packages/vitest) | `4.0.18` | `4.1.5` |\n| [wrangler](https://github.com/cloudflare/workers-sdk/tree/HEAD/packages/wrangler) | `4.66.0` | `4.90.0` |\n| [@ai-sdk/openai](https://github.com/vercel/ai/tree/HEAD/packages/openai) | `3.0.29` | `3.0.63` |\n| [@better-auth/passkey](https://github.com/better-auth/better-auth/tree/HEAD/packages/passkey) | `1.4.18` | `1.6.10` |\n| [@better-auth/stripe](https://github.com/better-auth/better-auth/tree/HEAD/packages/stripe) | `1.4.18` | `1.6.10` |\n| [@trpc/server](https://github.com/trpc/trpc/tree/HEAD/packages/server) | `11.10.0` | `11.17.0` |\n| [ai](https://github.com/vercel/ai/tree/HEAD/packages/ai) | `6.0.91` | `6.0.177` |\n| [better-auth](https://github.com/better-auth/better-auth/tree/HEAD/packages/better-auth) | `1.4.18` | `1.6.10` |\n| [drizzle-orm](https://github.com/drizzle-team/drizzle-orm) | `0.45.1` | `0.45.2` |\n| [postgres](https://github.com/porsager/postgres) | `3.4.8` | `3.4.9` |\n| [resend](https://github.com/resend/resend-node) | `6.9.2` | `6.12.3` |\n| [stripe](https://github.com/stripe/stripe-node) | `20.3.1` | `22.1.1` |\n| [@cloudflare/workers-types](https://github.com/cloudflare/workerd) | `4.20260218.0` | `4.20260511.1` |\n| [@types/bun](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/bun) | `1.3.9` | `1.3.13` |\n| [hono](https://github.com/honojs/hono) | `4.11.10` | `4.12.18` |\n| [@tanstack/react-query](https://github.com/TanStack/query/tree/HEAD/packages/react-query) | `5.90.21` | `5.100.9` |\n| [@tanstack/react-router](https://github.com/TanStack/router/tree/HEAD/packages/react-router) | `1.161.1` | `1.169.2` |\n| [@trpc/client](https://github.com/trpc/trpc/tree/HEAD/packages/client) | `11.10.0` | `11.17.0` |\n| [@trpc/tanstack-react-query](https://github.com/trpc/trpc/tree/HEAD/packages/tanstack-react-query) | `11.10.0` | `11.17.0` |\n| [jotai](https://github.com/pmndrs/jotai) | `2.17.1` | `2.20.0` |\n| [lucide-react](https://github.com/lucide-icons/lucide/tree/HEAD/packages/lucide-react) | `0.574.0` | `1.14.0` |\n| [react-dom](https://github.com/facebook/react/tree/HEAD/packages/react-dom) | `19.2.4` | `19.2.6` |\n| [tailwind-merge](https://github.com/dcastil/tailwind-merge) | `3.4.1` | `3.6.0` |\n| [@tailwindcss/postcss](https://github.com/tailwindlabs/tailwindcss/tree/HEAD/packages/@tailwindcss-postcss) | `4.2.0` | `4.3.0` |\n| [@tanstack/react-query-devtools](https://github.com/TanStack/query/tree/HEAD/packages/react-query-devtools) | `5.91.3` | `5.100.9` |\n| [@tanstack/react-router-devtools](https://github.com/TanStack/router/tree/HEAD/packages/react-router-devtools) | `1.161.1` | `1.166.13` |\n| [@tanstack/router-plugin](https://github.com/TanStack/router/tree/HEAD/packages/router-plugin) | `1.161.1` | `1.167.35` |\n| [@types/node](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/node) | `25.2.3` | `25.6.2` |\n| [@vitejs/plugin-react](https://github.com/vitejs/vite-plugin-react/tree/HEAD/packages/plugin-react) | `5.1.4` | `6.0.1` |\n| [@vitejs/plugin-react-swc](https://github.com/vitejs/vite-plugin-react/tree/HEAD/packages/plugin-react-swc) | `4.2.3` | `4.3.0` |\n| [autoprefixer](https://github.com/postcss/autoprefixer) | `10.4.24` | `10.5.0` |\n| [globby](https://github.com/sindresorhus/globby) | `16.1.1` | `16.2.0` |\n| [@react-email/components](https://github.com/resend/react-email/tree/HEAD/packages/components) | `1.0.8` | `1.0.12` |\n| [@react-email/render](https://github.com/resend/react-email/tree/HEAD/packages/render) | `2.0.4` | `2.0.8` |\n| [@react-email/preview-server](https://github.com/resend/react-email/tree/HEAD/packages/preview-server) | `5.2.8` | `5.2.10` |\n| [react-email](https://github.com/resend/react-email/tree/HEAD/packages/react-email) | `5.2.8` | `6.1.1` |\n| [@astrojs/react](https://github.com/withastro/astro/tree/HEAD/packages/integrations/react) | `4.4.2` | `5.0.4` |\n| [astro](https://github.com/withastro/astro/tree/HEAD/packages/astro) | `5.17.2` | `6.3.1` |\n| [dotenv](https://github.com/motdotla/dotenv) | `17.3.1` | `17.4.2` |\n| [drizzle-kit](https://github.com/drizzle-team/drizzle-orm) | `0.31.9` | `0.31.10` |\n| [@modelcontextprotocol/sdk](https://github.com/modelcontextprotocol/typescript-sdk) | `1.26.0` | `1.29.0` |\n| [got](https://github.com/sindresorhus/got) | `14.6.6` | `15.0.5` |\n\n\nUpdates `@eslint-react/eslint-plugin` from 2.13.0 to 5.7.5\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/Rel1cx/eslint-react/releases\"\u003e@​eslint-react/eslint-plugin's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev5.7.5 (2026-05-08)\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003ch3\u003e🏗️ Internal\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eBumped \u003ccode\u003e@eslint/compat\u003c/code\u003e from 2.0.5 to 2.1.0.\u003c/li\u003e\n\u003cli\u003eBumped \u003ccode\u003e@types/node\u003c/code\u003e from 25.6.0 to 25.6.2.\u003c/li\u003e\n\u003cli\u003eBumped \u003ccode\u003enext\u003c/code\u003e from 16.2.5 to 16.2.6.\u003c/li\u003e\n\u003cli\u003eBumped \u003ccode\u003epublint\u003c/code\u003e from 0.3.19 to 0.3.20.\u003c/li\u003e\n\u003cli\u003eBumped \u003ccode\u003etsdown\u003c/code\u003e from 0.21.10 to 0.22.0.\u003c/li\u003e\n\u003cli\u003eBumped \u003ccode\u003epnpm\u003c/code\u003e from 10.33.4 to 11.0.8.\u003c/li\u003e\n\u003cli\u003eAdjusted website styles.\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/Rel1cx/eslint-react/compare/v5.7.4...v5.7.5\"\u003ehttps://github.com/Rel1cx/eslint-react/compare/v5.7.4...v5.7.5\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev5.7.4 (2026-05-07)\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003ch3\u003e🏗️ Internal\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eBumped \u003ccode\u003e@typescript-eslint\u003c/code\u003e packages from 8.59.1 to 8.59.2.\u003c/li\u003e\n\u003cli\u003eBumped \u003ccode\u003ereact\u003c/code\u003e and \u003ccode\u003ereact-dom\u003c/code\u003e from 19.2.5 to 19.2.6.\u003c/li\u003e\n\u003cli\u003eBumped \u003ccode\u003enext\u003c/code\u003e from 16.2.4 to 16.2.5.\u003c/li\u003e\n\u003cli\u003eBumped \u003ccode\u003enx\u003c/code\u003e from 22.7.1 to 23.0.0-canary.20260506-b594537.\u003c/li\u003e\n\u003cli\u003eBumped \u003ccode\u003efumadocs-core\u003c/code\u003e and \u003ccode\u003efumadocs-ui\u003c/code\u003e from 16.8.5 to 16.8.7.\u003c/li\u003e\n\u003cli\u003eBumped \u003ccode\u003epostcss\u003c/code\u003e from 8.5.13 to 8.5.14.\u003c/li\u003e\n\u003cli\u003eBumped \u003ccode\u003epublint\u003c/code\u003e from 0.3.18 to 0.3.19.\u003c/li\u003e\n\u003cli\u003eBumped \u003ccode\u003epnpm\u003c/code\u003e from 10.33.2 to 10.33.4.\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/Rel1cx/eslint-react/compare/v5.7.3...v5.7.4\"\u003ehttps://github.com/Rel1cx/eslint-react/compare/v5.7.3...v5.7.4\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev5.7.3 (2026-05-06)\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003ch3\u003e🐞 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003e\u003ccode\u003ereact-x/immutability\u003c/code\u003e\u003c/strong\u003e: Exempted ref mutations via a naming heuristic — any object whose identifier is \u003ccode\u003eref\u003c/code\u003e or ends with \u003ccode\u003eRef\u003c/code\u003e is treated as a mutable ref and skipped from immutability checks. This fixes false positives when mutating \u003ccode\u003eRefObject\u0026lt;T\u0026gt;\u003c/code\u003e values received as props (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1752\"\u003e#1752\u003c/a\u003e, \u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1751\"\u003e#1751\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003e\u003ccode\u003ereact-x/immutability\u003c/code\u003e\u003c/strong\u003e: Added \u003ccode\u003enoRefLikeStateName\u003c/code\u003e diagnostic to prevent state variables from being named \u003ccode\u003eref\u003c/code\u003e or ending with \u003ccode\u003eRef\u003c/code\u003e, which would otherwise bypass the ref exemption heuristic (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1752\"\u003e#1752\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e📝 Documentation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFixed the full rule name in \u003ccode\u003ereact-jsx/no-key-after-spread\u003c/code\u003e documentation (\u003ccode\u003ejsx/no-key-after-spread\u003c/code\u003e → \u003ccode\u003ejsx-no-key-after-spread\u003c/code\u003e) (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1750\"\u003e#1750\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/Rel1cx/eslint-react/compare/v5.7.2...v5.7.3\"\u003ehttps://github.com/Rel1cx/eslint-react/compare/v5.7.2...v5.7.3\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev5.7.2 (2026-05-04)\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003ch3\u003e🐞 Fixes\u003c/h3\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/Rel1cx/eslint-react/blob/main/CHANGELOG.md\"\u003e@​eslint-react/eslint-plugin's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev5.7.5 (2026-05-08)\u003c/h2\u003e\n\u003ch3\u003e🏗️ Internal\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eBumped \u003ccode\u003e@eslint/compat\u003c/code\u003e from 2.0.5 to 2.1.0.\u003c/li\u003e\n\u003cli\u003eBumped \u003ccode\u003e@types/node\u003c/code\u003e from 25.6.0 to 25.6.2.\u003c/li\u003e\n\u003cli\u003eBumped \u003ccode\u003enext\u003c/code\u003e from 16.2.5 to 16.2.6.\u003c/li\u003e\n\u003cli\u003eBumped \u003ccode\u003epublint\u003c/code\u003e from 0.3.19 to 0.3.20.\u003c/li\u003e\n\u003cli\u003eBumped \u003ccode\u003etsdown\u003c/code\u003e from 0.21.10 to 0.22.0.\u003c/li\u003e\n\u003cli\u003eBumped \u003ccode\u003epnpm\u003c/code\u003e from 10.33.4 to 11.0.8.\u003c/li\u003e\n\u003cli\u003eAdjusted website styles.\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/Rel1cx/eslint-react/compare/v5.7.4...v5.7.5\"\u003ehttps://github.com/Rel1cx/eslint-react/compare/v5.7.4...v5.7.5\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev5.7.4 (2026-05-07)\u003c/h2\u003e\n\u003ch3\u003e🏗️ Internal\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eBumped \u003ccode\u003e@typescript-eslint\u003c/code\u003e packages from 8.59.1 to 8.59.2.\u003c/li\u003e\n\u003cli\u003eBumped \u003ccode\u003ereact\u003c/code\u003e and \u003ccode\u003ereact-dom\u003c/code\u003e from 19.2.5 to 19.2.6.\u003c/li\u003e\n\u003cli\u003eBumped \u003ccode\u003enext\u003c/code\u003e from 16.2.4 to 16.2.5.\u003c/li\u003e\n\u003cli\u003eBumped \u003ccode\u003enx\u003c/code\u003e from 22.7.1 to 23.0.0-canary.20260506-b594537.\u003c/li\u003e\n\u003cli\u003eBumped \u003ccode\u003efumadocs-core\u003c/code\u003e and \u003ccode\u003efumadocs-ui\u003c/code\u003e from 16.8.5 to 16.8.7.\u003c/li\u003e\n\u003cli\u003eBumped \u003ccode\u003epostcss\u003c/code\u003e from 8.5.13 to 8.5.14.\u003c/li\u003e\n\u003cli\u003eBumped \u003ccode\u003epublint\u003c/code\u003e from 0.3.18 to 0.3.19.\u003c/li\u003e\n\u003cli\u003eBumped \u003ccode\u003epnpm\u003c/code\u003e from 10.33.2 to 10.33.4.\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/Rel1cx/eslint-react/compare/v5.7.3...v5.7.4\"\u003ehttps://github.com/Rel1cx/eslint-react/compare/v5.7.3...v5.7.4\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev5.7.3 (2026-05-06)\u003c/h2\u003e\n\u003ch3\u003e🐞 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003e\u003ccode\u003ereact-x/immutability\u003c/code\u003e\u003c/strong\u003e: Exempted ref mutations via a naming heuristic — any object whose identifier is \u003ccode\u003eref\u003c/code\u003e or ends with \u003ccode\u003eRef\u003c/code\u003e is treated as a mutable ref and skipped from immutability checks. This fixes false positives when mutating \u003ccode\u003eRefObject\u0026lt;T\u0026gt;\u003c/code\u003e values received as props (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1752\"\u003e#1752\u003c/a\u003e, \u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1751\"\u003e#1751\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003e\u003ccode\u003ereact-x/immutability\u003c/code\u003e\u003c/strong\u003e: Added \u003ccode\u003enoRefLikeStateName\u003c/code\u003e diagnostic to prevent state variables from being named \u003ccode\u003eref\u003c/code\u003e or ending with \u003ccode\u003eRef\u003c/code\u003e, which would otherwise bypass the ref exemption heuristic (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1752\"\u003e#1752\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e📝 Documentation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFixed the full rule name in \u003ccode\u003ereact-jsx/no-key-after-spread\u003c/code\u003e documentation (\u003ccode\u003ejsx/no-key-after-spread\u003c/code\u003e → \u003ccode\u003ejsx-no-key-after-spread\u003c/code\u003e) (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1750\"\u003e#1750\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/Rel1cx/eslint-react/compare/v5.7.2...v5.7.3\"\u003ehttps://github.com/Rel1cx/eslint-react/compare/v5.7.2...v5.7.3\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev5.7.2 (2026-05-04)\u003c/h2\u003e\n\u003ch3\u003e🐞 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003e\u003ccode\u003ereact-x/no-unused-state\u003c/code\u003e\u003c/strong\u003e: Removed the rule from the \u003ccode\u003erecommended\u003c/code\u003e preset for now (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1747\"\u003e#1747\u003c/a\u003e, \u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1748\"\u003e#1748\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e📝 Documentation\u003c/h3\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/de60fa2e3003c60e8c4f03970b5b84c7c9c84334\"\u003e\u003ccode\u003ede60fa2\u003c/code\u003e\u003c/a\u003e release: 5.7.5\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/2b075487d7952a8662c76305b64ce677776bab34\"\u003e\u003ccode\u003e2b07548\u003c/code\u003e\u003c/a\u003e release: 5.7.5-beta.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/9e186c17a28ff1d9e02e0a22f4f6b18193ceadca\"\u003e\u003ccode\u003e9e186c1\u003c/code\u003e\u003c/a\u003e release: 5.7.5-next.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/f7b012180b71b03a69e944b39fdc88811b16839b\"\u003e\u003ccode\u003ef7b0121\u003c/code\u003e\u003c/a\u003e chore: bump dependencies and adjust website styles (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1754\"\u003e#1754\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/99736d816cdcb56dd71be0ba8440c6b12017d862\"\u003e\u003ccode\u003e99736d8\u003c/code\u003e\u003c/a\u003e release: 5.7.4\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/bcd23f09215b120a119a53eacdb12e670ee897b9\"\u003e\u003ccode\u003ebcd23f0\u003c/code\u003e\u003c/a\u003e release: 5.7.4-beta.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/52071021ab5ae079fa69fc3996ac9109a76c230a\"\u003e\u003ccode\u003e5207102\u003c/code\u003e\u003c/a\u003e release: 5.7.4-next.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/b35fba3ea0e14827433efcc6017e8eaef0ca6486\"\u003e\u003ccode\u003eb35fba3\u003c/code\u003e\u003c/a\u003e Bump dependencies: eslint, react, next, and nx packages\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/a9098f22fc1a8c7b59e3b4916d0d5ff3cb2358be\"\u003e\u003ccode\u003ea9098f2\u003c/code\u003e\u003c/a\u003e release: 5.7.3\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/677db67c648814dbc500bdd40dea84ac9efa770c\"\u003e\u003ccode\u003e677db67\u003c/code\u003e\u003c/a\u003e release: 5.7.2\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/Rel1cx/eslint-react/commits/v5.7.5/plugins/eslint-plugin\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@eslint/js` from 9.39.2 to 10.0.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/eslint/eslint/releases\"\u003e@​eslint/js's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev10.0.1\u003c/h2\u003e\n\u003ch2\u003eBug Fixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/c87d5bded54c5cf491eb04c24c9d09bbbd42c23e\"\u003e\u003ccode\u003ec87d5bd\u003c/code\u003e\u003c/a\u003e fix: update eslint (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20531\"\u003e#20531\u003c/a\u003e) (renovate[bot])\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/d84100115c14691691058f00779c94e74fca946a\"\u003e\u003ccode\u003ed841001\u003c/code\u003e\u003c/a\u003e fix: update \u003ccode\u003eminimatch\u003c/code\u003e to \u003ccode\u003e10.2.1\u003c/code\u003e to address security vulnerabilities (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20519\"\u003e#20519\u003c/a\u003e) (루밀LuMir)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/04c21475b3004904948f02049f2888b401d82c78\"\u003e\u003ccode\u003e04c2147\u003c/code\u003e\u003c/a\u003e fix: update error message for unused suppressions (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20496\"\u003e#20496\u003c/a\u003e) (fnx)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/38b089c1726feac0e31a31d47941bd99e29ce003\"\u003e\u003ccode\u003e38b089c\u003c/code\u003e\u003c/a\u003e fix: update dependency \u003ccode\u003e@​eslint/config-array\u003c/code\u003e to ^0.23.1 (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20484\"\u003e#20484\u003c/a\u003e) (renovate[bot])\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eDocumentation\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/5b3dbce50a1404a9f118afe810cefeee79388a2a\"\u003e\u003ccode\u003e5b3dbce\u003c/code\u003e\u003c/a\u003e docs: add AI acknowledgement section to templates (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20431\"\u003e#20431\u003c/a\u003e) (루밀LuMir)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/6f23076037d5879f20fb3be2ef094293b1e8d38c\"\u003e\u003ccode\u003e6f23076\u003c/code\u003e\u003c/a\u003e docs: toggle nav in no-JS mode (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20476\"\u003e#20476\u003c/a\u003e) (Tanuj Kanti)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/b69cfb32a16c5d5e9986390d484fae1d21e406f9\"\u003e\u003ccode\u003eb69cfb3\u003c/code\u003e\u003c/a\u003e docs: Update README (GitHub Actions Bot)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eChores\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/e5c281ffd038a3a7a3e5364db0b9378e0ad83020\"\u003e\u003ccode\u003ee5c281f\u003c/code\u003e\u003c/a\u003e chore: updates for v9.39.3 release (Jenkins)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/8c3832adb77cd993b4a24891900d5eeaaf093cdc\"\u003e\u003ccode\u003e8c3832a\u003c/code\u003e\u003c/a\u003e chore: update \u003ccode\u003e@​typescript-eslint/parser\u003c/code\u003e to ^8.56.0 (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20514\"\u003e#20514\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/8330d238ae6adb68bb6a1c9381e38cfedd990d94\"\u003e\u003ccode\u003e8330d23\u003c/code\u003e\u003c/a\u003e test: add tests for config-api (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20493\"\u003e#20493\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/37d6e91e88fa6a2ca6d8726679096acff21ba6cc\"\u003e\u003ccode\u003e37d6e91\u003c/code\u003e\u003c/a\u003e chore: remove eslint v10 prereleases from eslint-config-eslint deps (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20494\"\u003e#20494\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/da7cd0e79197ad16e17052eef99df141de6dbfb1\"\u003e\u003ccode\u003eda7cd0e\u003c/code\u003e\u003c/a\u003e refactor: cleanup error message templates (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20479\"\u003e#20479\u003c/a\u003e) (Francesco Trotta)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/84fb885d49ac810e79a9491276b4828b53d913e5\"\u003e\u003ccode\u003e84fb885\u003c/code\u003e\u003c/a\u003e chore: package.json update for \u003ccode\u003e@​eslint/js\u003c/code\u003e release (Jenkins)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/1f667344b57c4c09b548d94bcfac1f91b6e5c63d\"\u003e\u003ccode\u003e1f66734\u003c/code\u003e\u003c/a\u003e chore: add \u003ccode\u003eeslint\u003c/code\u003e to \u003ccode\u003epeerDependencies\u003c/code\u003e of \u003ccode\u003e@eslint/js\u003c/code\u003e (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20467\"\u003e#20467\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev10.0.0\u003c/h2\u003e\n\u003ch2\u003eBreaking Changes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/f9e54f43a5e497cdfa179338b431093245cb787b\"\u003e\u003ccode\u003ef9e54f4\u003c/code\u003e\u003c/a\u003e feat!: estimate rule-tester failure location (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20420\"\u003e#20420\u003c/a\u003e) (ST-DDT)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/a176319d8ade1a7d9b2d7fb8f038f55a2662325f\"\u003e\u003ccode\u003ea176319\u003c/code\u003e\u003c/a\u003e feat!: replace \u003ccode\u003echalk\u003c/code\u003e with \u003ccode\u003estyleText\u003c/code\u003e and add \u003ccode\u003ecolor\u003c/code\u003e to \u003ccode\u003eResultsMeta\u003c/code\u003e (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20227\"\u003e#20227\u003c/a\u003e) (루밀LuMir)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/c7046e6c1e03c4ca0eee4888a1f2eba4c6454f84\"\u003e\u003ccode\u003ec7046e6\u003c/code\u003e\u003c/a\u003e feat!: enable JSX reference tracking (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20152\"\u003e#20152\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/fa31a608901684fbcd9906d1907e66561d16e5aa\"\u003e\u003ccode\u003efa31a60\u003c/code\u003e\u003c/a\u003e feat!: add \u003ccode\u003ename\u003c/code\u003e to configs (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20015\"\u003e#20015\u003c/a\u003e) (Kirk Waiblinger)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/3383e7ec9028166cafc8ea7986c2f7498d0049f0\"\u003e\u003ccode\u003e3383e7e\u003c/code\u003e\u003c/a\u003e fix!: remove deprecated \u003ccode\u003eSourceCode\u003c/code\u003e methods (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20137\"\u003e#20137\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/501abd0e916a35554c58b7c0365537f1fa3880ce\"\u003e\u003ccode\u003e501abd0\u003c/code\u003e\u003c/a\u003e feat!: update dependency minimatch to v10 (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20246\"\u003e#20246\u003c/a\u003e) (renovate[bot])\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/ca4d3b40085de47561f89656a2207d09946ed45e\"\u003e\u003ccode\u003eca4d3b4\u003c/code\u003e\u003c/a\u003e fix!: stricter rule tester assertions for valid test cases (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20125\"\u003e#20125\u003c/a\u003e) (唯然)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/96512a66c86402fb0538cdcb6cd30b9073f6bf3b\"\u003e\u003ccode\u003e96512a6\u003c/code\u003e\u003c/a\u003e fix!: Remove deprecated rule context methods (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20086\"\u003e#20086\u003c/a\u003e) (Nicholas C. Zakas)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/c69fdacdb2e886b9d965568a397aa8220db3fe90\"\u003e\u003ccode\u003ec69fdac\u003c/code\u003e\u003c/a\u003e feat!: remove eslintrc support (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20037\"\u003e#20037\u003c/a\u003e) (Francesco Trotta)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/208b5cc34a8374ff81412b5bec2e0800eebfbd04\"\u003e\u003ccode\u003e208b5cc\u003c/code\u003e\u003c/a\u003e feat!: Use \u003ccode\u003eScopeManager#addGlobals()\u003c/code\u003e (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20132\"\u003e#20132\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/a2ee188ea7a38a0c6155f3d39e2b00e1d0f36e14\"\u003e\u003ccode\u003ea2ee188\u003c/code\u003e\u003c/a\u003e fix!: add \u003ccode\u003euniqueItems: true\u003c/code\u003e in \u003ccode\u003eno-invalid-regexp\u003c/code\u003e option (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20155\"\u003e#20155\u003c/a\u003e) (Tanuj Kanti)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/a89059dbf2832d417dd493ee81483227ec44e4ab\"\u003e\u003ccode\u003ea89059d\u003c/code\u003e\u003c/a\u003e feat!: Program range span entire source text (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20133\"\u003e#20133\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/39a6424373d915fa9de0d7b0caba9a4dc3da9b53\"\u003e\u003ccode\u003e39a6424\u003c/code\u003e\u003c/a\u003e fix!: assert 'text' is a string across all RuleFixer methods (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20082\"\u003e#20082\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/f28fbf846244e043c92b355b224d121b06140b44\"\u003e\u003ccode\u003ef28fbf8\u003c/code\u003e\u003c/a\u003e fix!: Deprecate \u003ccode\u003e\u0026quot;always\u0026quot;\u003c/code\u003e and \u003ccode\u003e\u0026quot;as-needed\u0026quot;\u003c/code\u003e options of the \u003ccode\u003eradix\u003c/code\u003e rule (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20223\"\u003e#20223\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/aa3fb2b233e929b37220be940575f42c280e0b98\"\u003e\u003ccode\u003eaa3fb2b\u003c/code\u003e\u003c/a\u003e fix!: tighten \u003ccode\u003efunc-names\u003c/code\u003e schema (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20119\"\u003e#20119\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/f6c0ed0311dcfee853367d5068c765d066e6b756\"\u003e\u003ccode\u003ef6c0ed0\u003c/code\u003e\u003c/a\u003e feat!: report \u003ccode\u003eeslint-env\u003c/code\u003e comments as errors (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20128\"\u003e#20128\u003c/a\u003e) (Francesco Trotta)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/4bf739fb533e59f7f0a66b65f7bc80be0f37d8db\"\u003e\u003ccode\u003e4bf739f\u003c/code\u003e\u003c/a\u003e fix!: remove deprecated \u003ccode\u003eLintMessage#nodeType\u003c/code\u003e and \u003ccode\u003eTestCaseError#type\u003c/code\u003e (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20096\"\u003e#20096\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/523c076866400670fb2192a3f55dbf7ad3469247\"\u003e\u003ccode\u003e523c076\u003c/code\u003e\u003c/a\u003e feat!: drop support for jiti \u0026lt; 2.2.0 (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20016\"\u003e#20016\u003c/a\u003e) (michael faith)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/454a292c95f34dad232411ddac06408e6383bb64\"\u003e\u003ccode\u003e454a292\u003c/code\u003e\u003c/a\u003e feat!: update \u003ccode\u003eeslint:recommended\u003c/code\u003e configuration (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20210\"\u003e#20210\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/4f880ee02992e1bf0e96ebaba679985e2d1295f1\"\u003e\u003ccode\u003e4f880ee\u003c/code\u003e\u003c/a\u003e feat!: remove \u003ccode\u003ev10_*\u003c/code\u003e and inactive \u003ccode\u003eunstable_*\u003c/code\u003e flags (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20225\"\u003e#20225\u003c/a\u003e) (sethamus)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/f18115c363a4ac7671a4c7f30ee13d57ebba330f\"\u003e\u003ccode\u003ef18115c\u003c/code\u003e\u003c/a\u003e feat!: \u003ccode\u003eno-shadow-restricted-names\u003c/code\u003e report \u003ccode\u003eglobalThis\u003c/code\u003e by default (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20027\"\u003e#20027\u003c/a\u003e) (sethamus)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/c6358c31fbd3937b92d89be2618ffdf5a774604e\"\u003e\u003ccode\u003ec6358c3\u003c/code\u003e\u003c/a\u003e feat!: Require Node.js \u003ccode\u003e^20.19.0 || ^22.13.0 || \u0026gt;=24\u003c/code\u003e (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20160\"\u003e#20160\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eFeatures\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/bff9091927811497dbf066b0e3b85ecb37d43822\"\u003e\u003ccode\u003ebff9091\u003c/code\u003e\u003c/a\u003e feat: handle \u003ccode\u003eArray.fromAsync\u003c/code\u003e in \u003ccode\u003earray-callback-return\u003c/code\u003e (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20457\"\u003e#20457\u003c/a\u003e) (Francesco Trotta)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/290c594bb50c439fb71bc75521ee5360daa8c222\"\u003e\u003ccode\u003e290c594\u003c/code\u003e\u003c/a\u003e feat: add \u003ccode\u003eself\u003c/code\u003e to \u003ccode\u003eno-implied-eval\u003c/code\u003e rule (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20468\"\u003e#20468\u003c/a\u003e) (sethamus)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/43677de07ebd6e14bfac40a46ad749ba783c45f2\"\u003e\u003ccode\u003e43677de\u003c/code\u003e\u003c/a\u003e feat: fix handling of function and class expression names in \u003ccode\u003eno-shadow\u003c/code\u003e (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20432\"\u003e#20432\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/84fb885d49ac810e79a9491276b4828b53d913e5\"\u003e\u003ccode\u003e84fb885\u003c/code\u003e\u003c/a\u003e chore: package.json update for \u003ccode\u003e@​eslint/js\u003c/code\u003e release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/1f667344b57c4c09b548d94bcfac1f91b6e5c63d\"\u003e\u003ccode\u003e1f66734\u003c/code\u003e\u003c/a\u003e chore: add \u003ccode\u003eeslint\u003c/code\u003e to \u003ccode\u003epeerDependencies\u003c/code\u003e of \u003ccode\u003e@eslint/js\u003c/code\u003e (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20467\"\u003e#20467\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/f3fbc2f60cbe2c718364feb8c3fc0452c0df3c56\"\u003e\u003ccode\u003ef3fbc2f\u003c/code\u003e\u003c/a\u003e chore: set \u003ccode\u003e@eslint/js\u003c/code\u003e version to 10.0.0 to skip releasing it (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20466\"\u003e#20466\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/b4b3127f8542c599ce2dea804b6582ebc40c993d\"\u003e\u003ccode\u003eb4b3127\u003c/code\u003e\u003c/a\u003e chore: package.json update for \u003ccode\u003e@​eslint/js\u003c/code\u003e release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/0b14059491d830a49b3577931f4f68fbcfce6be5\"\u003e\u003ccode\u003e0b14059\u003c/code\u003e\u003c/a\u003e chore: package.json update for \u003ccode\u003e@​eslint/js\u003c/code\u003e release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/fa31a608901684fbcd9906d1907e66561d16e5aa\"\u003e\u003ccode\u003efa31a60\u003c/code\u003e\u003c/a\u003e feat!: add \u003ccode\u003ename\u003c/code\u003e to configs (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20015\"\u003e#20015\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/1e2cad5f6fa47ed6ed89d2a29798dda926d50990\"\u003e\u003ccode\u003e1e2cad5\u003c/code\u003e\u003c/a\u003e chore: package.json update for \u003ccode\u003e@​eslint/js\u003c/code\u003e release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/454a292c95f34dad232411ddac06408e6383bb64\"\u003e\u003ccode\u003e454a292\u003c/code\u003e\u003c/a\u003e feat!: update \u003ccode\u003eeslint:recommended\u003c/code\u003e configuration (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20210\"\u003e#20210\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/c6358c31fbd3937b92d89be2618ffdf5a774604e\"\u003e\u003ccode\u003ec6358c3\u003c/code\u003e\u003c/a\u003e feat!: Require Node.js \u003ccode\u003e^20.19.0 || ^22.13.0 || \u0026gt;=24\u003c/code\u003e (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20160\"\u003e#20160\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/eslint/eslint/commits/v10.0.1/packages/js\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@typescript-eslint/eslint-plugin` from 8.56.0 to 8.59.2\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases\"\u003e@​typescript-eslint/eslint-plugin's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev8.59.2\u003c/h2\u003e\n\u003ch2\u003e8.59.2 (2026-05-04)\u003c/h2\u003e\n\u003ch3\u003e🩹 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unsafe-type-assertion] handle crash on recursive template literal types (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12150\"\u003e#12150\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-deprecated] object destructuring values should be treated as declarations (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12292\"\u003e#12292\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003erule-tester:\u003c/strong\u003e add TypeScript as a peer dependency (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12288\"\u003e#12288\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e❤️ Thank You\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eDariusz Czajkowski\u003c/li\u003e\n\u003cli\u003eDima Barabash\u003c/li\u003e\n\u003cli\u003eKirk Waiblinger \u003ca href=\"https://github.com/kirkwaiblinger\"\u003e\u003ccode\u003e@​kirkwaiblinger\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.2\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003ev8.59.1\u003c/h2\u003e\n\u003ch2\u003e8.59.1 (2026-04-27)\u003c/h2\u003e\n\u003ch3\u003e🩹 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-type-assertion] fix crash \u0026quot;TypeError: checker.getTypeArguments is not a function\u0026quot; (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12246\"\u003e#12246\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-type-assertion] preserve index signatures in undefined unions (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12257\"\u003e#12257\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-type-assertion] preserve phantom type arguments in generic inference (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12269\"\u003e#12269\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-type-assertion] avoid false positive in logical assignment assertions (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12278\"\u003e#12278\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-type-arguments] handle instantiation expressions (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12220\"\u003e#12220\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-condition] treat void as nullish in no-unnecessary-condition (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12241\"\u003e#12241\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e❤️ Thank You\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eanasm266 \u003ca href=\"https://github.com/anasm266\"\u003e\u003ccode\u003e@​anasm266\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAnshika Jain \u003ca href=\"https://github.com/Anshikakalpana\"\u003e\u003ccode\u003e@​Anshikakalpana\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUlrich Stark\u003c/li\u003e\n\u003cli\u003eyugo innami \u003ca href=\"https://github.com/nami8824\"\u003e\u003ccode\u003e@​nami8824\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.1\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003ev8.59.0\u003c/h2\u003e\n\u003ch2\u003e8.59.0 (2026-04-20)\u003c/h2\u003e\n\u003ch3\u003e🚀 Features\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-type-assertion] report more cases based on assignability (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/11789\"\u003e#11789\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e❤️ Thank You\u003c/h3\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/CHANGELOG.md\"\u003e@​typescript-eslint/eslint-plugin's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e8.59.2 (2026-05-04)\u003c/h2\u003e\n\u003ch3\u003e🩹 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-deprecated] object destructuring values should be treated as declarations (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12292\"\u003e#12292\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unsafe-type-assertion] handle crash on recursive template literal types (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12150\"\u003e#12150\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e❤️ Thank You\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eDima Barabash\u003c/li\u003e\n\u003cli\u003eKirk Waiblinger \u003ca href=\"https://github.com/kirkwaiblinger\"\u003e\u003ccode\u003e@​kirkwaiblinger\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.2\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003e8.59.1 (2026-04-27)\u003c/h2\u003e\n\u003ch3\u003e🩹 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-condition] treat void as nullish in no-unnecessary-condition (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12241\"\u003e#12241\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-type-arguments] handle instantiation expressions (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12220\"\u003e#12220\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-type-assertion] avoid false positive in logical assignment assertions (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12278\"\u003e#12278\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-type-assertion] preserve phantom type arguments in generic inference (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12269\"\u003e#12269\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-type-assertion] preserve index signatures in undefined unions (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12257\"\u003e#12257\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-type-assertion] fix crash \u0026quot;TypeError: checker.getTypeArguments is not a function\u0026quot; (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12246\"\u003e#12246\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e❤️ Thank You\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eanasm266 \u003ca href=\"https://github.com/anasm266\"\u003e\u003ccode\u003e@​anasm266\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAnshika Jain \u003ca href=\"https://github.com/Anshikakalpana\"\u003e\u003ccode\u003e@​Anshikakalpana\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUlrich Stark\u003c/li\u003e\n\u003cli\u003eyugo innami \u003ca href=\"https://github.com/nami8824\"\u003e\u003ccode\u003e@​nami8824\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.1\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003e8.59.0 (2026-04-20)\u003c/h2\u003e\n\u003ch3\u003e🚀 Features\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-type-assertion] report more cases based on assignability (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/11789\"\u003e#11789\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e❤️ Thank You\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUlrich Stark\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.0\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/2ec35f1760aade4df4c631d76d78c7ed5e136333\"\u003e\u003ccode\u003e2ec35f1\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.59.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/ec3ef25390f7daf5a9ff33a60282bdbbb49ab0f3\"\u003e\u003ccode\u003eec3ef25\u003c/code\u003e\u003c/a\u003e test: make no-useless-empty-export tests fully static (\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin/issues/12260\"\u003e#12260\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/60d0a513870d833617374ff8ea256d86ca3cbbbb\"\u003e\u003ccode\u003e60d0a51\u003c/code\u003e\u003c/a\u003e chore(eslint-plugin): switch auto-generated test cases to hand-written in no-...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/5c53da230a70aba7d6f3d6474b5d249b430a95d0\"\u003e\u003ccode\u003e5c53da2\u003c/code\u003e\u003c/a\u003e fix(eslint-plugin): [no-deprecated] object destructuring values should be tre...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/80c28a1ada3f975a932a02587cefee632ccf6550\"\u003e\u003ccode\u003e80c28a1\u003c/code\u003e\u003c/a\u003e fix(eslint-plugin): [no-unsafe-type-assertion] handle crash on recursive temp...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/b7b2670123f76419630f88f3a807f85b7c535230\"\u003e\u003ccode\u003eb7b2670\u003c/code\u003e\u003c/a\u003e test: make no-this-alias tests fully static (\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin/issues/12258\"\u003e#12258\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/52457932e5507b5ca01e720a541f3f8d01e09b9d\"\u003e\u003ccode\u003e5245793\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.59.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/3cef12471659c42c9d4b179f4113a080b1fa2d66\"\u003e\u003ccode\u003e3cef124\u003c/code\u003e\u003c/a\u003e chore(eslint-plugin): switch auto-generated test cases to hand-written in dot...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/27c507b6e532abcd1efa51055f045b00f22055c3\"\u003e\u003ccode\u003e27c507b\u003c/code\u003e\u003c/a\u003e test: make sort-type-constituents tests fully static (\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin/issues/12262\"\u003e#12262\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/a03b31d422be35d8ddc979f48f9317e3f33dd1ce\"\u003e\u003ccode\u003ea03b31d\u003c/code\u003e\u003c/a\u003e chore(eslint-plugin): switch auto-generated test cases to hand-written in no-...\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commits/v8.59.2/packages/eslint-plugin\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@typescript-eslint/parser` from 8.56.0 to 8.59.2\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases\"\u003e@​typescript-eslint/parser's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev8.59.2\u003c/h2\u003e\n\u003ch2\u003e8.59.2 (2026-05-04)\u003c/h2\u003e\n\u003ch3\u003e🩹 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unsafe-type-assertion] handle crash on recursive template literal types (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12150\"\u003e#12150\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-deprecated] object destructuring values should be treated as declarations (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12292\"\u003e#12292\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003erule-tester:\u003c/strong\u003e add TypeScript as a peer dependency (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12288\"\u003e#12288\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e❤️ Thank You\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eDariusz Czajkowski\u003c/li\u003e\n\u003cli\u003eDima Barabash\u003c/li\u003e\n\u003cli\u003eKirk Waiblinger \u003ca href=\"https://github.com/kirkwaiblinger\"\u003e\u003ccode\u003e@​kirkwaiblinger\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.2\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003ev8.59.1\u003c/h2\u003e\n\u003ch2\u003e8.59.1 (2026-04-27)\u003c/h2\u003e\n\u003ch3\u003e🩹 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-type-assertion] fix crash \u0026quot;TypeError: checker.getTypeArguments is not a function\u0026quot; (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12246\"\u003e#12246\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-type-assertion] preserve index signatures in undefined unions (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12257\"\u003e#12257\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-type-assertion] preserve phantom type arguments in generic inference (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12269\"\u003e#12269\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-type-assertion] avoid false positive in logical assignment assertions (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12278\"\u003e#12278\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-type-arguments] handle instantiation expressions (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12220\"\u003e#12220\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-condition] treat void as nullish in no-unnecessary-condition (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12241\"\u003e#12241\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e❤️ Thank You\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eanasm266 \u003ca href=\"https://github.com/anasm266\"\u003e\u003ccode\u003e@​anasm266\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAnshika Jain \u003ca href=\"https://github.com/Anshikakalpana\"\u003e\u003ccode\u003e@​Anshikakalpana\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUlrich Stark\u003c/li\u003e\n\u003cli\u003eyugo innami \u003ca href=\"https://github.com/nami8824\"\u003e\u003ccode\u003e@​nami8824\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.1\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003ev8.59.0\u003c/h2\u003e\n\u003ch2\u003e8.59.0 (2026-04-20)\u003c/h2\u003e\n\u003ch3\u003e🚀 Features\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-type-assertion] report more cases based on assignability (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/11789\"\u003e#11789\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e❤️ Thank You\u003c/h3\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/parser/CHANGELOG.md\"\u003e@​typescript-eslint/parser's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e8.59.2 (2026-05-04)\u003c/h2\u003e\n\u003cp\u003eThis was a version bump only for parser to align it with other projects, there were no code changes.\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.2\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003e8.59.1 (2026-04-27)\u003c/h2\u003e\n\u003cp\u003eThis was a version bump only for parser to align it with other projects, there were no code changes.\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.1\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003e8.59.0 (2026-04-20)\u003c/h2\u003e\n\u003cp\u003eThis was a version bump only for parser to align it with other projects, there were no code changes.\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.0\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003e8.58.2 (2026-04-13)\u003c/h2\u003e\n\u003ch3\u003e🩹 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eremove tsbuildinfo cache file from published packages (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12187\"\u003e#12187\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e❤️ Thank You\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAbhijeet Singh \u003ca href=\"https://github.com/cseas\"\u003e\u003ccode\u003e@​cseas\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.58.2\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003e8.58.1 (2026-04-08)\u003c/h2\u003e\n\u003cp\u003eThis was a version bump only for parser to align it with other projects, there were no code changes.\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.58.1\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003e8.58.0 (2026-03-30)\u003c/h2\u003e\n\u003ch3\u003e🚀 Features\u003c/h3\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/2ec35f1760aade4df4c631d76d78c7ed5e136333\"\u003e\u003ccode\u003e2ec35f1\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.59.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/52457932e5507b5ca01e720a541f3f8d01e09b9d\"\u003e\u003ccode\u003e5245793\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.59.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/ea9ae4f8817873480e3501145059f63e39e8d8a1\"\u003e\u003ccode\u003eea9ae4f\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.59.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/90c2803a4c250e0343598d41e973f95e743bf4ce\"\u003e\u003ccode\u003e90c2803\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.58.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/be6b49a02d68db9bdc8985e7e9e1598700fda2fa\"\u003e\u003ccode\u003ebe6b49a\u003c/code\u003e\u003c/a\u003e fix: remove tsbuildinfo cache file from published packages (\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/parser/issues/12187\"\u003e#12187\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/5311ed312eadf4e238324f2726ae0b1f3f2206e6\"\u003e\u003ccode\u003e5311ed3\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.58.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/493341709fe7d1d6433332b7bd2724e3332c7cdf\"\u003e\u003ccode\u003e4933417\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.58.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/8cde2d06fb9bc591a4c93452509ddbd600c76a35\"\u003e\u003ccode\u003e8cde2d0\u003c/code\u003e\u003c/a\u003e feat: support TypeScript 6 (\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/parser/issues/12124\"\u003e#12124\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/be4d54d26e695cc93605ffcca67dd75848e95c6f\"\u003e\u003ccode\u003ebe4d54d\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.57.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/c7c38aa252d7bf6708a225aebedc57686ac33dcd\"\u003e\u003ccode\u003ec7c38aa\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.57.1\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commits/v8.59.2/packages/parser\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `eslint` from 9.39.2 to 10.3.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/eslint/eslint/releases\"\u003eeslint's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev10.3.0\u003c/h2\u003e\n\u003ch2\u003eFeatures\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/379571a975f2b24d88037b9de2e72ec61d004130\"\u003e\u003ccode\u003e379571a\u003c/code\u003e\u003c/a\u003e feat: add suggestions for no-unused-private-class-members (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20773\"\u003e#20773\u003c/a\u003e) (sethamus)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eBug Fixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/b6ae5cf07b9b51802367539cb24b245b61eaa37c\"\u003e\u003ccode\u003eb6ae5cf\u003c/code\u003e\u003c/a\u003e fix: handle unavailable require cache (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20812\"\u003e#20812\u003c/a\u003e) (Simon Podlipsky)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/6fb3685bcbe9a6f72fd7dfb9129686b6fb96b0bd\"\u003e\u003ccode\u003e6fb3685\u003c/code\u003e\u003c/a\u003e fix: rule suggestions cause continuation in class body (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20787\"\u003e#20787\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eDocumentation\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/32cc7ab4ec653ce89da92deb5c40a9f4fc707fe5\"\u003e\u003ccode\u003e32cc7ab\u003c/code\u003e\u003c/a\u003e docs: fix typos in docs and comments (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20809\"\u003e#20809\u003c/a\u003e) (Tanuj Kanti)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/7f479376a2fa463d823ab762db6bb37ce8d2ee8f\"\u003e\u003ccode\u003e7f47937\u003c/code\u003e\u003c/a\u003e docs: Update README (GitHub Actions Bot)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eChores\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/d32235ec19ceea211fa86452afa383ca05f5c2f9\"\u003e\u003ccode\u003ed32235e\u003c/code\u003e\u003c/a\u003e ci: use pnpm in \u003ccode\u003eeslint-flat-config-utils\u003c/code\u003e type integration test (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20826\"\u003e#20826\u003c/a\u003e) (Francesco Trotta)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/3ffb14ea517de750ed1181579ef844af342e4096\"\u003e\u003ccode\u003e3ffb14e\u003c/code\u003e\u003c/a\u003e chore: clean up typos in comments and JSDoc (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20821\"\u003e#20821\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/22eb58a21cbde2fbd53a1fae99453d408672de50\"\u003e\u003ccode\u003e22eb58a\u003c/code\u003e\u003c/a\u003e chore: add missing continue-on-error to ecosystem-tests.yml (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20818\"\u003e#20818\u003c/a\u003e) (Josh Goldberg ✨)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/88bf0024cb36caebf2880516d9a1f81aa75dafe2\"\u003e\u003ccode\u003e88bf002\u003c/code\u003e\u003c/a\u003e ci: bump pnpm/action-setup from 6.0.1 to 6.0.3 (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20815\"\u003e#20815\u003c/a\u003e) (dependabot[bot])\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/97c8c330beae9557ad24e19f94eebc8d08d1a722\"\u003e\u003ccode\u003e97c8c33\u003c/code\u003e\u003c/a\u003e chore: update ilshidur/action-discord action to v0.4.0 (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20811\"\u003e#20811\u003c/a\u003e) (renovate[bot])\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/2f58136dd47364a4cae7054a64f7bf1e79693813\"\u003e\u003ccode\u003e2f58136\u003c/code\u003e\u003c/a\u003e chore: pin peter-evans/create-pull-request action to 5f6978f (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20810\"\u003e#20810\u003c/a\u003e) (renovate[bot])\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/77add7f1bc91ed17bba3be3289928a9146c5f5a1\"\u003e\u003ccode\u003e77add7f\u003c/code\u003e\u003c/a\u003e chore: add initial ecosystem plugin tests workflow (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/19643\"\u003e#19643\u003c/a\u003e) (Josh Goldberg ✨)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/4023b55490fae55e464fe35530ef038cdf5d79a5\"\u003e\u003ccode\u003e4023b55\u003c/code\u003e\u003c/a\u003e test: Add unit tests for SuppressionsService.prune() (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20797\"\u003e#20797\u003c/a\u003e) (kuldeep kumar)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/54080dad4f77bb39a1a843933d4ff3a2b7c175e2\"\u003e\u003ccode\u003e54080da\u003c/code\u003e\u003c/a\u003e test: add unit tests for ForkContext (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20778\"\u003e#20778\u003c/a\u003e) (kuldeep kumar)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/f0e2bcc4bf19253aaebfbd7df87824b0ca4a151f\"\u003e\u003ccode\u003ef0e2bcc\u003c/code\u003e\u003c/a\u003e test: add unit tests for SuppressionsService.suppress() method (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20765\"\u003e#20765\u003c/a\u003e) (kuldeep kumar)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/a7f0b94743a99bcdf8d07cff15ffbfa6a6c5f927\"\u003e\u003ccode\u003ea7f0b94\u003c/code\u003e\u003c/a\u003e chore: update dependency prettier to v3.8.3 (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20782\"\u003e#20782\u003c/a\u003e) (renovate[bot])\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/7bf93d9e79f6dbf77242cbb9a9b8be834730fccd\"\u003e\u003ccode\u003e7bf93d9\u003c/code\u003e\u003c/a\u003e chore: update TypeScript to v6 (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20677\"\u003e#20677\u003c/a\u003e) (sethamus)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/b42dd72e76e7f90e7f0be9458288d93353052adc\"\u003e\u003ccode\u003eb42dd72\u003c/code\u003e\u003c/a\u003e ci: bump pnpm/action-setup from 6.0.0 to 6.0.1 (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20781\"\u003e#20781\u003c/a\u003e) (dependabot[bot])\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/2b252be80f362cca7be3326a6dbe958680fdfe9a\"\u003e\u003ccode\u003e2b252be\u003c/code\u003e\u003c/a\u003e test: add unit tests for IdGenerator (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20775\"\u003e#20775\u003c/a\u003e) (kuldeep kumar)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev10.2.1\u003c/h2\u003e\n\u003ch2\u003eBug Fixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/14be92b6d1fa0923b8923830f2208e5e2705b002\"\u003e\u003ccode\u003e14be92b\u003c/code\u003e\u003c/a\u003e fix: model generator yield resumption paths in code path analysis (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20665\"\u003e#20665\u003c/a\u003e) (sethamus)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/84a19d2c32255db6b9cfc08644a607aae6d5cb62\"\u003e\u003ccode\u003e84a19d2\u003c/code\u003e\u003c/a\u003e fix: no-async-promise-executor false positives for shadowed Promise (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20740\"\u003e#20740\u003c/a\u003e) (xbinaryx)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/af764af0ec38225755fbf8a6f207f0c77b595a8d\"\u003e\u003ccode\u003eaf764af\u003c/code\u003e\u003c/a\u003e fix: clarify language and processor validation errors (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20729\"\u003e#20729\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/e251b89a38280973e468a4a9386c138f4f55d10d\"\u003e\u003ccode\u003ee251b89\u003c/code\u003e\u003c/a\u003e fix: update eslint (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20715\"\u003e#20715\u003c/a\u003e) (renovate[bot])\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eDocumentation\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/ca92ca0fb4599e8de1e2fb914e695fe7397cbe63\"\u003e\u003ccode\u003eca92ca0\u003c/code\u003e\u003c/a\u003e docs: reuse markdown-it instance for markdown filter (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20768\"\u003e#20768\u003c/a\u003e) (Amaresh  S M)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/57d2ee213305cee0cb55ef08e0480b57396269a9\"\u003e\u003ccode\u003e57d2ee2\u003c/code\u003e\u003c/a\u003e docs:  Enable Eleventy incremental mode for watch (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20767\"\u003e#20767\u003c/a\u003e) (Amaresh  S M)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/c1621b915742276e5f4b25efe790ca62296330dc\"\u003e\u003ccode\u003ec1621b9\u003c/code\u003e\u003c/a\u003e docs: fix typos in code-path-analyzer.js (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20700\"\u003e#20700\u003c/a\u003e) (Ayush Shukla)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/1418d522d10bde1960f4942afb548bc7160ec49e\"\u003e\u003ccode\u003e1418d52\u003c/code\u003e\u003c/a\u003e docs: Update README (GitHub Actions Bot)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/39771e6e600f0b0617fdeafff6dd07e4211ffde6\"\u003e\u003ccode\u003e39771e6\u003c/code\u003e\u003c/a\u003e docs: Update README (GitHub Actions Bot)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/71e04693def2df57268f08f3072a2749df6bf438\"\u003e\u003ccode\u003e71e0469\u003c/code\u003e\u003c/a\u003e docs: fix incomplete JSDoc param description in no-shadow rule (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20728\"\u003e#20728\u003c/a\u003e) (kuldeep kumar)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/22119ceb93e28f62262fc1d98ff1b1442d6e2dbf\"\u003e\u003ccode\u003e22119ce\u003c/code\u003e\u003c/a\u003e docs: clarify scope of for-direction rule with dead code examples (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20723\"\u003e#20723\u003c/a\u003e) (Amaresh  S M)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/8f3fb77f122a5641d1833cad5d93f3f54fa3be0b\"\u003e\u003ccode\u003e8f3fb77\u003c/code\u003e\u003c/a\u003e docs: document \u003ccode\u003emeta.docs.dialects\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20718\"\u003e#20718\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eChores\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/7ddfea9c4f62add1588c5c0b0da568c299246383\"\u003e\u003ccode\u003e7ddfea9\u003c/code\u003e\u003c/a\u003e chore: update dependency prettier to v3.8.2 (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20770\"\u003e#20770\u003c/a\u003e) (renovate[bot])\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/fac40e1de2ba7646cc7cd2d3f93fbdd1f8819001\"\u003e\u003ccode\u003efac40e1\u003c/code\u003e\u003c/a\u003e ci: bump pnpm/action-setup from 5.0.0 to 6.0.0 (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20763\"\u003e#20763\u003c/a\u003e) (dependabot[bot])\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/7246f923332522d8b3d46b6ee646fce88535f3fb\"\u003e\u003ccode\u003e7246f92\u003c/code\u003e\u003c/a\u003e test: add tests for SuppressionsService.load() error handling (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20734\"\u003e#20734\u003c/a\u003e) (kuldeep kumar)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/4f34b1e592b0f63d766d9903998e8e36eb49d3aa\"\u003e\u003ccode\u003e4f34b1e\u003c/code\u003e\u003c/a\u003e chore: update pnpm/action-setup action to v5 (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20762\"\u003e#20762\u003c/a\u003e) (renovate[bot])\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/78892043a36da4aa7640b59c99344b00c181048a\"\u003e\u003ccode\u003e7889204\u003c/code\u003e\u003c/a\u003e 10.3.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/5b69b4fce4dc407c8e960eba638b5a3409c4f1fd\"\u003e\u003ccode\u003e5b69b4f\u003c/code\u003e\u003c/a\u003e Build: changelog update for 10.3.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/d32235ec19ceea211fa86452afa383ca05f5c2f9\"\u003e\u003ccode\u003ed32235e\u003c/code\u003e\u003c/a\u003e ci: use pnpm in \u003ccode\u003eeslint-flat-config-utils\u003c/code\u003e type integration test (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20826\"\u003e#20826\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/b6ae5cf07b9b51802367539cb24b245b61eaa37c\"\u003e\u003ccode\u003eb6ae5cf\u003c/code\u003e\u003c/a\u003e fix: handle unavailable require cache (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20812\"\u003e#20812\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/3ffb14ea517de750ed1181579ef844af342e4096\"\u003e\u003ccode\u003e3ffb14e\u003c/code\u003e\u003c/a\u003e chore: clean up typos in comments and JSDoc (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20821\"\u003e#20821\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/6fb3685bcbe9a6f72fd7dfb9129686b6fb96b0bd\"\u003e\u003ccode\u003e6fb3685\u003c/code\u003e\u003c/a\u003e fix: rule suggestions cause continuation in class body (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20787\"\u003e#20787\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/22eb58a21cbde2fbd53a1fae99453d408672de50\"\u003e\u003ccode\u003e22eb58a\u003c/code\u003e\u003c/a\u003e chore: add missing continue-on-error to ecosystem-tests.yml (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20818\"\u003e#20818\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/88bf0024cb36caebf2880516d9a1f81aa75dafe2\"\u003e\u003ccode\u003e88bf002\u003c/code\u003e\u003c/a\u003e ci: bump pnpm/action-setup from 6.0.1 to 6.0.3 (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20815\"\u003e#20815\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/379571a975f2b24d88037b9de2e72ec61d004130\"\u003e\u003ccode\u003e379571a\u003c/code\u003e\u003c/a\u003e feat: add suggestions for no-unused-private-class-members (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20773\"\u003e#20773\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/97c8c330beae9557ad24e19f94eebc8d08d1a722\"\u003e\u003ccode\u003e97c8c33\u003c/code\u003e\u003c/a\u003e chore: update ilshidur/action-discord action to v0.4.0 (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20811\"\u003e#20811\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/eslint/eslint/compare/v9.39.2...v10.3.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `eslint-plugin-react-hooks` from 7.0.1 to 7.1.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/facebook/react/releases\"\u003eeslint-plugin-react-hooks's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eeslint-plugin-react-hooks@7.1.1 (April 17, 2026)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eNote:\u003c/strong\u003e 7.1.0 accidentally removed the \u003ccode\u003ecomponent-hook-factories\u003c/code\u003e rule, causing errors for users who referenced it in their ESLint config. This is now fixed.\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdd deprecated no-op \u003ccode\u003ecomponent-hook-factories\u003c/code\u003e rule for backwards compatibility. (\u003ca href=\"https://github.com/mofeiZ\"\u003e\u003ccode\u003e@​mofeiZ\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/36307\"\u003e#36307\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eeslint-plugin-react-hooks@7.1.0 (April 16, 2026)\u003c/h2\u003e\n\u003cp\u003eThis release adds ESLint v10 support, improves performance by skipping compilation for non-React files, and includes compiler lint improvements including better \u003ccode\u003eset-state-in-effect\u003c/code\u003e detection, improved ref validation, and more helpful error reporting.\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdd ESLint v10 support. (\u003ca href=\"https://github.com/azat-io\"\u003e\u003ccode\u003e@​azat-io\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/35720\"\u003e#35720\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSkip compilation for non-React files to improve performance. (\u003ca href=\"https://github.com/josephsavona\"\u003e\u003ccode\u003e@​josephsavona\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/35589\"\u003e#35589\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix exhaustive deps bug with Flow type casting. (\u003ca href=\"https://github.com/jorge-cab\"\u003e\u003ccode\u003e@​jorge-cab\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/35691\"\u003e#35691\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix \u003ccode\u003euseEffectEvent\u003c/code\u003e checks in component syntax. (\u003ca href=\"https://github.com/jbrown215\"\u003e\u003ccode\u003e@​jbrown215\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/35041\"\u003e#35041\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eImproved \u003ccode\u003eset-state-in-effect\u003c/code\u003e validation with fewer false negatives. (\u003ca href=\"https://github.com/jorge-cab\"\u003e\u003ccode\u003e@​jorge-cab\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/35134\"\u003e#35134\u003c/a\u003e, \u003ca href=\"https://github.com/josephsavona\"\u003e\u003ccode\u003e@​josephsavona\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/35147\"\u003e#35147\u003c/a\u003e, \u003ca href=\"https://github.com/jackpope\"\u003e\u003ccode\u003e@​jackpope\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/35214\"\u003e#35214\u003c/a\u003e, \u003ca href=\"https://github.com/chesnokov-tony\"\u003e\u003ccode\u003e@​chesnokov-tony\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/35419\"\u003e#35419\u003c/a\u003e, \u003ca href=\"https://github.com/jsleitor\"\u003e\u003ccode\u003e@​jsleitor\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/36107\"\u003e#36107\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eImproved ref validation for non-mutating functions and event handler props. (\u003ca href=\"https://github.com/josephsavona\"\u003e\u003ccode\u003e@​josephsavona\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/35893\"\u003e#35893\u003c/a\u003e, \u003ca href=\"https://github.com/kolvian\"\u003e\u003ccode\u003e@​kolvian\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/35062\"\u003e#35062\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCompiler now reports all errors instead of stopping at the first. (\u003ca href=\"https://github.com/josephsavona\"\u003e\u003ccode\u003e@​josephsavona\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/35873\"\u003e#35873\u003c/a\u003e–\u003ca href=\"https://redirect.github.com/facebook/react/pull/35884\"\u003e#35884\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eImproved source locations and error display in compiler diagnostics. (\u003ca href=\"https://github.com/nathanmarks\"\u003e\u003ccode\u003e@​nathanmarks\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/35348\"\u003e#35348\u003c/a\u003e, \u003ca href=\"https://github.com/josephsavona\"\u003e\u003ccode\u003e@​josephsavona\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/34963\"\u003e#34963\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/facebook/react/blob/main/packages/eslint-plugin-react-hooks/CHANGELOG.md\"\u003eeslint-plugin-react-hooks's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e7.1.1\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eNote:\u003c/strong\u003e 7.1.0 accidentally removed the \u003ccode\u003ecomponent-hook-factories\u003c/code\u003e rule, causing errors for users who referenced it in their ESLint config. This is now fixed.\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdd deprecated no-op \u003ccode\u003ecomponent-hook-factories\u003c/code\u003e rule for backwards compatibility. (\u003ca href=\"https://github.com/mofeiZ\"\u003e\u003ccode\u003e@​mofeiZ\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/36307\"\u003e#36307\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e7.1.0\u003c/h2\u003e\n\u003cp\u003eThis release adds ESLint v10 support, improves performance by skipping compilation for non-React...\n\n_Description has been truncated_","html_url":"https://github.com/devahmadsaad/react-starter-kit/pull/6","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/devahmadsaad%2Freact-starter-kit/issues/6","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/6/packages"}},{"old_version":"5.1.3","new_version":"5.2.0","update_type":"minor","path":null,"pr_created_at":"2026-05-11T04:52:14.000Z","version_change":"5.1.3 → 5.2.0","issue":{"uuid":"4418154880","node_id":"PR_kwDORgtP787aHIEO","number":9,"state":"closed","title":"deps(deps): bump the all-dependencies group across 1 directory with 65 updates","user":"dependabot[bot]","labels":[],"assignees":[],"locked":false,"comments_count":2,"pull_request":true,"closed_at":"2026-05-18T05:23:49.000Z","author_association":null,"state_reason":null,"created_at":"2026-05-11T04:52:14.000Z","updated_at":"2026-05-18T05:23:51.000Z","time_to_close":606695,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"deps(deps): bump","group_name":"all-dependencies","update_count":65,"packages":[{"name":"@eslint-react/eslint-plugin","old_version":"2.13.0","new_version":"5.7.5","repository_url":"https://github.com/Rel1cx/eslint-react"},{"name":"@eslint/js","old_version":"9.39.2","new_version":"10.0.1","repository_url":"https://github.com/eslint/eslint"},{"name":"@typescript-eslint/eslint-plugin","old_version":"8.56.0","new_version":"8.59.2","repository_url":"https://github.com/typescript-eslint/typescript-eslint"},{"name":"@typescript-eslint/parser","old_version":"8.56.0","new_version":"8.59.2","repository_url":"https://github.com/typescript-eslint/typescript-eslint"},{"name":"eslint","old_version":"9.39.2","new_version":"10.3.0","repository_url":"https://github.com/eslint/eslint"},{"name":"eslint-plugin-react-hooks","old_version":"7.0.1","new_version":"7.1.1","repository_url":"https://github.com/facebook/react"},{"name":"globals","old_version":"17.3.0","new_version":"17.6.0","repository_url":"https://github.com/sindresorhus/globals"},{"name":"graphql","old_version":"16.12.0","new_version":"16.14.0","repository_url":"https://github.com/graphql/graphql-js"},{"name":"happy-dom","old_version":"20.6.2","new_version":"20.9.0","repository_url":"https://github.com/capricorn86/happy-dom"},{"name":"jiti","old_version":"2.6.1","new_version":"2.7.0","repository_url":"https://github.com/unjs/jiti"},{"name":"lint-staged","old_version":"16.2.7","new_version":"17.0.4","repository_url":"https://github.com/lint-staged/lint-staged"},{"name":"mermaid","old_version":"11.12.3","new_version":"11.14.0","repository_url":"https://github.com/mermaid-js/mermaid"},{"name":"prettier","old_version":"3.8.1","new_version":"3.8.3","repository_url":"https://github.com/prettier/prettier"},{"name":"react","old_version":"19.2.4","new_version":"19.2.6","repository_url":"https://github.com/facebook/react"},{"name":"typescript","old_version":"5.9.3","new_version":"6.0.3","repository_url":"https://github.com/microsoft/TypeScript"},{"name":"typescript-eslint","old_version":"8.56.0","new_version":"8.59.2","repository_url":"https://github.com/typescript-eslint/typescript-eslint"},{"name":"typescript-language-server","old_version":"5.1.3","new_version":"5.2.0","repository_url":"https://github.com/typescript-language-server/typescript-language-server"},{"name":"vite","old_version":"7.3.1","new_version":"8.0.11","repository_url":"https://github.com/vitejs/vite"},{"name":"vitepress","old_version":"2.0.0-alpha.16","new_version":"2.0.0-alpha.17","repository_url":"https://github.com/vuejs/vitepress"},{"name":"vitepress-plugin-llms","old_version":"1.11.0","new_version":"1.12.2","repository_url":"https://github.com/okineadev/vitepress-plugin-llms"},{"name":"vitest","old_version":"4.0.18","new_version":"4.1.5","repository_url":"https://github.com/vitest-dev/vitest"},{"name":"wrangler","old_version":"4.66.0","new_version":"4.90.0","repository_url":"https://github.com/cloudflare/workers-sdk"},{"name":"@ai-sdk/openai","old_version":"3.0.29","new_version":"3.0.63","repository_url":"https://github.com/vercel/ai"},{"name":"@better-auth/passkey","old_version":"1.4.18","new_version":"1.6.10","repository_url":"https://github.com/better-auth/better-auth"},{"name":"@better-auth/stripe","old_version":"1.4.18","new_version":"1.6.10","repository_url":"https://github.com/better-auth/better-auth"},{"name":"@trpc/server","old_version":"11.10.0","new_version":"11.17.0","repository_url":"https://github.com/trpc/trpc"},{"name":"ai","old_version":"6.0.91","new_version":"6.0.177","repository_url":"https://github.com/vercel/ai"},{"name":"better-auth","old_version":"1.4.18","new_version":"1.6.10","repository_url":"https://github.com/better-auth/better-auth"},{"name":"drizzle-orm","old_version":"0.45.1","new_version":"0.45.2","repository_url":"https://github.com/drizzle-team/drizzle-orm"},{"name":"postgres","old_version":"3.4.8","new_version":"3.4.9","repository_url":"https://github.com/porsager/postgres"},{"name":"resend","old_version":"6.9.2","new_version":"6.12.3","repository_url":"https://github.com/resend/resend-node"},{"name":"stripe","old_version":"20.3.1","new_version":"22.1.1","repository_url":"https://github.com/stripe/stripe-node"},{"name":"@cloudflare/workers-types","old_version":"4.20260218.0","new_version":"4.20260511.1","repository_url":"https://github.com/cloudflare/workerd"},{"name":"@types/bun","old_version":"1.3.9","new_version":"1.3.13","repository_url":"https://github.com/DefinitelyTyped/DefinitelyTyped"},{"name":"hono","old_version":"4.11.10","new_version":"4.12.18","repository_url":"https://github.com/honojs/hono"},{"name":"@tanstack/react-query","old_version":"5.90.21","new_version":"5.100.9","repository_url":"https://github.com/TanStack/query"},{"name":"@tanstack/react-router","old_version":"1.161.1","new_version":"1.169.2","repository_url":"https://github.com/TanStack/router"},{"name":"@trpc/client","old_version":"11.10.0","new_version":"11.17.0","repository_url":"https://github.com/trpc/trpc"},{"name":"@trpc/tanstack-react-query","old_version":"11.10.0","new_version":"11.17.0","repository_url":"https://github.com/trpc/trpc"},{"name":"jotai","old_version":"2.17.1","new_version":"2.20.0","repository_url":"https://github.com/pmndrs/jotai"},{"name":"lucide-react","old_version":"0.574.0","new_version":"1.14.0","repository_url":"https://github.com/lucide-icons/lucide"},{"name":"react-dom","old_version":"19.2.4","new_version":"19.2.6","repository_url":"https://github.com/facebook/react"},{"name":"tailwind-merge","old_version":"3.4.1","new_version":"3.6.0","repository_url":"https://github.com/dcastil/tailwind-merge"},{"name":"@tailwindcss/postcss","old_version":"4.2.0","new_version":"4.3.0","repository_url":"https://github.com/tailwindlabs/tailwindcss"},{"name":"@tanstack/react-query-devtools","old_version":"5.91.3","new_version":"5.100.9","repository_url":"https://github.com/TanStack/query"},{"name":"@tanstack/react-router-devtools","old_version":"1.161.1","new_version":"1.166.13","repository_url":"https://github.com/TanStack/router"},{"name":"@tanstack/router-plugin","old_version":"1.161.1","new_version":"1.167.35","repository_url":"https://github.com/TanStack/router"},{"name":"@types/node","old_version":"25.2.3","new_version":"25.6.2","repository_url":"https://github.com/DefinitelyTyped/DefinitelyTyped"},{"name":"@vitejs/plugin-react","old_version":"5.1.4","new_version":"6.0.1","repository_url":"https://github.com/vitejs/vite-plugin-react"},{"name":"@vitejs/plugin-react-swc","old_version":"4.2.3","new_version":"4.3.0","repository_url":"https://github.com/vitejs/vite-plugin-react"},{"name":"autoprefixer","old_version":"10.4.24","new_version":"10.5.0","repository_url":"https://github.com/postcss/autoprefixer"},{"name":"globby","old_version":"16.1.1","new_version":"16.2.0","repository_url":"https://github.com/sindresorhus/globby"},{"name":"@react-email/components","old_version":"1.0.8","new_version":"1.0.12","repository_url":"https://github.com/resend/react-email"},{"name":"@react-email/render","old_version":"2.0.4","new_version":"2.0.8","repository_url":"https://github.com/resend/react-email"},{"name":"@react-email/preview-server","old_version":"5.2.8","new_version":"5.2.10","repository_url":"https://github.com/resend/react-email"},{"name":"react-email","old_version":"5.2.8","new_version":"6.1.1","repository_url":"https://github.com/resend/react-email"},{"name":"@astrojs/react","old_version":"4.4.2","new_version":"5.0.4","repository_url":"https://github.com/withastro/astro"},{"name":"astro","old_version":"5.17.2","new_version":"6.3.1","repository_url":"https://github.com/withastro/astro"},{"name":"dotenv","old_version":"17.3.1","new_version":"17.4.2","repository_url":"https://github.com/motdotla/dotenv"},{"name":"drizzle-kit","old_version":"0.31.9","new_version":"0.31.10","repository_url":"https://github.com/drizzle-team/drizzle-orm"},{"name":"@modelcontextprotocol/sdk","old_version":"1.26.0","new_version":"1.29.0","repository_url":"https://github.com/modelcontextprotocol/typescript-sdk"},{"name":"got","old_version":"14.6.6","new_version":"15.0.5","repository_url":"https://github.com/sindresorhus/got"}],"path":null,"ecosystem":"npm"},"body":"Bumps the all-dependencies group with 62 updates in the / directory:\n\n| Package | From | To |\n| --- | --- | --- |\n| [@eslint-react/eslint-plugin](https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin) | `2.13.0` | `5.7.5` |\n| [@eslint/js](https://github.com/eslint/eslint/tree/HEAD/packages/js) | `9.39.2` | `10.0.1` |\n| [@typescript-eslint/eslint-plugin](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin) | `8.56.0` | `8.59.2` |\n| [@typescript-eslint/parser](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/parser) | `8.56.0` | `8.59.2` |\n| [eslint](https://github.com/eslint/eslint) | `9.39.2` | `10.3.0` |\n| [eslint-plugin-react-hooks](https://github.com/facebook/react/tree/HEAD/packages/eslint-plugin-react-hooks) | `7.0.1` | `7.1.1` |\n| [globals](https://github.com/sindresorhus/globals) | `17.3.0` | `17.6.0` |\n| [graphql](https://github.com/graphql/graphql-js) | `16.12.0` | `16.14.0` |\n| [happy-dom](https://github.com/capricorn86/happy-dom) | `20.6.2` | `20.9.0` |\n| [jiti](https://github.com/unjs/jiti) | `2.6.1` | `2.7.0` |\n| [lint-staged](https://github.com/lint-staged/lint-staged) | `16.2.7` | `17.0.4` |\n| [mermaid](https://github.com/mermaid-js/mermaid) | `11.12.3` | `11.14.0` |\n| [prettier](https://github.com/prettier/prettier) | `3.8.1` | `3.8.3` |\n| [react](https://github.com/facebook/react/tree/HEAD/packages/react) | `19.2.4` | `19.2.6` |\n| [typescript](https://github.com/microsoft/TypeScript) | `5.9.3` | `6.0.3` |\n| [typescript-eslint](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/typescript-eslint) | `8.56.0` | `8.59.2` |\n| [typescript-language-server](https://github.com/typescript-language-server/typescript-language-server) | `5.1.3` | `5.2.0` |\n| [vite](https://github.com/vitejs/vite/tree/HEAD/packages/vite) | `7.3.1` | `8.0.11` |\n| [vitepress](https://github.com/vuejs/vitepress) | `2.0.0-alpha.16` | `2.0.0-alpha.17` |\n| [vitepress-plugin-llms](https://github.com/okineadev/vitepress-plugin-llms) | `1.11.0` | `1.12.2` |\n| [vitest](https://github.com/vitest-dev/vitest/tree/HEAD/packages/vitest) | `4.0.18` | `4.1.5` |\n| [wrangler](https://github.com/cloudflare/workers-sdk/tree/HEAD/packages/wrangler) | `4.66.0` | `4.90.0` |\n| [@ai-sdk/openai](https://github.com/vercel/ai/tree/HEAD/packages/openai) | `3.0.29` | `3.0.63` |\n| [@better-auth/passkey](https://github.com/better-auth/better-auth/tree/HEAD/packages/passkey) | `1.4.18` | `1.6.10` |\n| [@better-auth/stripe](https://github.com/better-auth/better-auth/tree/HEAD/packages/stripe) | `1.4.18` | `1.6.10` |\n| [@trpc/server](https://github.com/trpc/trpc/tree/HEAD/packages/server) | `11.10.0` | `11.17.0` |\n| [ai](https://github.com/vercel/ai/tree/HEAD/packages/ai) | `6.0.91` | `6.0.177` |\n| [better-auth](https://github.com/better-auth/better-auth/tree/HEAD/packages/better-auth) | `1.4.18` | `1.6.10` |\n| [drizzle-orm](https://github.com/drizzle-team/drizzle-orm) | `0.45.1` | `0.45.2` |\n| [postgres](https://github.com/porsager/postgres) | `3.4.8` | `3.4.9` |\n| [resend](https://github.com/resend/resend-node) | `6.9.2` | `6.12.3` |\n| [stripe](https://github.com/stripe/stripe-node) | `20.3.1` | `22.1.1` |\n| [@cloudflare/workers-types](https://github.com/cloudflare/workerd) | `4.20260218.0` | `4.20260511.1` |\n| [@types/bun](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/bun) | `1.3.9` | `1.3.13` |\n| [hono](https://github.com/honojs/hono) | `4.11.10` | `4.12.18` |\n| [@tanstack/react-query](https://github.com/TanStack/query/tree/HEAD/packages/react-query) | `5.90.21` | `5.100.9` |\n| [@tanstack/react-router](https://github.com/TanStack/router/tree/HEAD/packages/react-router) | `1.161.1` | `1.169.2` |\n| [@trpc/client](https://github.com/trpc/trpc/tree/HEAD/packages/client) | `11.10.0` | `11.17.0` |\n| [@trpc/tanstack-react-query](https://github.com/trpc/trpc/tree/HEAD/packages/tanstack-react-query) | `11.10.0` | `11.17.0` |\n| [jotai](https://github.com/pmndrs/jotai) | `2.17.1` | `2.20.0` |\n| [lucide-react](https://github.com/lucide-icons/lucide/tree/HEAD/packages/lucide-react) | `0.574.0` | `1.14.0` |\n| [react-dom](https://github.com/facebook/react/tree/HEAD/packages/react-dom) | `19.2.4` | `19.2.6` |\n| [tailwind-merge](https://github.com/dcastil/tailwind-merge) | `3.4.1` | `3.6.0` |\n| [@tailwindcss/postcss](https://github.com/tailwindlabs/tailwindcss/tree/HEAD/packages/@tailwindcss-postcss) | `4.2.0` | `4.3.0` |\n| [@tanstack/react-query-devtools](https://github.com/TanStack/query/tree/HEAD/packages/react-query-devtools) | `5.91.3` | `5.100.9` |\n| [@tanstack/react-router-devtools](https://github.com/TanStack/router/tree/HEAD/packages/react-router-devtools) | `1.161.1` | `1.166.13` |\n| [@tanstack/router-plugin](https://github.com/TanStack/router/tree/HEAD/packages/router-plugin) | `1.161.1` | `1.167.35` |\n| [@types/node](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/node) | `25.2.3` | `25.6.2` |\n| [@vitejs/plugin-react](https://github.com/vitejs/vite-plugin-react/tree/HEAD/packages/plugin-react) | `5.1.4` | `6.0.1` |\n| [@vitejs/plugin-react-swc](https://github.com/vitejs/vite-plugin-react/tree/HEAD/packages/plugin-react-swc) | `4.2.3` | `4.3.0` |\n| [autoprefixer](https://github.com/postcss/autoprefixer) | `10.4.24` | `10.5.0` |\n| [globby](https://github.com/sindresorhus/globby) | `16.1.1` | `16.2.0` |\n| [@react-email/components](https://github.com/resend/react-email/tree/HEAD/packages/components) | `1.0.8` | `1.0.12` |\n| [@react-email/render](https://github.com/resend/react-email/tree/HEAD/packages/render) | `2.0.4` | `2.0.8` |\n| [@react-email/preview-server](https://github.com/resend/react-email/tree/HEAD/packages/preview-server) | `5.2.8` | `5.2.10` |\n| [react-email](https://github.com/resend/react-email/tree/HEAD/packages/react-email) | `5.2.8` | `6.1.1` |\n| [@astrojs/react](https://github.com/withastro/astro/tree/HEAD/packages/integrations/react) | `4.4.2` | `5.0.4` |\n| [astro](https://github.com/withastro/astro/tree/HEAD/packages/astro) | `5.17.2` | `6.3.1` |\n| [dotenv](https://github.com/motdotla/dotenv) | `17.3.1` | `17.4.2` |\n| [drizzle-kit](https://github.com/drizzle-team/drizzle-orm) | `0.31.9` | `0.31.10` |\n| [@modelcontextprotocol/sdk](https://github.com/modelcontextprotocol/typescript-sdk) | `1.26.0` | `1.29.0` |\n| [got](https://github.com/sindresorhus/got) | `14.6.6` | `15.0.5` |\n\n\nUpdates `@eslint-react/eslint-plugin` from 2.13.0 to 5.7.5\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/Rel1cx/eslint-react/releases\"\u003e@​eslint-react/eslint-plugin's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev5.7.5 (2026-05-08)\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003ch3\u003e🏗️ Internal\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eBumped \u003ccode\u003e@eslint/compat\u003c/code\u003e from 2.0.5 to 2.1.0.\u003c/li\u003e\n\u003cli\u003eBumped \u003ccode\u003e@types/node\u003c/code\u003e from 25.6.0 to 25.6.2.\u003c/li\u003e\n\u003cli\u003eBumped \u003ccode\u003enext\u003c/code\u003e from 16.2.5 to 16.2.6.\u003c/li\u003e\n\u003cli\u003eBumped \u003ccode\u003epublint\u003c/code\u003e from 0.3.19 to 0.3.20.\u003c/li\u003e\n\u003cli\u003eBumped \u003ccode\u003etsdown\u003c/code\u003e from 0.21.10 to 0.22.0.\u003c/li\u003e\n\u003cli\u003eBumped \u003ccode\u003epnpm\u003c/code\u003e from 10.33.4 to 11.0.8.\u003c/li\u003e\n\u003cli\u003eAdjusted website styles.\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/Rel1cx/eslint-react/compare/v5.7.4...v5.7.5\"\u003ehttps://github.com/Rel1cx/eslint-react/compare/v5.7.4...v5.7.5\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev5.7.4 (2026-05-07)\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003ch3\u003e🏗️ Internal\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eBumped \u003ccode\u003e@typescript-eslint\u003c/code\u003e packages from 8.59.1 to 8.59.2.\u003c/li\u003e\n\u003cli\u003eBumped \u003ccode\u003ereact\u003c/code\u003e and \u003ccode\u003ereact-dom\u003c/code\u003e from 19.2.5 to 19.2.6.\u003c/li\u003e\n\u003cli\u003eBumped \u003ccode\u003enext\u003c/code\u003e from 16.2.4 to 16.2.5.\u003c/li\u003e\n\u003cli\u003eBumped \u003ccode\u003enx\u003c/code\u003e from 22.7.1 to 23.0.0-canary.20260506-b594537.\u003c/li\u003e\n\u003cli\u003eBumped \u003ccode\u003efumadocs-core\u003c/code\u003e and \u003ccode\u003efumadocs-ui\u003c/code\u003e from 16.8.5 to 16.8.7.\u003c/li\u003e\n\u003cli\u003eBumped \u003ccode\u003epostcss\u003c/code\u003e from 8.5.13 to 8.5.14.\u003c/li\u003e\n\u003cli\u003eBumped \u003ccode\u003epublint\u003c/code\u003e from 0.3.18 to 0.3.19.\u003c/li\u003e\n\u003cli\u003eBumped \u003ccode\u003epnpm\u003c/code\u003e from 10.33.2 to 10.33.4.\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/Rel1cx/eslint-react/compare/v5.7.3...v5.7.4\"\u003ehttps://github.com/Rel1cx/eslint-react/compare/v5.7.3...v5.7.4\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev5.7.3 (2026-05-06)\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003ch3\u003e🐞 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003e\u003ccode\u003ereact-x/immutability\u003c/code\u003e\u003c/strong\u003e: Exempted ref mutations via a naming heuristic — any object whose identifier is \u003ccode\u003eref\u003c/code\u003e or ends with \u003ccode\u003eRef\u003c/code\u003e is treated as a mutable ref and skipped from immutability checks. This fixes false positives when mutating \u003ccode\u003eRefObject\u0026lt;T\u0026gt;\u003c/code\u003e values received as props (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1752\"\u003e#1752\u003c/a\u003e, \u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1751\"\u003e#1751\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003e\u003ccode\u003ereact-x/immutability\u003c/code\u003e\u003c/strong\u003e: Added \u003ccode\u003enoRefLikeStateName\u003c/code\u003e diagnostic to prevent state variables from being named \u003ccode\u003eref\u003c/code\u003e or ending with \u003ccode\u003eRef\u003c/code\u003e, which would otherwise bypass the ref exemption heuristic (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1752\"\u003e#1752\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e📝 Documentation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFixed the full rule name in \u003ccode\u003ereact-jsx/no-key-after-spread\u003c/code\u003e documentation (\u003ccode\u003ejsx/no-key-after-spread\u003c/code\u003e → \u003ccode\u003ejsx-no-key-after-spread\u003c/code\u003e) (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1750\"\u003e#1750\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/Rel1cx/eslint-react/compare/v5.7.2...v5.7.3\"\u003ehttps://github.com/Rel1cx/eslint-react/compare/v5.7.2...v5.7.3\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev5.7.2 (2026-05-04)\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003ch3\u003e🐞 Fixes\u003c/h3\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/Rel1cx/eslint-react/blob/main/CHANGELOG.md\"\u003e@​eslint-react/eslint-plugin's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev5.7.5 (2026-05-08)\u003c/h2\u003e\n\u003ch3\u003e🏗️ Internal\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eBumped \u003ccode\u003e@eslint/compat\u003c/code\u003e from 2.0.5 to 2.1.0.\u003c/li\u003e\n\u003cli\u003eBumped \u003ccode\u003e@types/node\u003c/code\u003e from 25.6.0 to 25.6.2.\u003c/li\u003e\n\u003cli\u003eBumped \u003ccode\u003enext\u003c/code\u003e from 16.2.5 to 16.2.6.\u003c/li\u003e\n\u003cli\u003eBumped \u003ccode\u003epublint\u003c/code\u003e from 0.3.19 to 0.3.20.\u003c/li\u003e\n\u003cli\u003eBumped \u003ccode\u003etsdown\u003c/code\u003e from 0.21.10 to 0.22.0.\u003c/li\u003e\n\u003cli\u003eBumped \u003ccode\u003epnpm\u003c/code\u003e from 10.33.4 to 11.0.8.\u003c/li\u003e\n\u003cli\u003eAdjusted website styles.\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/Rel1cx/eslint-react/compare/v5.7.4...v5.7.5\"\u003ehttps://github.com/Rel1cx/eslint-react/compare/v5.7.4...v5.7.5\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev5.7.4 (2026-05-07)\u003c/h2\u003e\n\u003ch3\u003e🏗️ Internal\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eBumped \u003ccode\u003e@typescript-eslint\u003c/code\u003e packages from 8.59.1 to 8.59.2.\u003c/li\u003e\n\u003cli\u003eBumped \u003ccode\u003ereact\u003c/code\u003e and \u003ccode\u003ereact-dom\u003c/code\u003e from 19.2.5 to 19.2.6.\u003c/li\u003e\n\u003cli\u003eBumped \u003ccode\u003enext\u003c/code\u003e from 16.2.4 to 16.2.5.\u003c/li\u003e\n\u003cli\u003eBumped \u003ccode\u003enx\u003c/code\u003e from 22.7.1 to 23.0.0-canary.20260506-b594537.\u003c/li\u003e\n\u003cli\u003eBumped \u003ccode\u003efumadocs-core\u003c/code\u003e and \u003ccode\u003efumadocs-ui\u003c/code\u003e from 16.8.5 to 16.8.7.\u003c/li\u003e\n\u003cli\u003eBumped \u003ccode\u003epostcss\u003c/code\u003e from 8.5.13 to 8.5.14.\u003c/li\u003e\n\u003cli\u003eBumped \u003ccode\u003epublint\u003c/code\u003e from 0.3.18 to 0.3.19.\u003c/li\u003e\n\u003cli\u003eBumped \u003ccode\u003epnpm\u003c/code\u003e from 10.33.2 to 10.33.4.\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/Rel1cx/eslint-react/compare/v5.7.3...v5.7.4\"\u003ehttps://github.com/Rel1cx/eslint-react/compare/v5.7.3...v5.7.4\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev5.7.3 (2026-05-06)\u003c/h2\u003e\n\u003ch3\u003e🐞 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003e\u003ccode\u003ereact-x/immutability\u003c/code\u003e\u003c/strong\u003e: Exempted ref mutations via a naming heuristic — any object whose identifier is \u003ccode\u003eref\u003c/code\u003e or ends with \u003ccode\u003eRef\u003c/code\u003e is treated as a mutable ref and skipped from immutability checks. This fixes false positives when mutating \u003ccode\u003eRefObject\u0026lt;T\u0026gt;\u003c/code\u003e values received as props (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1752\"\u003e#1752\u003c/a\u003e, \u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1751\"\u003e#1751\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003e\u003ccode\u003ereact-x/immutability\u003c/code\u003e\u003c/strong\u003e: Added \u003ccode\u003enoRefLikeStateName\u003c/code\u003e diagnostic to prevent state variables from being named \u003ccode\u003eref\u003c/code\u003e or ending with \u003ccode\u003eRef\u003c/code\u003e, which would otherwise bypass the ref exemption heuristic (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1752\"\u003e#1752\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e📝 Documentation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFixed the full rule name in \u003ccode\u003ereact-jsx/no-key-after-spread\u003c/code\u003e documentation (\u003ccode\u003ejsx/no-key-after-spread\u003c/code\u003e → \u003ccode\u003ejsx-no-key-after-spread\u003c/code\u003e) (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1750\"\u003e#1750\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/Rel1cx/eslint-react/compare/v5.7.2...v5.7.3\"\u003ehttps://github.com/Rel1cx/eslint-react/compare/v5.7.2...v5.7.3\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev5.7.2 (2026-05-04)\u003c/h2\u003e\n\u003ch3\u003e🐞 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003e\u003ccode\u003ereact-x/no-unused-state\u003c/code\u003e\u003c/strong\u003e: Removed the rule from the \u003ccode\u003erecommended\u003c/code\u003e preset for now (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1747\"\u003e#1747\u003c/a\u003e, \u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1748\"\u003e#1748\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e📝 Documentation\u003c/h3\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/de60fa2e3003c60e8c4f03970b5b84c7c9c84334\"\u003e\u003ccode\u003ede60fa2\u003c/code\u003e\u003c/a\u003e release: 5.7.5\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/2b075487d7952a8662c76305b64ce677776bab34\"\u003e\u003ccode\u003e2b07548\u003c/code\u003e\u003c/a\u003e release: 5.7.5-beta.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/9e186c17a28ff1d9e02e0a22f4f6b18193ceadca\"\u003e\u003ccode\u003e9e186c1\u003c/code\u003e\u003c/a\u003e release: 5.7.5-next.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/f7b012180b71b03a69e944b39fdc88811b16839b\"\u003e\u003ccode\u003ef7b0121\u003c/code\u003e\u003c/a\u003e chore: bump dependencies and adjust website styles (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1754\"\u003e#1754\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/99736d816cdcb56dd71be0ba8440c6b12017d862\"\u003e\u003ccode\u003e99736d8\u003c/code\u003e\u003c/a\u003e release: 5.7.4\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/bcd23f09215b120a119a53eacdb12e670ee897b9\"\u003e\u003ccode\u003ebcd23f0\u003c/code\u003e\u003c/a\u003e release: 5.7.4-beta.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/52071021ab5ae079fa69fc3996ac9109a76c230a\"\u003e\u003ccode\u003e5207102\u003c/code\u003e\u003c/a\u003e release: 5.7.4-next.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/b35fba3ea0e14827433efcc6017e8eaef0ca6486\"\u003e\u003ccode\u003eb35fba3\u003c/code\u003e\u003c/a\u003e Bump dependencies: eslint, react, next, and nx packages\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/a9098f22fc1a8c7b59e3b4916d0d5ff3cb2358be\"\u003e\u003ccode\u003ea9098f2\u003c/code\u003e\u003c/a\u003e release: 5.7.3\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/677db67c648814dbc500bdd40dea84ac9efa770c\"\u003e\u003ccode\u003e677db67\u003c/code\u003e\u003c/a\u003e release: 5.7.2\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/Rel1cx/eslint-react/commits/v5.7.5/plugins/eslint-plugin\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@eslint/js` from 9.39.2 to 10.0.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/eslint/eslint/releases\"\u003e@​eslint/js's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev10.0.1\u003c/h2\u003e\n\u003ch2\u003eBug Fixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/c87d5bded54c5cf491eb04c24c9d09bbbd42c23e\"\u003e\u003ccode\u003ec87d5bd\u003c/code\u003e\u003c/a\u003e fix: update eslint (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20531\"\u003e#20531\u003c/a\u003e) (renovate[bot])\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/d84100115c14691691058f00779c94e74fca946a\"\u003e\u003ccode\u003ed841001\u003c/code\u003e\u003c/a\u003e fix: update \u003ccode\u003eminimatch\u003c/code\u003e to \u003ccode\u003e10.2.1\u003c/code\u003e to address security vulnerabilities (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20519\"\u003e#20519\u003c/a\u003e) (루밀LuMir)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/04c21475b3004904948f02049f2888b401d82c78\"\u003e\u003ccode\u003e04c2147\u003c/code\u003e\u003c/a\u003e fix: update error message for unused suppressions (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20496\"\u003e#20496\u003c/a\u003e) (fnx)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/38b089c1726feac0e31a31d47941bd99e29ce003\"\u003e\u003ccode\u003e38b089c\u003c/code\u003e\u003c/a\u003e fix: update dependency \u003ccode\u003e@​eslint/config-array\u003c/code\u003e to ^0.23.1 (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20484\"\u003e#20484\u003c/a\u003e) (renovate[bot])\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eDocumentation\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/5b3dbce50a1404a9f118afe810cefeee79388a2a\"\u003e\u003ccode\u003e5b3dbce\u003c/code\u003e\u003c/a\u003e docs: add AI acknowledgement section to templates (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20431\"\u003e#20431\u003c/a\u003e) (루밀LuMir)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/6f23076037d5879f20fb3be2ef094293b1e8d38c\"\u003e\u003ccode\u003e6f23076\u003c/code\u003e\u003c/a\u003e docs: toggle nav in no-JS mode (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20476\"\u003e#20476\u003c/a\u003e) (Tanuj Kanti)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/b69cfb32a16c5d5e9986390d484fae1d21e406f9\"\u003e\u003ccode\u003eb69cfb3\u003c/code\u003e\u003c/a\u003e docs: Update README (GitHub Actions Bot)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eChores\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/e5c281ffd038a3a7a3e5364db0b9378e0ad83020\"\u003e\u003ccode\u003ee5c281f\u003c/code\u003e\u003c/a\u003e chore: updates for v9.39.3 release (Jenkins)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/8c3832adb77cd993b4a24891900d5eeaaf093cdc\"\u003e\u003ccode\u003e8c3832a\u003c/code\u003e\u003c/a\u003e chore: update \u003ccode\u003e@​typescript-eslint/parser\u003c/code\u003e to ^8.56.0 (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20514\"\u003e#20514\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/8330d238ae6adb68bb6a1c9381e38cfedd990d94\"\u003e\u003ccode\u003e8330d23\u003c/code\u003e\u003c/a\u003e test: add tests for config-api (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20493\"\u003e#20493\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/37d6e91e88fa6a2ca6d8726679096acff21ba6cc\"\u003e\u003ccode\u003e37d6e91\u003c/code\u003e\u003c/a\u003e chore: remove eslint v10 prereleases from eslint-config-eslint deps (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20494\"\u003e#20494\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/da7cd0e79197ad16e17052eef99df141de6dbfb1\"\u003e\u003ccode\u003eda7cd0e\u003c/code\u003e\u003c/a\u003e refactor: cleanup error message templates (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20479\"\u003e#20479\u003c/a\u003e) (Francesco Trotta)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/84fb885d49ac810e79a9491276b4828b53d913e5\"\u003e\u003ccode\u003e84fb885\u003c/code\u003e\u003c/a\u003e chore: package.json update for \u003ccode\u003e@​eslint/js\u003c/code\u003e release (Jenkins)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/1f667344b57c4c09b548d94bcfac1f91b6e5c63d\"\u003e\u003ccode\u003e1f66734\u003c/code\u003e\u003c/a\u003e chore: add \u003ccode\u003eeslint\u003c/code\u003e to \u003ccode\u003epeerDependencies\u003c/code\u003e of \u003ccode\u003e@eslint/js\u003c/code\u003e (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20467\"\u003e#20467\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev10.0.0\u003c/h2\u003e\n\u003ch2\u003eBreaking Changes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/f9e54f43a5e497cdfa179338b431093245cb787b\"\u003e\u003ccode\u003ef9e54f4\u003c/code\u003e\u003c/a\u003e feat!: estimate rule-tester failure location (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20420\"\u003e#20420\u003c/a\u003e) (ST-DDT)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/a176319d8ade1a7d9b2d7fb8f038f55a2662325f\"\u003e\u003ccode\u003ea176319\u003c/code\u003e\u003c/a\u003e feat!: replace \u003ccode\u003echalk\u003c/code\u003e with \u003ccode\u003estyleText\u003c/code\u003e and add \u003ccode\u003ecolor\u003c/code\u003e to \u003ccode\u003eResultsMeta\u003c/code\u003e (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20227\"\u003e#20227\u003c/a\u003e) (루밀LuMir)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/c7046e6c1e03c4ca0eee4888a1f2eba4c6454f84\"\u003e\u003ccode\u003ec7046e6\u003c/code\u003e\u003c/a\u003e feat!: enable JSX reference tracking (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20152\"\u003e#20152\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/fa31a608901684fbcd9906d1907e66561d16e5aa\"\u003e\u003ccode\u003efa31a60\u003c/code\u003e\u003c/a\u003e feat!: add \u003ccode\u003ename\u003c/code\u003e to configs (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20015\"\u003e#20015\u003c/a\u003e) (Kirk Waiblinger)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/3383e7ec9028166cafc8ea7986c2f7498d0049f0\"\u003e\u003ccode\u003e3383e7e\u003c/code\u003e\u003c/a\u003e fix!: remove deprecated \u003ccode\u003eSourceCode\u003c/code\u003e methods (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20137\"\u003e#20137\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/501abd0e916a35554c58b7c0365537f1fa3880ce\"\u003e\u003ccode\u003e501abd0\u003c/code\u003e\u003c/a\u003e feat!: update dependency minimatch to v10 (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20246\"\u003e#20246\u003c/a\u003e) (renovate[bot])\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/ca4d3b40085de47561f89656a2207d09946ed45e\"\u003e\u003ccode\u003eca4d3b4\u003c/code\u003e\u003c/a\u003e fix!: stricter rule tester assertions for valid test cases (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20125\"\u003e#20125\u003c/a\u003e) (唯然)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/96512a66c86402fb0538cdcb6cd30b9073f6bf3b\"\u003e\u003ccode\u003e96512a6\u003c/code\u003e\u003c/a\u003e fix!: Remove deprecated rule context methods (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20086\"\u003e#20086\u003c/a\u003e) (Nicholas C. Zakas)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/c69fdacdb2e886b9d965568a397aa8220db3fe90\"\u003e\u003ccode\u003ec69fdac\u003c/code\u003e\u003c/a\u003e feat!: remove eslintrc support (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20037\"\u003e#20037\u003c/a\u003e) (Francesco Trotta)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/208b5cc34a8374ff81412b5bec2e0800eebfbd04\"\u003e\u003ccode\u003e208b5cc\u003c/code\u003e\u003c/a\u003e feat!: Use \u003ccode\u003eScopeManager#addGlobals()\u003c/code\u003e (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20132\"\u003e#20132\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/a2ee188ea7a38a0c6155f3d39e2b00e1d0f36e14\"\u003e\u003ccode\u003ea2ee188\u003c/code\u003e\u003c/a\u003e fix!: add \u003ccode\u003euniqueItems: true\u003c/code\u003e in \u003ccode\u003eno-invalid-regexp\u003c/code\u003e option (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20155\"\u003e#20155\u003c/a\u003e) (Tanuj Kanti)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/a89059dbf2832d417dd493ee81483227ec44e4ab\"\u003e\u003ccode\u003ea89059d\u003c/code\u003e\u003c/a\u003e feat!: Program range span entire source text (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20133\"\u003e#20133\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/39a6424373d915fa9de0d7b0caba9a4dc3da9b53\"\u003e\u003ccode\u003e39a6424\u003c/code\u003e\u003c/a\u003e fix!: assert 'text' is a string across all RuleFixer methods (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20082\"\u003e#20082\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/f28fbf846244e043c92b355b224d121b06140b44\"\u003e\u003ccode\u003ef28fbf8\u003c/code\u003e\u003c/a\u003e fix!: Deprecate \u003ccode\u003e\u0026quot;always\u0026quot;\u003c/code\u003e and \u003ccode\u003e\u0026quot;as-needed\u0026quot;\u003c/code\u003e options of the \u003ccode\u003eradix\u003c/code\u003e rule (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20223\"\u003e#20223\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/aa3fb2b233e929b37220be940575f42c280e0b98\"\u003e\u003ccode\u003eaa3fb2b\u003c/code\u003e\u003c/a\u003e fix!: tighten \u003ccode\u003efunc-names\u003c/code\u003e schema (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20119\"\u003e#20119\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/f6c0ed0311dcfee853367d5068c765d066e6b756\"\u003e\u003ccode\u003ef6c0ed0\u003c/code\u003e\u003c/a\u003e feat!: report \u003ccode\u003eeslint-env\u003c/code\u003e comments as errors (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20128\"\u003e#20128\u003c/a\u003e) (Francesco Trotta)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/4bf739fb533e59f7f0a66b65f7bc80be0f37d8db\"\u003e\u003ccode\u003e4bf739f\u003c/code\u003e\u003c/a\u003e fix!: remove deprecated \u003ccode\u003eLintMessage#nodeType\u003c/code\u003e and \u003ccode\u003eTestCaseError#type\u003c/code\u003e (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20096\"\u003e#20096\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/523c076866400670fb2192a3f55dbf7ad3469247\"\u003e\u003ccode\u003e523c076\u003c/code\u003e\u003c/a\u003e feat!: drop support for jiti \u0026lt; 2.2.0 (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20016\"\u003e#20016\u003c/a\u003e) (michael faith)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/454a292c95f34dad232411ddac06408e6383bb64\"\u003e\u003ccode\u003e454a292\u003c/code\u003e\u003c/a\u003e feat!: update \u003ccode\u003eeslint:recommended\u003c/code\u003e configuration (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20210\"\u003e#20210\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/4f880ee02992e1bf0e96ebaba679985e2d1295f1\"\u003e\u003ccode\u003e4f880ee\u003c/code\u003e\u003c/a\u003e feat!: remove \u003ccode\u003ev10_*\u003c/code\u003e and inactive \u003ccode\u003eunstable_*\u003c/code\u003e flags (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20225\"\u003e#20225\u003c/a\u003e) (sethamus)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/f18115c363a4ac7671a4c7f30ee13d57ebba330f\"\u003e\u003ccode\u003ef18115c\u003c/code\u003e\u003c/a\u003e feat!: \u003ccode\u003eno-shadow-restricted-names\u003c/code\u003e report \u003ccode\u003eglobalThis\u003c/code\u003e by default (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20027\"\u003e#20027\u003c/a\u003e) (sethamus)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/c6358c31fbd3937b92d89be2618ffdf5a774604e\"\u003e\u003ccode\u003ec6358c3\u003c/code\u003e\u003c/a\u003e feat!: Require Node.js \u003ccode\u003e^20.19.0 || ^22.13.0 || \u0026gt;=24\u003c/code\u003e (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20160\"\u003e#20160\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eFeatures\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/bff9091927811497dbf066b0e3b85ecb37d43822\"\u003e\u003ccode\u003ebff9091\u003c/code\u003e\u003c/a\u003e feat: handle \u003ccode\u003eArray.fromAsync\u003c/code\u003e in \u003ccode\u003earray-callback-return\u003c/code\u003e (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20457\"\u003e#20457\u003c/a\u003e) (Francesco Trotta)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/290c594bb50c439fb71bc75521ee5360daa8c222\"\u003e\u003ccode\u003e290c594\u003c/code\u003e\u003c/a\u003e feat: add \u003ccode\u003eself\u003c/code\u003e to \u003ccode\u003eno-implied-eval\u003c/code\u003e rule (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20468\"\u003e#20468\u003c/a\u003e) (sethamus)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/43677de07ebd6e14bfac40a46ad749ba783c45f2\"\u003e\u003ccode\u003e43677de\u003c/code\u003e\u003c/a\u003e feat: fix handling of function and class expression names in \u003ccode\u003eno-shadow\u003c/code\u003e (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20432\"\u003e#20432\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/84fb885d49ac810e79a9491276b4828b53d913e5\"\u003e\u003ccode\u003e84fb885\u003c/code\u003e\u003c/a\u003e chore: package.json update for \u003ccode\u003e@​eslint/js\u003c/code\u003e release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/1f667344b57c4c09b548d94bcfac1f91b6e5c63d\"\u003e\u003ccode\u003e1f66734\u003c/code\u003e\u003c/a\u003e chore: add \u003ccode\u003eeslint\u003c/code\u003e to \u003ccode\u003epeerDependencies\u003c/code\u003e of \u003ccode\u003e@eslint/js\u003c/code\u003e (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20467\"\u003e#20467\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/f3fbc2f60cbe2c718364feb8c3fc0452c0df3c56\"\u003e\u003ccode\u003ef3fbc2f\u003c/code\u003e\u003c/a\u003e chore: set \u003ccode\u003e@eslint/js\u003c/code\u003e version to 10.0.0 to skip releasing it (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20466\"\u003e#20466\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/b4b3127f8542c599ce2dea804b6582ebc40c993d\"\u003e\u003ccode\u003eb4b3127\u003c/code\u003e\u003c/a\u003e chore: package.json update for \u003ccode\u003e@​eslint/js\u003c/code\u003e release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/0b14059491d830a49b3577931f4f68fbcfce6be5\"\u003e\u003ccode\u003e0b14059\u003c/code\u003e\u003c/a\u003e chore: package.json update for \u003ccode\u003e@​eslint/js\u003c/code\u003e release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/fa31a608901684fbcd9906d1907e66561d16e5aa\"\u003e\u003ccode\u003efa31a60\u003c/code\u003e\u003c/a\u003e feat!: add \u003ccode\u003ename\u003c/code\u003e to configs (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20015\"\u003e#20015\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/1e2cad5f6fa47ed6ed89d2a29798dda926d50990\"\u003e\u003ccode\u003e1e2cad5\u003c/code\u003e\u003c/a\u003e chore: package.json update for \u003ccode\u003e@​eslint/js\u003c/code\u003e release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/454a292c95f34dad232411ddac06408e6383bb64\"\u003e\u003ccode\u003e454a292\u003c/code\u003e\u003c/a\u003e feat!: update \u003ccode\u003eeslint:recommended\u003c/code\u003e configuration (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20210\"\u003e#20210\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/c6358c31fbd3937b92d89be2618ffdf5a774604e\"\u003e\u003ccode\u003ec6358c3\u003c/code\u003e\u003c/a\u003e feat!: Require Node.js \u003ccode\u003e^20.19.0 || ^22.13.0 || \u0026gt;=24\u003c/code\u003e (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20160\"\u003e#20160\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/eslint/eslint/commits/v10.0.1/packages/js\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@typescript-eslint/eslint-plugin` from 8.56.0 to 8.59.2\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases\"\u003e@​typescript-eslint/eslint-plugin's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev8.59.2\u003c/h2\u003e\n\u003ch2\u003e8.59.2 (2026-05-04)\u003c/h2\u003e\n\u003ch3\u003e🩹 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unsafe-type-assertion] handle crash on recursive template literal types (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12150\"\u003e#12150\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-deprecated] object destructuring values should be treated as declarations (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12292\"\u003e#12292\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003erule-tester:\u003c/strong\u003e add TypeScript as a peer dependency (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12288\"\u003e#12288\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e❤️ Thank You\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eDariusz Czajkowski\u003c/li\u003e\n\u003cli\u003eDima Barabash\u003c/li\u003e\n\u003cli\u003eKirk Waiblinger \u003ca href=\"https://github.com/kirkwaiblinger\"\u003e\u003ccode\u003e@​kirkwaiblinger\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.2\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003ev8.59.1\u003c/h2\u003e\n\u003ch2\u003e8.59.1 (2026-04-27)\u003c/h2\u003e\n\u003ch3\u003e🩹 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-type-assertion] fix crash \u0026quot;TypeError: checker.getTypeArguments is not a function\u0026quot; (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12246\"\u003e#12246\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-type-assertion] preserve index signatures in undefined unions (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12257\"\u003e#12257\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-type-assertion] preserve phantom type arguments in generic inference (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12269\"\u003e#12269\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-type-assertion] avoid false positive in logical assignment assertions (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12278\"\u003e#12278\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-type-arguments] handle instantiation expressions (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12220\"\u003e#12220\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-condition] treat void as nullish in no-unnecessary-condition (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12241\"\u003e#12241\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e❤️ Thank You\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eanasm266 \u003ca href=\"https://github.com/anasm266\"\u003e\u003ccode\u003e@​anasm266\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAnshika Jain \u003ca href=\"https://github.com/Anshikakalpana\"\u003e\u003ccode\u003e@​Anshikakalpana\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUlrich Stark\u003c/li\u003e\n\u003cli\u003eyugo innami \u003ca href=\"https://github.com/nami8824\"\u003e\u003ccode\u003e@​nami8824\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.1\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003ev8.59.0\u003c/h2\u003e\n\u003ch2\u003e8.59.0 (2026-04-20)\u003c/h2\u003e\n\u003ch3\u003e🚀 Features\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-type-assertion] report more cases based on assignability (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/11789\"\u003e#11789\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e❤️ Thank You\u003c/h3\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/CHANGELOG.md\"\u003e@​typescript-eslint/eslint-plugin's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e8.59.2 (2026-05-04)\u003c/h2\u003e\n\u003ch3\u003e🩹 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-deprecated] object destructuring values should be treated as declarations (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12292\"\u003e#12292\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unsafe-type-assertion] handle crash on recursive template literal types (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12150\"\u003e#12150\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e❤️ Thank You\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eDima Barabash\u003c/li\u003e\n\u003cli\u003eKirk Waiblinger \u003ca href=\"https://github.com/kirkwaiblinger\"\u003e\u003ccode\u003e@​kirkwaiblinger\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.2\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003e8.59.1 (2026-04-27)\u003c/h2\u003e\n\u003ch3\u003e🩹 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-condition] treat void as nullish in no-unnecessary-condition (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12241\"\u003e#12241\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-type-arguments] handle instantiation expressions (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12220\"\u003e#12220\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-type-assertion] avoid false positive in logical assignment assertions (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12278\"\u003e#12278\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-type-assertion] preserve phantom type arguments in generic inference (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12269\"\u003e#12269\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-type-assertion] preserve index signatures in undefined unions (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12257\"\u003e#12257\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-type-assertion] fix crash \u0026quot;TypeError: checker.getTypeArguments is not a function\u0026quot; (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12246\"\u003e#12246\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e❤️ Thank You\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eanasm266 \u003ca href=\"https://github.com/anasm266\"\u003e\u003ccode\u003e@​anasm266\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAnshika Jain \u003ca href=\"https://github.com/Anshikakalpana\"\u003e\u003ccode\u003e@​Anshikakalpana\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUlrich Stark\u003c/li\u003e\n\u003cli\u003eyugo innami \u003ca href=\"https://github.com/nami8824\"\u003e\u003ccode\u003e@​nami8824\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.1\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003e8.59.0 (2026-04-20)\u003c/h2\u003e\n\u003ch3\u003e🚀 Features\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-type-assertion] report more cases based on assignability (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/11789\"\u003e#11789\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e❤️ Thank You\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUlrich Stark\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.0\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/2ec35f1760aade4df4c631d76d78c7ed5e136333\"\u003e\u003ccode\u003e2ec35f1\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.59.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/ec3ef25390f7daf5a9ff33a60282bdbbb49ab0f3\"\u003e\u003ccode\u003eec3ef25\u003c/code\u003e\u003c/a\u003e test: make no-useless-empty-export tests fully static (\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin/issues/12260\"\u003e#12260\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/60d0a513870d833617374ff8ea256d86ca3cbbbb\"\u003e\u003ccode\u003e60d0a51\u003c/code\u003e\u003c/a\u003e chore(eslint-plugin): switch auto-generated test cases to hand-written in no-...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/5c53da230a70aba7d6f3d6474b5d249b430a95d0\"\u003e\u003ccode\u003e5c53da2\u003c/code\u003e\u003c/a\u003e fix(eslint-plugin): [no-deprecated] object destructuring values should be tre...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/80c28a1ada3f975a932a02587cefee632ccf6550\"\u003e\u003ccode\u003e80c28a1\u003c/code\u003e\u003c/a\u003e fix(eslint-plugin): [no-unsafe-type-assertion] handle crash on recursive temp...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/b7b2670123f76419630f88f3a807f85b7c535230\"\u003e\u003ccode\u003eb7b2670\u003c/code\u003e\u003c/a\u003e test: make no-this-alias tests fully static (\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin/issues/12258\"\u003e#12258\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/52457932e5507b5ca01e720a541f3f8d01e09b9d\"\u003e\u003ccode\u003e5245793\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.59.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/3cef12471659c42c9d4b179f4113a080b1fa2d66\"\u003e\u003ccode\u003e3cef124\u003c/code\u003e\u003c/a\u003e chore(eslint-plugin): switch auto-generated test cases to hand-written in dot...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/27c507b6e532abcd1efa51055f045b00f22055c3\"\u003e\u003ccode\u003e27c507b\u003c/code\u003e\u003c/a\u003e test: make sort-type-constituents tests fully static (\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin/issues/12262\"\u003e#12262\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/a03b31d422be35d8ddc979f48f9317e3f33dd1ce\"\u003e\u003ccode\u003ea03b31d\u003c/code\u003e\u003c/a\u003e chore(eslint-plugin): switch auto-generated test cases to hand-written in no-...\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commits/v8.59.2/packages/eslint-plugin\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@typescript-eslint/parser` from 8.56.0 to 8.59.2\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases\"\u003e@​typescript-eslint/parser's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev8.59.2\u003c/h2\u003e\n\u003ch2\u003e8.59.2 (2026-05-04)\u003c/h2\u003e\n\u003ch3\u003e🩹 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unsafe-type-assertion] handle crash on recursive template literal types (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12150\"\u003e#12150\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-deprecated] object destructuring values should be treated as declarations (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12292\"\u003e#12292\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003erule-tester:\u003c/strong\u003e add TypeScript as a peer dependency (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12288\"\u003e#12288\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e❤️ Thank You\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eDariusz Czajkowski\u003c/li\u003e\n\u003cli\u003eDima Barabash\u003c/li\u003e\n\u003cli\u003eKirk Waiblinger \u003ca href=\"https://github.com/kirkwaiblinger\"\u003e\u003ccode\u003e@​kirkwaiblinger\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.2\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003ev8.59.1\u003c/h2\u003e\n\u003ch2\u003e8.59.1 (2026-04-27)\u003c/h2\u003e\n\u003ch3\u003e🩹 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-type-assertion] fix crash \u0026quot;TypeError: checker.getTypeArguments is not a function\u0026quot; (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12246\"\u003e#12246\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-type-assertion] preserve index signatures in undefined unions (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12257\"\u003e#12257\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-type-assertion] preserve phantom type arguments in generic inference (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12269\"\u003e#12269\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-type-assertion] avoid false positive in logical assignment assertions (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12278\"\u003e#12278\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-type-arguments] handle instantiation expressions (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12220\"\u003e#12220\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-condition] treat void as nullish in no-unnecessary-condition (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12241\"\u003e#12241\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e❤️ Thank You\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eanasm266 \u003ca href=\"https://github.com/anasm266\"\u003e\u003ccode\u003e@​anasm266\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAnshika Jain \u003ca href=\"https://github.com/Anshikakalpana\"\u003e\u003ccode\u003e@​Anshikakalpana\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUlrich Stark\u003c/li\u003e\n\u003cli\u003eyugo innami \u003ca href=\"https://github.com/nami8824\"\u003e\u003ccode\u003e@​nami8824\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.1\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003ev8.59.0\u003c/h2\u003e\n\u003ch2\u003e8.59.0 (2026-04-20)\u003c/h2\u003e\n\u003ch3\u003e🚀 Features\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-type-assertion] report more cases based on assignability (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/11789\"\u003e#11789\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e❤️ Thank You\u003c/h3\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/parser/CHANGELOG.md\"\u003e@​typescript-eslint/parser's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e8.59.2 (2026-05-04)\u003c/h2\u003e\n\u003cp\u003eThis was a version bump only for parser to align it with other projects, there were no code changes.\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.2\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003e8.59.1 (2026-04-27)\u003c/h2\u003e\n\u003cp\u003eThis was a version bump only for parser to align it with other projects, there were no code changes.\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.1\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003e8.59.0 (2026-04-20)\u003c/h2\u003e\n\u003cp\u003eThis was a version bump only for parser to align it with other projects, there were no code changes.\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.0\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003e8.58.2 (2026-04-13)\u003c/h2\u003e\n\u003ch3\u003e🩹 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eremove tsbuildinfo cache file from published packages (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12187\"\u003e#12187\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e❤️ Thank You\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAbhijeet Singh \u003ca href=\"https://github.com/cseas\"\u003e\u003ccode\u003e@​cseas\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.58.2\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003e8.58.1 (2026-04-08)\u003c/h2\u003e\n\u003cp\u003eThis was a version bump only for parser to align it with other projects, there were no code changes.\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.58.1\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003e8.58.0 (2026-03-30)\u003c/h2\u003e\n\u003ch3\u003e🚀 Features\u003c/h3\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/2ec35f1760aade4df4c631d76d78c7ed5e136333\"\u003e\u003ccode\u003e2ec35f1\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.59.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/52457932e5507b5ca01e720a541f3f8d01e09b9d\"\u003e\u003ccode\u003e5245793\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.59.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/ea9ae4f8817873480e3501145059f63e39e8d8a1\"\u003e\u003ccode\u003eea9ae4f\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.59.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/90c2803a4c250e0343598d41e973f95e743bf4ce\"\u003e\u003ccode\u003e90c2803\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.58.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/be6b49a02d68db9bdc8985e7e9e1598700fda2fa\"\u003e\u003ccode\u003ebe6b49a\u003c/code\u003e\u003c/a\u003e fix: remove tsbuildinfo cache file from published packages (\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/parser/issues/12187\"\u003e#12187\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/5311ed312eadf4e238324f2726ae0b1f3f2206e6\"\u003e\u003ccode\u003e5311ed3\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.58.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/493341709fe7d1d6433332b7bd2724e3332c7cdf\"\u003e\u003ccode\u003e4933417\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.58.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/8cde2d06fb9bc591a4c93452509ddbd600c76a35\"\u003e\u003ccode\u003e8cde2d0\u003c/code\u003e\u003c/a\u003e feat: support TypeScript 6 (\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/parser/issues/12124\"\u003e#12124\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/be4d54d26e695cc93605ffcca67dd75848e95c6f\"\u003e\u003ccode\u003ebe4d54d\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.57.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/c7c38aa252d7bf6708a225aebedc57686ac33dcd\"\u003e\u003ccode\u003ec7c38aa\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.57.1\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commits/v8.59.2/packages/parser\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `eslint` from 9.39.2 to 10.3.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/eslint/eslint/releases\"\u003eeslint's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev10.3.0\u003c/h2\u003e\n\u003ch2\u003eFeatures\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/379571a975f2b24d88037b9de2e72ec61d004130\"\u003e\u003ccode\u003e379571a\u003c/code\u003e\u003c/a\u003e feat: add suggestions for no-unused-private-class-members (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20773\"\u003e#20773\u003c/a\u003e) (sethamus)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eBug Fixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/b6ae5cf07b9b51802367539cb24b245b61eaa37c\"\u003e\u003ccode\u003eb6ae5cf\u003c/code\u003e\u003c/a\u003e fix: handle unavailable require cache (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20812\"\u003e#20812\u003c/a\u003e) (Simon Podlipsky)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/6fb3685bcbe9a6f72fd7dfb9129686b6fb96b0bd\"\u003e\u003ccode\u003e6fb3685\u003c/code\u003e\u003c/a\u003e fix: rule suggestions cause continuation in class body (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20787\"\u003e#20787\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eDocumentation\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/32cc7ab4ec653ce89da92deb5c40a9f4fc707fe5\"\u003e\u003ccode\u003e32cc7ab\u003c/code\u003e\u003c/a\u003e docs: fix typos in docs and comments (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20809\"\u003e#20809\u003c/a\u003e) (Tanuj Kanti)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/7f479376a2fa463d823ab762db6bb37ce8d2ee8f\"\u003e\u003ccode\u003e7f47937\u003c/code\u003e\u003c/a\u003e docs: Update README (GitHub Actions Bot)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eChores\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/d32235ec19ceea211fa86452afa383ca05f5c2f9\"\u003e\u003ccode\u003ed32235e\u003c/code\u003e\u003c/a\u003e ci: use pnpm in \u003ccode\u003eeslint-flat-config-utils\u003c/code\u003e type integration test (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20826\"\u003e#20826\u003c/a\u003e) (Francesco Trotta)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/3ffb14ea517de750ed1181579ef844af342e4096\"\u003e\u003ccode\u003e3ffb14e\u003c/code\u003e\u003c/a\u003e chore: clean up typos in comments and JSDoc (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20821\"\u003e#20821\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/22eb58a21cbde2fbd53a1fae99453d408672de50\"\u003e\u003ccode\u003e22eb58a\u003c/code\u003e\u003c/a\u003e chore: add missing continue-on-error to ecosystem-tests.yml (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20818\"\u003e#20818\u003c/a\u003e) (Josh Goldberg ✨)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/88bf0024cb36caebf2880516d9a1f81aa75dafe2\"\u003e\u003ccode\u003e88bf002\u003c/code\u003e\u003c/a\u003e ci: bump pnpm/action-setup from 6.0.1 to 6.0.3 (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20815\"\u003e#20815\u003c/a\u003e) (dependabot[bot])\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/97c8c330beae9557ad24e19f94eebc8d08d1a722\"\u003e\u003ccode\u003e97c8c33\u003c/code\u003e\u003c/a\u003e chore: update ilshidur/action-discord action to v0.4.0 (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20811\"\u003e#20811\u003c/a\u003e) (renovate[bot])\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/2f58136dd47364a4cae7054a64f7bf1e79693813\"\u003e\u003ccode\u003e2f58136\u003c/code\u003e\u003c/a\u003e chore: pin peter-evans/create-pull-request action to 5f6978f (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20810\"\u003e#20810\u003c/a\u003e) (renovate[bot])\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/77add7f1bc91ed17bba3be3289928a9146c5f5a1\"\u003e\u003ccode\u003e77add7f\u003c/code\u003e\u003c/a\u003e chore: add initial ecosystem plugin tests workflow (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/19643\"\u003e#19643\u003c/a\u003e) (Josh Goldberg ✨)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/4023b55490fae55e464fe35530ef038cdf5d79a5\"\u003e\u003ccode\u003e4023b55\u003c/code\u003e\u003c/a\u003e test: Add unit tests for SuppressionsService.prune() (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20797\"\u003e#20797\u003c/a\u003e) (kuldeep kumar)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/54080dad4f77bb39a1a843933d4ff3a2b7c175e2\"\u003e\u003ccode\u003e54080da\u003c/code\u003e\u003c/a\u003e test: add unit tests for ForkContext (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20778\"\u003e#20778\u003c/a\u003e) (kuldeep kumar)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/f0e2bcc4bf19253aaebfbd7df87824b0ca4a151f\"\u003e\u003ccode\u003ef0e2bcc\u003c/code\u003e\u003c/a\u003e test: add unit tests for SuppressionsService.suppress() method (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20765\"\u003e#20765\u003c/a\u003e) (kuldeep kumar)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/a7f0b94743a99bcdf8d07cff15ffbfa6a6c5f927\"\u003e\u003ccode\u003ea7f0b94\u003c/code\u003e\u003c/a\u003e chore: update dependency prettier to v3.8.3 (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20782\"\u003e#20782\u003c/a\u003e) (renovate[bot])\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/7bf93d9e79f6dbf77242cbb9a9b8be834730fccd\"\u003e\u003ccode\u003e7bf93d9\u003c/code\u003e\u003c/a\u003e chore: update TypeScript to v6 (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20677\"\u003e#20677\u003c/a\u003e) (sethamus)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/b42dd72e76e7f90e7f0be9458288d93353052adc\"\u003e\u003ccode\u003eb42dd72\u003c/code\u003e\u003c/a\u003e ci: bump pnpm/action-setup from 6.0.0 to 6.0.1 (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20781\"\u003e#20781\u003c/a\u003e) (dependabot[bot])\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/2b252be80f362cca7be3326a6dbe958680fdfe9a\"\u003e\u003ccode\u003e2b252be\u003c/code\u003e\u003c/a\u003e test: add unit tests for IdGenerator (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20775\"\u003e#20775\u003c/a\u003e) (kuldeep kumar)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev10.2.1\u003c/h2\u003e\n\u003ch2\u003eBug Fixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/14be92b6d1fa0923b8923830f2208e5e2705b002\"\u003e\u003ccode\u003e14be92b\u003c/code\u003e\u003c/a\u003e fix: model generator yield resumption paths in code path analysis (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20665\"\u003e#20665\u003c/a\u003e) (sethamus)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/84a19d2c32255db6b9cfc08644a607aae6d5cb62\"\u003e\u003ccode\u003e84a19d2\u003c/code\u003e\u003c/a\u003e fix: no-async-promise-executor false positives for shadowed Promise (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20740\"\u003e#20740\u003c/a\u003e) (xbinaryx)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/af764af0ec38225755fbf8a6f207f0c77b595a8d\"\u003e\u003ccode\u003eaf764af\u003c/code\u003e\u003c/a\u003e fix: clarify language and processor validation errors (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20729\"\u003e#20729\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/e251b89a38280973e468a4a9386c138f4f55d10d\"\u003e\u003ccode\u003ee251b89\u003c/code\u003e\u003c/a\u003e fix: update eslint (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20715\"\u003e#20715\u003c/a\u003e) (renovate[bot])\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eDocumentation\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/ca92ca0fb4599e8de1e2fb914e695fe7397cbe63\"\u003e\u003ccode\u003eca92ca0\u003c/code\u003e\u003c/a\u003e docs: reuse markdown-it instance for markdown filter (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20768\"\u003e#20768\u003c/a\u003e) (Amaresh  S M)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/57d2ee213305cee0cb55ef08e0480b57396269a9\"\u003e\u003ccode\u003e57d2ee2\u003c/code\u003e\u003c/a\u003e docs:  Enable Eleventy incremental mode for watch (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20767\"\u003e#20767\u003c/a\u003e) (Amaresh  S M)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/c1621b915742276e5f4b25efe790ca62296330dc\"\u003e\u003ccode\u003ec1621b9\u003c/code\u003e\u003c/a\u003e docs: fix typos in code-path-analyzer.js (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20700\"\u003e#20700\u003c/a\u003e) (Ayush Shukla)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/1418d522d10bde1960f4942afb548bc7160ec49e\"\u003e\u003ccode\u003e1418d52\u003c/code\u003e\u003c/a\u003e docs: Update README (GitHub Actions Bot)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/39771e6e600f0b0617fdeafff6dd07e4211ffde6\"\u003e\u003ccode\u003e39771e6\u003c/code\u003e\u003c/a\u003e docs: Update README (GitHub Actions Bot)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/71e04693def2df57268f08f3072a2749df6bf438\"\u003e\u003ccode\u003e71e0469\u003c/code\u003e\u003c/a\u003e docs: fix incomplete JSDoc param description in no-shadow rule (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20728\"\u003e#20728\u003c/a\u003e) (kuldeep kumar)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/22119ceb93e28f62262fc1d98ff1b1442d6e2dbf\"\u003e\u003ccode\u003e22119ce\u003c/code\u003e\u003c/a\u003e docs: clarify scope of for-direction rule with dead code examples (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20723\"\u003e#20723\u003c/a\u003e) (Amaresh  S M)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/8f3fb77f122a5641d1833cad5d93f3f54fa3be0b\"\u003e\u003ccode\u003e8f3fb77\u003c/code\u003e\u003c/a\u003e docs: document \u003ccode\u003emeta.docs.dialects\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20718\"\u003e#20718\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eChores\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/7ddfea9c4f62add1588c5c0b0da568c299246383\"\u003e\u003ccode\u003e7ddfea9\u003c/code\u003e\u003c/a\u003e chore: update dependency prettier to v3.8.2 (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20770\"\u003e#20770\u003c/a\u003e) (renovate[bot])\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/fac40e1de2ba7646cc7cd2d3f93fbdd1f8819001\"\u003e\u003ccode\u003efac40e1\u003c/code\u003e\u003c/a\u003e ci: bump pnpm/action-setup from 5.0.0 to 6.0.0 (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20763\"\u003e#20763\u003c/a\u003e) (dependabot[bot])\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/7246f923332522d8b3d46b6ee646fce88535f3fb\"\u003e\u003ccode\u003e7246f92\u003c/code\u003e\u003c/a\u003e test: add tests for SuppressionsService.load() error handling (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20734\"\u003e#20734\u003c/a\u003e) (kuldeep kumar)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/4f34b1e592b0f63d766d9903998e8e36eb49d3aa\"\u003e\u003ccode\u003e4f34b1e\u003c/code\u003e\u003c/a\u003e chore: update pnpm/action-setup action to v5 (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20762\"\u003e#20762\u003c/a\u003e) (renovate[bot])\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/78892043a36da4aa7640b59c99344b00c181048a\"\u003e\u003ccode\u003e7889204\u003c/code\u003e\u003c/a\u003e 10.3.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/5b69b4fce4dc407c8e960eba638b5a3409c4f1fd\"\u003e\u003ccode\u003e5b69b4f\u003c/code\u003e\u003c/a\u003e Build: changelog update for 10.3.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/d32235ec19ceea211fa86452afa383ca05f5c2f9\"\u003e\u003ccode\u003ed32235e\u003c/code\u003e\u003c/a\u003e ci: use pnpm in \u003ccode\u003eeslint-flat-config-utils\u003c/code\u003e type integration test (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20826\"\u003e#20826\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/b6ae5cf07b9b51802367539cb24b245b61eaa37c\"\u003e\u003ccode\u003eb6ae5cf\u003c/code\u003e\u003c/a\u003e fix: handle unavailable require cache (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20812\"\u003e#20812\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/3ffb14ea517de750ed1181579ef844af342e4096\"\u003e\u003ccode\u003e3ffb14e\u003c/code\u003e\u003c/a\u003e chore: clean up typos in comments and JSDoc (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20821\"\u003e#20821\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/6fb3685bcbe9a6f72fd7dfb9129686b6fb96b0bd\"\u003e\u003ccode\u003e6fb3685\u003c/code\u003e\u003c/a\u003e fix: rule suggestions cause continuation in class body (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20787\"\u003e#20787\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/22eb58a21cbde2fbd53a1fae99453d408672de50\"\u003e\u003ccode\u003e22eb58a\u003c/code\u003e\u003c/a\u003e chore: add missing continue-on-error to ecosystem-tests.yml (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20818\"\u003e#20818\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/88bf0024cb36caebf2880516d9a1f81aa75dafe2\"\u003e\u003ccode\u003e88bf002\u003c/code\u003e\u003c/a\u003e ci: bump pnpm/action-setup from 6.0.1 to 6.0.3 (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20815\"\u003e#20815\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/379571a975f2b24d88037b9de2e72ec61d004130\"\u003e\u003ccode\u003e379571a\u003c/code\u003e\u003c/a\u003e feat: add suggestions for no-unused-private-class-members (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20773\"\u003e#20773\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/97c8c330beae9557ad24e19f94eebc8d08d1a722\"\u003e\u003ccode\u003e97c8c33\u003c/code\u003e\u003c/a\u003e chore: update ilshidur/action-discord action to v0.4.0 (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20811\"\u003e#20811\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/eslint/eslint/compare/v9.39.2...v10.3.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `eslint-plugin-react-hooks` from 7.0.1 to 7.1.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/facebook/react/releases\"\u003eeslint-plugin-react-hooks's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eeslint-plugin-react-hooks@7.1.1 (April 17, 2026)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eNote:\u003c/strong\u003e 7.1.0 accidentally removed the \u003ccode\u003ecomponent-hook-factories\u003c/code\u003e rule, causing errors for users who referenced it in their ESLint config. This is now fixed.\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdd deprecated no-op \u003ccode\u003ecomponent-hook-factories\u003c/code\u003e rule for backwards compatibility. (\u003ca href=\"https://github.com/mofeiZ\"\u003e\u003ccode\u003e@​mofeiZ\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/36307\"\u003e#36307\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eeslint-plugin-react-hooks@7.1.0 (April 16, 2026)\u003c/h2\u003e\n\u003cp\u003eThis release adds ESLint v10 support, improves performance by skipping compilation for non-React files, and includes compiler lint improvements including better \u003ccode\u003eset-state-in-effect\u003c/code\u003e detection, improved ref validation, and more helpful error reporting.\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdd ESLint v10 support. (\u003ca href=\"https://github.com/azat-io\"\u003e\u003ccode\u003e@​azat-io\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/35720\"\u003e#35720\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSkip compilation for non-React files to improve performance. (\u003ca href=\"https://github.com/josephsavona\"\u003e\u003ccode\u003e@​josephsavona\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/35589\"\u003e#35589\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix exhaustive deps bug with Flow type casting. (\u003ca href=\"https://github.com/jorge-cab\"\u003e\u003ccode\u003e@​jorge-cab\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/35691\"\u003e#35691\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix \u003ccode\u003euseEffectEvent\u003c/code\u003e checks in component syntax. (\u003ca href=\"https://github.com/jbrown215\"\u003e\u003ccode\u003e@​jbrown215\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/35041\"\u003e#35041\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eImproved \u003ccode\u003eset-state-in-effect\u003c/code\u003e validation with fewer false negatives. (\u003ca href=\"https://github.com/jorge-cab\"\u003e\u003ccode\u003e@​jorge-cab\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/35134\"\u003e#35134\u003c/a\u003e, \u003ca href=\"https://github.com/josephsavona\"\u003e\u003ccode\u003e@​josephsavona\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/35147\"\u003e#35147\u003c/a\u003e, \u003ca href=\"https://github.com/jackpope\"\u003e\u003ccode\u003e@​jackpope\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/35214\"\u003e#35214\u003c/a\u003e, \u003ca href=\"https://github.com/chesnokov-tony\"\u003e\u003ccode\u003e@​chesnokov-tony\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/35419\"\u003e#35419\u003c/a\u003e, \u003ca href=\"https://github.com/jsleitor\"\u003e\u003ccode\u003e@​jsleitor\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/36107\"\u003e#36107\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eImproved ref validation for non-mutating functions and event handler props. (\u003ca href=\"https://github.com/josephsavona\"\u003e\u003ccode\u003e@​josephsavona\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/35893\"\u003e#35893\u003c/a\u003e, \u003ca href=\"https://github.com/kolvian\"\u003e\u003ccode\u003e@​kolvian\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/35062\"\u003e#35062\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCompiler now reports all errors instead of stopping at the first. (\u003ca href=\"https://github.com/josephsavona\"\u003e\u003ccode\u003e@​josephsavona\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/35873\"\u003e#35873\u003c/a\u003e–\u003ca href=\"https://redirect.github.com/facebook/react/pull/35884\"\u003e#35884\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eImproved source locations and error display in compiler diagnostics. (\u003ca href=\"https://github.com/nathanmarks\"\u003e\u003ccode\u003e@​nathanmarks\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/35348\"\u003e#35348\u003c/a\u003e, \u003ca href=\"https://github.com/josephsavona\"\u003e\u003ccode\u003e@​josephsavona\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/34963\"\u003e#34963\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/facebook/react/blob/main/packages/eslint-plugin-react-hooks/CHANGELOG.md\"\u003eeslint-plugin-react-hooks's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e7.1.1\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eNote:\u003c/strong\u003e 7.1.0 accidentally removed the \u003ccode\u003ecomponent-hook-factories\u003c/code\u003e rule, causing errors for users who referenced it in their ESLint config. This is now fixed.\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdd deprecated no-op \u003ccode\u003ecomponent-hook-factories\u003c/code\u003e rule for backwards compatibility. (\u003ca href=\"https://github.com/mofeiZ\"\u003e\u003ccode\u003e@​mofeiZ\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/36307\"\u003e#36307\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e7.1.0\u003c/h2\u003e\n\u003cp\u003eThis release adds ESLint v10 support, improves performance by skipping compilation for non-React...\n\n_Description has been truncated_","html_url":"https://github.com/husseyg9285/hussy-app/pull/9","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/husseyg9285%2Fhussy-app/issues/9","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/9/packages"}},{"old_version":"5.1.3","new_version":"5.2.0","update_type":"minor","path":null,"pr_created_at":"2026-05-11T04:52:06.000Z","version_change":"5.1.3 → 5.2.0","issue":{"uuid":"4418154402","node_id":"PR_kwDORy1EH87aHH9v","number":5,"state":"open","title":"deps(deps): bump the all-dependencies group across 1 directory with 54 updates","user":"dependabot[bot]","labels":[],"assignees":[],"locked":false,"comments_count":1,"pull_request":true,"closed_at":null,"author_association":null,"state_reason":null,"created_at":"2026-05-11T04:52:06.000Z","updated_at":"2026-05-11T04:52:06.000Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"deps(deps): bump","group_name":"all-dependencies","update_count":54,"packages":[{"name":"@biomejs/biome","old_version":"2.4.9","new_version":"2.4.15","repository_url":"https://github.com/biomejs/biome"},{"name":"graphql","old_version":"16.12.0","new_version":"16.14.0","repository_url":"https://github.com/graphql/graphql-js"},{"name":"happy-dom","old_version":"20.6.2","new_version":"20.9.0","repository_url":"https://github.com/capricorn86/happy-dom"},{"name":"jiti","old_version":"2.6.1","new_version":"2.7.0","repository_url":"https://github.com/unjs/jiti"},{"name":"lint-staged","old_version":"16.2.7","new_version":"17.0.4","repository_url":"https://github.com/lint-staged/lint-staged"},{"name":"mermaid","old_version":"11.12.3","new_version":"11.14.0","repository_url":"https://github.com/mermaid-js/mermaid"},{"name":"react","old_version":"19.2.4","new_version":"19.2.6","repository_url":"https://github.com/facebook/react"},{"name":"typescript","old_version":"5.9.3","new_version":"6.0.3","repository_url":"https://github.com/microsoft/TypeScript"},{"name":"typescript-language-server","old_version":"5.1.3","new_version":"5.2.0","repository_url":"https://github.com/typescript-language-server/typescript-language-server"},{"name":"vite","old_version":"7.3.1","new_version":"8.0.11","repository_url":"https://github.com/vitejs/vite"},{"name":"vitepress","old_version":"2.0.0-alpha.16","new_version":"2.0.0-alpha.17","repository_url":"https://github.com/vuejs/vitepress"},{"name":"vitepress-plugin-llms","old_version":"1.11.0","new_version":"1.12.2","repository_url":"https://github.com/okineadev/vitepress-plugin-llms"},{"name":"vitest","old_version":"4.0.18","new_version":"4.1.5","repository_url":"https://github.com/vitest-dev/vitest"},{"name":"wrangler","old_version":"4.66.0","new_version":"4.90.0","repository_url":"https://github.com/cloudflare/workers-sdk"},{"name":"@ai-sdk/openai","old_version":"3.0.29","new_version":"3.0.63","repository_url":"https://github.com/vercel/ai"},{"name":"@better-auth/passkey","old_version":"1.4.18","new_version":"1.6.10","repository_url":"https://github.com/better-auth/better-auth"},{"name":"@better-auth/stripe","old_version":"1.4.18","new_version":"1.6.10","repository_url":"https://github.com/better-auth/better-auth"},{"name":"@trpc/server","old_version":"11.10.0","new_version":"11.17.0","repository_url":"https://github.com/trpc/trpc"},{"name":"ai","old_version":"6.0.91","new_version":"6.0.177","repository_url":"https://github.com/vercel/ai"},{"name":"better-auth","old_version":"1.4.18","new_version":"1.6.10","repository_url":"https://github.com/better-auth/better-auth"},{"name":"drizzle-orm","old_version":"0.45.1","new_version":"0.45.2","repository_url":"https://github.com/drizzle-team/drizzle-orm"},{"name":"stripe","old_version":"20.3.1","new_version":"22.1.1","repository_url":"https://github.com/stripe/stripe-node"},{"name":"@cloudflare/workers-types","old_version":"4.20260218.0","new_version":"4.20260511.1","repository_url":"https://github.com/cloudflare/workerd"},{"name":"@types/bun","old_version":"1.3.9","new_version":"1.3.13","repository_url":"https://github.com/DefinitelyTyped/DefinitelyTyped"},{"name":"hono","old_version":"4.11.10","new_version":"4.12.18","repository_url":"https://github.com/honojs/hono"},{"name":"zod","old_version":"4.3.6","new_version":"4.4.3","repository_url":"https://github.com/colinhacks/zod"},{"name":"@tanstack/react-query","old_version":"5.90.21","new_version":"5.100.9","repository_url":"https://github.com/TanStack/query"},{"name":"@tanstack/react-router","old_version":"1.161.1","new_version":"1.169.2","repository_url":"https://github.com/TanStack/router"},{"name":"@trpc/client","old_version":"11.10.0","new_version":"11.17.0","repository_url":"https://github.com/trpc/trpc"},{"name":"@trpc/tanstack-react-query","old_version":"11.10.0","new_version":"11.17.0","repository_url":"https://github.com/trpc/trpc"},{"name":"jotai","old_version":"2.17.1","new_version":"2.20.0","repository_url":"https://github.com/pmndrs/jotai"},{"name":"lucide-react","old_version":"0.574.0","new_version":"1.14.0","repository_url":"https://github.com/lucide-icons/lucide"},{"name":"react-dom","old_version":"19.2.4","new_version":"19.2.6","repository_url":"https://github.com/facebook/react"},{"name":"tailwind-merge","old_version":"3.4.1","new_version":"3.6.0","repository_url":"https://github.com/dcastil/tailwind-merge"},{"name":"@tailwindcss/postcss","old_version":"4.2.0","new_version":"4.3.0","repository_url":"https://github.com/tailwindlabs/tailwindcss"},{"name":"@tanstack/react-query-devtools","old_version":"5.91.3","new_version":"5.100.9","repository_url":"https://github.com/TanStack/query"},{"name":"@tanstack/react-router-devtools","old_version":"1.161.1","new_version":"1.166.13","repository_url":"https://github.com/TanStack/router"},{"name":"@tanstack/router-plugin","old_version":"1.161.1","new_version":"1.167.35","repository_url":"https://github.com/TanStack/router"},{"name":"@types/node","old_version":"25.2.3","new_version":"25.6.2","repository_url":"https://github.com/DefinitelyTyped/DefinitelyTyped"},{"name":"@vitejs/plugin-react","old_version":"5.1.4","new_version":"6.0.1","repository_url":"https://github.com/vitejs/vite-plugin-react"},{"name":"@vitejs/plugin-react-swc","old_version":"4.2.3","new_version":"4.3.0","repository_url":"https://github.com/vitejs/vite-plugin-react"},{"name":"autoprefixer","old_version":"10.4.24","new_version":"10.5.0","repository_url":"https://github.com/postcss/autoprefixer"},{"name":"globby","old_version":"16.1.1","new_version":"16.2.0","repository_url":"https://github.com/sindresorhus/globby"},{"name":"@react-email/components","old_version":"1.0.8","new_version":"1.0.12","repository_url":"https://github.com/resend/react-email"},{"name":"@react-email/render","old_version":"2.0.4","new_version":"2.0.8","repository_url":"https://github.com/resend/react-email"},{"name":"@react-email/preview-server","old_version":"5.2.8","new_version":"5.2.10","repository_url":"https://github.com/resend/react-email"},{"name":"react-email","old_version":"5.2.8","new_version":"6.1.1","repository_url":"https://github.com/resend/react-email"},{"name":"@astrojs/react","old_version":"4.4.2","new_version":"5.0.4","repository_url":"https://github.com/withastro/astro"},{"name":"astro","old_version":"5.17.2","new_version":"6.3.1","repository_url":"https://github.com/withastro/astro"},{"name":"drizzle-kit","old_version":"0.31.9","new_version":"0.31.10","repository_url":"https://github.com/drizzle-team/drizzle-orm"},{"name":"@modelcontextprotocol/sdk","old_version":"1.26.0","new_version":"1.29.0","repository_url":"https://github.com/modelcontextprotocol/typescript-sdk"},{"name":"got","old_version":"14.6.6","new_version":"15.0.5","repository_url":"https://github.com/sindresorhus/got"}],"path":null,"ecosystem":"npm"},"body":"Bumps the all-dependencies group with 52 updates in the / directory:\n\n| Package | From | To |\n| --- | --- | --- |\n| [@biomejs/biome](https://github.com/biomejs/biome/tree/HEAD/packages/@biomejs/biome) | `2.4.9` | `2.4.15` |\n| [graphql](https://github.com/graphql/graphql-js) | `16.12.0` | `16.14.0` |\n| [happy-dom](https://github.com/capricorn86/happy-dom) | `20.6.2` | `20.9.0` |\n| [jiti](https://github.com/unjs/jiti) | `2.6.1` | `2.7.0` |\n| [lint-staged](https://github.com/lint-staged/lint-staged) | `16.2.7` | `17.0.4` |\n| [mermaid](https://github.com/mermaid-js/mermaid) | `11.12.3` | `11.14.0` |\n| [react](https://github.com/facebook/react/tree/HEAD/packages/react) | `19.2.4` | `19.2.6` |\n| [typescript](https://github.com/microsoft/TypeScript) | `5.9.3` | `6.0.3` |\n| [typescript-language-server](https://github.com/typescript-language-server/typescript-language-server) | `5.1.3` | `5.2.0` |\n| [vite](https://github.com/vitejs/vite/tree/HEAD/packages/vite) | `7.3.1` | `8.0.11` |\n| [vitepress](https://github.com/vuejs/vitepress) | `2.0.0-alpha.16` | `2.0.0-alpha.17` |\n| [vitepress-plugin-llms](https://github.com/okineadev/vitepress-plugin-llms) | `1.11.0` | `1.12.2` |\n| [vitest](https://github.com/vitest-dev/vitest/tree/HEAD/packages/vitest) | `4.0.18` | `4.1.5` |\n| [wrangler](https://github.com/cloudflare/workers-sdk/tree/HEAD/packages/wrangler) | `4.66.0` | `4.90.0` |\n| [@ai-sdk/openai](https://github.com/vercel/ai/tree/HEAD/packages/openai) | `3.0.29` | `3.0.63` |\n| [@better-auth/passkey](https://github.com/better-auth/better-auth/tree/HEAD/packages/passkey) | `1.4.18` | `1.6.10` |\n| [@better-auth/stripe](https://github.com/better-auth/better-auth/tree/HEAD/packages/stripe) | `1.4.18` | `1.6.10` |\n| [@trpc/server](https://github.com/trpc/trpc/tree/HEAD/packages/server) | `11.10.0` | `11.17.0` |\n| [ai](https://github.com/vercel/ai/tree/HEAD/packages/ai) | `6.0.91` | `6.0.177` |\n| [better-auth](https://github.com/better-auth/better-auth/tree/HEAD/packages/better-auth) | `1.4.18` | `1.6.10` |\n| [drizzle-orm](https://github.com/drizzle-team/drizzle-orm) | `0.45.1` | `0.45.2` |\n| [stripe](https://github.com/stripe/stripe-node) | `20.3.1` | `22.1.1` |\n| [@cloudflare/workers-types](https://github.com/cloudflare/workerd) | `4.20260218.0` | `4.20260511.1` |\n| [@types/bun](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/bun) | `1.3.9` | `1.3.13` |\n| [hono](https://github.com/honojs/hono) | `4.11.10` | `4.12.18` |\n| [zod](https://github.com/colinhacks/zod) | `4.3.6` | `4.4.3` |\n| [@tanstack/react-query](https://github.com/TanStack/query/tree/HEAD/packages/react-query) | `5.90.21` | `5.100.9` |\n| [@tanstack/react-router](https://github.com/TanStack/router/tree/HEAD/packages/react-router) | `1.161.1` | `1.169.2` |\n| [@trpc/client](https://github.com/trpc/trpc/tree/HEAD/packages/client) | `11.10.0` | `11.17.0` |\n| [@trpc/tanstack-react-query](https://github.com/trpc/trpc/tree/HEAD/packages/tanstack-react-query) | `11.10.0` | `11.17.0` |\n| [jotai](https://github.com/pmndrs/jotai) | `2.17.1` | `2.20.0` |\n| [lucide-react](https://github.com/lucide-icons/lucide/tree/HEAD/packages/lucide-react) | `0.574.0` | `1.14.0` |\n| [react-dom](https://github.com/facebook/react/tree/HEAD/packages/react-dom) | `19.2.4` | `19.2.6` |\n| [tailwind-merge](https://github.com/dcastil/tailwind-merge) | `3.4.1` | `3.6.0` |\n| [@tailwindcss/postcss](https://github.com/tailwindlabs/tailwindcss/tree/HEAD/packages/@tailwindcss-postcss) | `4.2.0` | `4.3.0` |\n| [@tanstack/react-query-devtools](https://github.com/TanStack/query/tree/HEAD/packages/react-query-devtools) | `5.91.3` | `5.100.9` |\n| [@tanstack/react-router-devtools](https://github.com/TanStack/router/tree/HEAD/packages/react-router-devtools) | `1.161.1` | `1.166.13` |\n| [@tanstack/router-plugin](https://github.com/TanStack/router/tree/HEAD/packages/router-plugin) | `1.161.1` | `1.167.35` |\n| [@types/node](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/node) | `25.2.3` | `25.6.2` |\n| [@vitejs/plugin-react](https://github.com/vitejs/vite-plugin-react/tree/HEAD/packages/plugin-react) | `5.1.4` | `6.0.1` |\n| [@vitejs/plugin-react-swc](https://github.com/vitejs/vite-plugin-react/tree/HEAD/packages/plugin-react-swc) | `4.2.3` | `4.3.0` |\n| [autoprefixer](https://github.com/postcss/autoprefixer) | `10.4.24` | `10.5.0` |\n| [globby](https://github.com/sindresorhus/globby) | `16.1.1` | `16.2.0` |\n| [@react-email/components](https://github.com/resend/react-email/tree/HEAD/packages/components) | `1.0.8` | `1.0.12` |\n| [@react-email/render](https://github.com/resend/react-email/tree/HEAD/packages/render) | `2.0.4` | `2.0.8` |\n| [@react-email/preview-server](https://github.com/resend/react-email/tree/HEAD/packages/preview-server) | `5.2.8` | `5.2.10` |\n| [react-email](https://github.com/resend/react-email/tree/HEAD/packages/react-email) | `5.2.8` | `6.1.1` |\n| [@astrojs/react](https://github.com/withastro/astro/tree/HEAD/packages/integrations/react) | `4.4.2` | `5.0.4` |\n| [astro](https://github.com/withastro/astro/tree/HEAD/packages/astro) | `5.17.2` | `6.3.1` |\n| [drizzle-kit](https://github.com/drizzle-team/drizzle-orm) | `0.31.9` | `0.31.10` |\n| [@modelcontextprotocol/sdk](https://github.com/modelcontextprotocol/typescript-sdk) | `1.26.0` | `1.29.0` |\n| [got](https://github.com/sindresorhus/got) | `14.6.6` | `15.0.5` |\n\n\nUpdates `@biomejs/biome` from 2.4.9 to 2.4.15\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/biomejs/biome/releases\"\u003e@​biomejs/biome's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eBiome CLI v2.4.15\u003c/h2\u003e\n\u003ch2\u003e2.4.15\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/biomejs/biome/pull/9394\"\u003e#9394\u003c/a\u003e \u003ca href=\"https://github.com/biomejs/biome/commit/ba3480e62da6ac7f0f9d99126f1459a72306368b\"\u003e\u003ccode\u003eba3480e\u003c/code\u003e\u003c/a\u003e Thanks \u003ca href=\"https://github.com/dyc3\"\u003e\u003ccode\u003e@​dyc3\u003c/code\u003e\u003c/a\u003e! - Added the nursery rule \u003ca href=\"https://biomejs.dev/linter/rules/use-test-hooks-in-order\"\u003e\u003ccode\u003euseTestHooksInOrder\u003c/code\u003e\u003c/a\u003e in the \u003ccode\u003etest\u003c/code\u003e domain. The rule enforces that Jest/Vitest lifecycle hooks (\u003ccode\u003ebeforeAll\u003c/code\u003e, \u003ccode\u003ebeforeEach\u003c/code\u003e, \u003ccode\u003eafterEach\u003c/code\u003e, \u003ccode\u003eafterAll\u003c/code\u003e) are declared in the order they execute, making test setup and teardown easier to reason about.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/biomejs/biome/pull/10254\"\u003e#10254\u003c/a\u003e \u003ca href=\"https://github.com/biomejs/biome/commit/e0a54ccc0a0c892fff2270ae772bcecf0d34e79a\"\u003e\u003ccode\u003ee0a54cc\u003c/code\u003e\u003c/a\u003e Thanks \u003ca href=\"https://github.com/dyc3\"\u003e\u003ccode\u003e@​dyc3\u003c/code\u003e\u003c/a\u003e! - Added a new nursery rule \u003ca href=\"https://biomejs.dev/linter/rules/use-vue-next-tick-promise/\"\u003e\u003ccode\u003euseVueNextTickPromise\u003c/code\u003e\u003c/a\u003e, which enforces Promise syntax when using Vue \u003ccode\u003enextTick\u003c/code\u003e.\u003c/p\u003e\n\u003cp\u003eFor example, the following snippet triggers the rule:\u003c/p\u003e\n\u003cpre lang=\"js\"\u003e\u003ccode\u003eimport { nextTick } from \u0026quot;vue\u0026quot;;\n\u003cp\u003enextTick(() =\u0026gt; {\nupdateDom();\n});\n\u003c/code\u003e\u003c/pre\u003e\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/biomejs/biome/pull/10219\"\u003e#10219\u003c/a\u003e \u003ca href=\"https://github.com/biomejs/biome/commit/64aee454ac2db2ade31089c1438dd761c94a8d57\"\u003e\u003ccode\u003e64aee45\u003c/code\u003e\u003c/a\u003e Thanks \u003ca href=\"https://github.com/dyc3\"\u003e\u003ccode\u003e@​dyc3\u003c/code\u003e\u003c/a\u003e! - Added a new nursery rule \u003ca href=\"https://biomejs.dev/linter/rules/no-vue-v-on-number-values/\"\u003e\u003ccode\u003enoVueVOnNumberValues\u003c/code\u003e\u003c/a\u003e, that disallows deprecated number modifiers on Vue \u003ccode\u003ev-on\u003c/code\u003e directives.\u003c/p\u003e\n\u003cp\u003eFor example, the following snippet triggers the rule:\u003c/p\u003e\n\u003cpre lang=\"vue\"\u003e\u003ccode\u003e\u0026lt;input @keyup.13=\u0026quot;submit\u0026quot; /\u0026gt;\n\u003c/code\u003e\u003c/pre\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/biomejs/biome/pull/10195\"\u003e#10195\u003c/a\u003e \u003ca href=\"https://github.com/biomejs/biome/commit/7b8d4e161a225f14bc9e070e04cc8572ee988bb2\"\u003e\u003ccode\u003e7b8d4e1\u003c/code\u003e\u003c/a\u003e Thanks \u003ca href=\"https://github.com/dyc3\"\u003e\u003ccode\u003e@​dyc3\u003c/code\u003e\u003c/a\u003e! - Added the new nursery rule \u003ca href=\"https://biomejs.dev/linter/rules/use-vue-valid-v-for/\"\u003e\u003ccode\u003euseVueValidVFor\u003c/code\u003e\u003c/a\u003e, which validates Vue \u003ccode\u003ev-for\u003c/code\u003e directives and reports invalid aliases, missing component keys, and keys that do not use iteration variables.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/biomejs/biome/pull/10238\"\u003e#10238\u003c/a\u003e \u003ca href=\"https://github.com/biomejs/biome/commit/1110256c6d60500ebc05b9d2738fe77345c7ffd6\"\u003e\u003ccode\u003e1110256\u003c/code\u003e\u003c/a\u003e Thanks \u003ca href=\"https://github.com/dyc3\"\u003e\u003ccode\u003e@​dyc3\u003c/code\u003e\u003c/a\u003e! - Added the recommended nursery rule \u003ca href=\"https://biomejs.dev/linter/rules/no-vue-import-compiler-macros/\"\u003e\u003ccode\u003enoVueImportCompilerMacros\u003c/code\u003e\u003c/a\u003e, which disallows importing Vue compiler macros such as \u003ccode\u003edefineProps\u003c/code\u003e from \u003ccode\u003evue\u003c/code\u003e because they are automatically available.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/biomejs/biome/pull/10201\"\u003e#10201\u003c/a\u003e \u003ca href=\"https://github.com/biomejs/biome/commit/1a08f89df55eafe1d8463696d1be53f8dea90a80\"\u003e\u003ccode\u003e1a08f89\u003c/code\u003e\u003c/a\u003e Thanks \u003ca href=\"https://github.com/realknove\"\u003e\u003ccode\u003e@​realknove\u003c/code\u003e\u003c/a\u003e! - Fixed \u003ca href=\"https://redirect.github.com/biomejs/biome/issues/10193\"\u003e#10193\u003c/a\u003e: \u003ccode\u003estyle/useReadonlyClassProperties\u003c/code\u003e no longer reports class properties as readonly-able when they are assigned inside arrow callbacks nested in class property initializers.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/biomejs/biome/pull/9574\"\u003e#9574\u003c/a\u003e \u003ca href=\"https://github.com/biomejs/biome/commit/3bd2b6adf0be44eda922ad7610781dd2e387bdb6\"\u003e\u003ccode\u003e3bd2b6a\u003c/code\u003e\u003c/a\u003e Thanks \u003ca href=\"https://github.com/Conaclos\"\u003e\u003ccode\u003e@​Conaclos\u003c/code\u003e\u003c/a\u003e! - Fixed \u003ca href=\"https://redirect.github.com/biomejs/biome/issues/9530\"\u003e#9530\u003c/a\u003e. The diagnostics of \u003ca href=\"https://biomejs.dev/assist/actions/organize-imports/\"\u003e\u003ccode\u003eorganizeImports\u003c/code\u003e\u003c/a\u003e are now more detailed and more precise. They are also better at localizing where the issue is.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/biomejs/biome/pull/10205\"\u003e#10205\u003c/a\u003e \u003ca href=\"https://github.com/biomejs/biome/commit/a704a6c40392e71aad5127ab35c771486116937e\"\u003e\u003ccode\u003ea704a6c\u003c/code\u003e\u003c/a\u003e Thanks \u003ca href=\"https://github.com/Conaclos\"\u003e\u003ccode\u003e@​Conaclos\u003c/code\u003e\u003c/a\u003e! - Fixed \u003ca href=\"https://redirect.github.com/biomejs/biome/issues/10185\"\u003e#10185\u003c/a\u003e. \u003ca href=\"https://biomejs.dev/assist/actions/organize-imports/\"\u003e`organizeImports\u003c/a\u003e now errors when it encounters an unknown predefined group.\u003c/p\u003e\n\u003cp\u003eThe following configuration is now reported as invalid because \u003ccode\u003e:INEXISTENT:\u003c/code\u003e is an unknown predefined group.\u003c/p\u003e\n\u003cpre lang=\"json\"\u003e\u003ccode\u003e{\n  \u0026quot;assist\u0026quot;: {\n    \u0026quot;actions\u0026quot;: {\n      \u0026quot;source\u0026quot;: {\n        \u0026quot;organizeImports\u0026quot;: { \u0026quot;options\u0026quot;: { \u0026quot;groups\u0026quot;: [\u0026quot;:INEXISTENT:\u0026quot;] } }\n      }\n    }\n  }\n}\n\u003c/code\u003e\u003c/pre\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/biomejs/biome/blob/main/packages/@biomejs/biome/CHANGELOG.md\"\u003e@​biomejs/biome's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e2.4.15\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/biomejs/biome/pull/9394\"\u003e#9394\u003c/a\u003e \u003ca href=\"https://github.com/biomejs/biome/commit/ba3480e62da6ac7f0f9d99126f1459a72306368b\"\u003e\u003ccode\u003eba3480e\u003c/code\u003e\u003c/a\u003e Thanks \u003ca href=\"https://github.com/dyc3\"\u003e\u003ccode\u003e@​dyc3\u003c/code\u003e\u003c/a\u003e! - Added the nursery rule \u003ca href=\"https://biomejs.dev/linter/rules/use-test-hooks-in-order\"\u003e\u003ccode\u003euseTestHooksInOrder\u003c/code\u003e\u003c/a\u003e in the \u003ccode\u003etest\u003c/code\u003e domain. The rule enforces that Jest/Vitest lifecycle hooks (\u003ccode\u003ebeforeAll\u003c/code\u003e, \u003ccode\u003ebeforeEach\u003c/code\u003e, \u003ccode\u003eafterEach\u003c/code\u003e, \u003ccode\u003eafterAll\u003c/code\u003e) are declared in the order they execute, making test setup and teardown easier to reason about.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/biomejs/biome/pull/10254\"\u003e#10254\u003c/a\u003e \u003ca href=\"https://github.com/biomejs/biome/commit/e0a54ccc0a0c892fff2270ae772bcecf0d34e79a\"\u003e\u003ccode\u003ee0a54cc\u003c/code\u003e\u003c/a\u003e Thanks \u003ca href=\"https://github.com/dyc3\"\u003e\u003ccode\u003e@​dyc3\u003c/code\u003e\u003c/a\u003e! - Added a new nursery rule \u003ca href=\"https://biomejs.dev/linter/rules/use-vue-next-tick-promise/\"\u003e\u003ccode\u003euseVueNextTickPromise\u003c/code\u003e\u003c/a\u003e, which enforces Promise syntax when using Vue \u003ccode\u003enextTick\u003c/code\u003e.\u003c/p\u003e\n\u003cp\u003eFor example, the following snippet triggers the rule:\u003c/p\u003e\n\u003cpre lang=\"js\"\u003e\u003ccode\u003eimport { nextTick } from \u0026quot;vue\u0026quot;;\n\u003cp\u003enextTick(() =\u0026gt; {\nupdateDom();\n});\n\u003c/code\u003e\u003c/pre\u003e\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/biomejs/biome/pull/10219\"\u003e#10219\u003c/a\u003e \u003ca href=\"https://github.com/biomejs/biome/commit/64aee454ac2db2ade31089c1438dd761c94a8d57\"\u003e\u003ccode\u003e64aee45\u003c/code\u003e\u003c/a\u003e Thanks \u003ca href=\"https://github.com/dyc3\"\u003e\u003ccode\u003e@​dyc3\u003c/code\u003e\u003c/a\u003e! - Added a new nursery rule \u003ca href=\"https://biomejs.dev/linter/rules/no-vue-v-on-number-values/\"\u003e\u003ccode\u003enoVueVOnNumberValues\u003c/code\u003e\u003c/a\u003e, that disallows deprecated number modifiers on Vue \u003ccode\u003ev-on\u003c/code\u003e directives.\u003c/p\u003e\n\u003cp\u003eFor example, the following snippet triggers the rule:\u003c/p\u003e\n\u003cpre lang=\"vue\"\u003e\u003ccode\u003e\u0026lt;input @keyup.13=\u0026quot;submit\u0026quot; /\u0026gt;\n\u003c/code\u003e\u003c/pre\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/biomejs/biome/pull/10195\"\u003e#10195\u003c/a\u003e \u003ca href=\"https://github.com/biomejs/biome/commit/7b8d4e161a225f14bc9e070e04cc8572ee988bb2\"\u003e\u003ccode\u003e7b8d4e1\u003c/code\u003e\u003c/a\u003e Thanks \u003ca href=\"https://github.com/dyc3\"\u003e\u003ccode\u003e@​dyc3\u003c/code\u003e\u003c/a\u003e! - Added the new nursery rule \u003ca href=\"https://biomejs.dev/linter/rules/use-vue-valid-v-for/\"\u003e\u003ccode\u003euseVueValidVFor\u003c/code\u003e\u003c/a\u003e, which validates Vue \u003ccode\u003ev-for\u003c/code\u003e directives and reports invalid aliases, missing component keys, and keys that do not use iteration variables.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/biomejs/biome/pull/10238\"\u003e#10238\u003c/a\u003e \u003ca href=\"https://github.com/biomejs/biome/commit/1110256c6d60500ebc05b9d2738fe77345c7ffd6\"\u003e\u003ccode\u003e1110256\u003c/code\u003e\u003c/a\u003e Thanks \u003ca href=\"https://github.com/dyc3\"\u003e\u003ccode\u003e@​dyc3\u003c/code\u003e\u003c/a\u003e! - Added the recommended nursery rule \u003ca href=\"https://biomejs.dev/linter/rules/no-vue-import-compiler-macros/\"\u003e\u003ccode\u003enoVueImportCompilerMacros\u003c/code\u003e\u003c/a\u003e, which disallows importing Vue compiler macros such as \u003ccode\u003edefineProps\u003c/code\u003e from \u003ccode\u003evue\u003c/code\u003e because they are automatically available.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/biomejs/biome/pull/10201\"\u003e#10201\u003c/a\u003e \u003ca href=\"https://github.com/biomejs/biome/commit/1a08f89df55eafe1d8463696d1be53f8dea90a80\"\u003e\u003ccode\u003e1a08f89\u003c/code\u003e\u003c/a\u003e Thanks \u003ca href=\"https://github.com/realknove\"\u003e\u003ccode\u003e@​realknove\u003c/code\u003e\u003c/a\u003e! - Fixed \u003ca href=\"https://redirect.github.com/biomejs/biome/issues/10193\"\u003e#10193\u003c/a\u003e: \u003ccode\u003estyle/useReadonlyClassProperties\u003c/code\u003e no longer reports class properties as readonly-able when they are assigned inside arrow callbacks nested in class property initializers.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/biomejs/biome/pull/9574\"\u003e#9574\u003c/a\u003e \u003ca href=\"https://github.com/biomejs/biome/commit/3bd2b6adf0be44eda922ad7610781dd2e387bdb6\"\u003e\u003ccode\u003e3bd2b6a\u003c/code\u003e\u003c/a\u003e Thanks \u003ca href=\"https://github.com/Conaclos\"\u003e\u003ccode\u003e@​Conaclos\u003c/code\u003e\u003c/a\u003e! - Fixed \u003ca href=\"https://redirect.github.com/biomejs/biome/issues/9530\"\u003e#9530\u003c/a\u003e. The diagnostics of \u003ca href=\"https://biomejs.dev/assist/actions/organize-imports/\"\u003e\u003ccode\u003eorganizeImports\u003c/code\u003e\u003c/a\u003e are now more detailed and more precise. They are also better at localizing where the issue is.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/biomejs/biome/pull/10205\"\u003e#10205\u003c/a\u003e \u003ca href=\"https://github.com/biomejs/biome/commit/a704a6c40392e71aad5127ab35c771486116937e\"\u003e\u003ccode\u003ea704a6c\u003c/code\u003e\u003c/a\u003e Thanks \u003ca href=\"https://github.com/Conaclos\"\u003e\u003ccode\u003e@​Conaclos\u003c/code\u003e\u003c/a\u003e! - Fixed \u003ca href=\"https://redirect.github.com/biomejs/biome/issues/10185\"\u003e#10185\u003c/a\u003e. \u003ca href=\"https://biomejs.dev/assist/actions/organize-imports/\"\u003e`organizeImports\u003c/a\u003e now errors when it encounters an unknown predefined group.\u003c/p\u003e\n\u003cp\u003eThe following configuration is now reported as invalid because \u003ccode\u003e:INEXISTENT:\u003c/code\u003e is an unknown predefined group.\u003c/p\u003e\n\u003cpre lang=\"json\"\u003e\u003ccode\u003e{\n  \u0026quot;assist\u0026quot;: {\n    \u0026quot;actions\u0026quot;: {\n      \u0026quot;source\u0026quot;: {\n        \u0026quot;organizeImports\u0026quot;: { \u0026quot;options\u0026quot;: { \u0026quot;groups\u0026quot;: [\u0026quot;:INEXISTENT:\u0026quot;] } }\n      }\n    }\n  }\n}\n\u003c/code\u003e\u003c/pre\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/biomejs/biome/commit/9dd3271eef16090416b6e77615a01e3bfbcf7993\"\u003e\u003ccode\u003e9dd3271\u003c/code\u003e\u003c/a\u003e ci: release (\u003ca href=\"https://github.com/biomejs/biome/tree/HEAD/packages/@biomejs/biome/issues/10210\"\u003e#10210\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/biomejs/biome/commit/7b8d4e161a225f14bc9e070e04cc8572ee988bb2\"\u003e\u003ccode\u003e7b8d4e1\u003c/code\u003e\u003c/a\u003e feat(lint/html/vue): add \u003ccode\u003euseVueValidVFor\u003c/code\u003e (\u003ca href=\"https://github.com/biomejs/biome/tree/HEAD/packages/@biomejs/biome/issues/10195\"\u003e#10195\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/biomejs/biome/commit/ba3480e62da6ac7f0f9d99126f1459a72306368b\"\u003e\u003ccode\u003eba3480e\u003c/code\u003e\u003c/a\u003e feat(lint/js): add \u003ccode\u003euseTestHooksInOrder\u003c/code\u003e (\u003ca href=\"https://github.com/biomejs/biome/tree/HEAD/packages/@biomejs/biome/issues/9394\"\u003e#9394\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/biomejs/biome/commit/e0a54ccc0a0c892fff2270ae772bcecf0d34e79a\"\u003e\u003ccode\u003ee0a54cc\u003c/code\u003e\u003c/a\u003e feat(lint/js/vue): add \u003ccode\u003euseVueNextTickPromise\u003c/code\u003e (\u003ca href=\"https://github.com/biomejs/biome/tree/HEAD/packages/@biomejs/biome/issues/10254\"\u003e#10254\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/biomejs/biome/commit/1110256c6d60500ebc05b9d2738fe77345c7ffd6\"\u003e\u003ccode\u003e1110256\u003c/code\u003e\u003c/a\u003e feat(lint/vue): add \u003ccode\u003enoVueImportCompilerMacros\u003c/code\u003e (\u003ca href=\"https://github.com/biomejs/biome/tree/HEAD/packages/@biomejs/biome/issues/10238\"\u003e#10238\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/biomejs/biome/commit/7f7419cc831cc0725c44669964d8ad8f318d4375\"\u003e\u003ccode\u003e7f7419c\u003c/code\u003e\u003c/a\u003e fix: grammar in extends docstring (\u003ca href=\"https://github.com/biomejs/biome/tree/HEAD/packages/@biomejs/biome/issues/10263\"\u003e#10263\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/biomejs/biome/commit/0ae58406b4752f296adfccf94b1d2a042c4cddc7\"\u003e\u003ccode\u003e0ae5840\u003c/code\u003e\u003c/a\u003e feat(lint/js): add \u003ccode\u003euseThisForClassMethods\u003c/code\u003e (\u003ca href=\"https://github.com/biomejs/biome/tree/HEAD/packages/@biomejs/biome/issues/9807\"\u003e#9807\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/biomejs/biome/commit/83f7385f14d68704510ea4c028cfa20317698fc0\"\u003e\u003ccode\u003e83f7385\u003c/code\u003e\u003c/a\u003e feat(lint/js): add \u003ccode\u003enoBaseToString\u003c/code\u003e (\u003ca href=\"https://github.com/biomejs/biome/tree/HEAD/packages/@biomejs/biome/issues/9838\"\u003e#9838\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/biomejs/biome/commit/64aee454ac2db2ade31089c1438dd761c94a8d57\"\u003e\u003ccode\u003e64aee45\u003c/code\u003e\u003c/a\u003e feat(lint/html/vue): add \u003ccode\u003enoVueVOnNumberValues\u003c/code\u003e (\u003ca href=\"https://github.com/biomejs/biome/tree/HEAD/packages/@biomejs/biome/issues/10219\"\u003e#10219\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/biomejs/biome/commit/46393e0240944064eb2a33c1810fc4204ced0cf7\"\u003e\u003ccode\u003e46393e0\u003c/code\u003e\u003c/a\u003e ci: release (\u003ca href=\"https://github.com/biomejs/biome/tree/HEAD/packages/@biomejs/biome/issues/10100\"\u003e#10100\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/biomejs/biome/commits/@biomejs/biome@2.4.15/packages/@biomejs/biome\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `graphql` from 16.12.0 to 16.14.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/graphql/graphql-js/releases\"\u003egraphql's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev16.14.0 (2026-05-03)\u003c/h2\u003e\n\u003ch4\u003eNew Feature 🚀\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/graphql/graphql-js/pull/4317\"\u003e#4317\u003c/a\u003e Allow configuration of the \u003ccode\u003eofType\u003c/code\u003e introspection depth (\u003ca href=\"https://github.com/Nols1000\"\u003e\u003ccode\u003e@​Nols1000\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/graphql/graphql-js/pull/4521\"\u003e#4521\u003c/a\u003e Add experimental support for directives on directive definitions (\u003ca href=\"https://github.com/BoD\"\u003e\u003ccode\u003e@​BoD\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch4\u003eBug Fix 🐞\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/graphql/graphql-js/pull/4652\"\u003e#4652\u003c/a\u003e Fix valueFromAST variable own-property checks\n(\u003ca href=\"https://github.com/abishekgiri\"\u003e\u003ccode\u003e@​abishekgiri\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch4\u003eDocs 📝\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/graphql/graphql-js/pull/4706\"\u003e#4706\u003c/a\u003e Fix mistake in GraphQLError guidance (\u003ca href=\"https://github.com/benjie\"\u003e\u003ccode\u003e@​benjie\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch4\u003eCommitters: 4\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003eAbishek Kumar Giri(\u003ca href=\"https://github.com/abishekgiri\"\u003e\u003ccode\u003e@​abishekgiri\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eBenjie(\u003ca href=\"https://github.com/benjie\"\u003e\u003ccode\u003e@​benjie\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eBenoit 'BoD' Lubek(\u003ca href=\"https://github.com/BoD\"\u003e\u003ccode\u003e@​BoD\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNils-Börge Margotti(\u003ca href=\"https://github.com/Nols1000\"\u003e\u003ccode\u003e@​Nols1000\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev16.13.2 (2026-03-24)\u003c/h2\u003e\n\u003ch4\u003eDocs 📝\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/graphql/graphql-js/pull/4611\"\u003e#4611\u003c/a\u003e add dev mode docs (\u003ca href=\"https://github.com/yaacovCR\"\u003e\u003ccode\u003e@​yaacovCR\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch4\u003ePolish 💅\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/graphql/graphql-js/pull/4631\"\u003e#4631\u003c/a\u003e Use \u003ccode\u003eObject.create(null)\u003c/code\u003e over \u003ccode\u003e{}\u003c/code\u003e to avoid prototype issues - v16 (\u003ca href=\"https://github.com/benjie\"\u003e\u003ccode\u003e@​benjie\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch4\u003eInternal 🏠\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/graphql/graphql-js/pull/4626\"\u003e#4626\u003c/a\u003e backport: internal: streamline release process (\u003ca href=\"https://redirect.github.com/graphql/graphql-js/issues/4615\"\u003e#4615\u003c/a\u003e) (\u003ca href=\"https://github.com/yaacovCR\"\u003e\u003ccode\u003e@​yaacovCR\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch4\u003eCommitters: 2\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003eBenjie(\u003ca href=\"https://github.com/benjie\"\u003e\u003ccode\u003e@​benjie\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eYaacov Rydzinski (\u003ca href=\"https://github.com/yaacovCR\"\u003e\u003ccode\u003e@​yaacovCR\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev16.13.1 (2026-03-04)\u003c/h2\u003e\n\u003cp\u003eFirst 16.x.x release with trusted publishing and provenance, see: \u003ca href=\"https://docs.npmjs.com/trusted-publishers\"\u003ehttps://docs.npmjs.com/trusted-publishers\u003c/a\u003e for additional information.\u003c/p\u003e\n\u003ch4\u003eDocs 📝\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/graphql/graphql-js/pull/4433\"\u003e#4433\u003c/a\u003e docs: move migrate from express graphql guide to graphqlJS docs (\u003ca href=\"https://github.com/sarahxsanders\"\u003e\u003ccode\u003e@​sarahxsanders\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch4\u003eInternal 🏠\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/graphql/graphql-js/pull/4608\"\u003e#4608\u003c/a\u003e internal: backport new release flow from 17.x.x (\u003ca href=\"https://github.com/yaacovCR\"\u003e\u003ccode\u003e@​yaacovCR\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/graphql/graphql-js/pull/4610\"\u003e#4610\u003c/a\u003e internal: pin node version for release action (\u003ca href=\"https://github.com/yaacovCR\"\u003e\u003ccode\u003e@​yaacovCR\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch4\u003eCommitters: 2\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003eSarah Sanders(\u003ca href=\"https://github.com/sarahxsanders\"\u003e\u003ccode\u003e@​sarahxsanders\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eYaacov Rydzinski (\u003ca href=\"https://github.com/yaacovCR\"\u003e\u003ccode\u003e@​yaacovCR\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e16.13.0\u003c/h2\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/graphql/graphql-js/commit/57b385b288150960acd09337adf2fc778abb32ab\"\u003e\u003ccode\u003e57b385b\u003c/code\u003e\u003c/a\u003e chore(release): v16.14.0 (\u003ca href=\"https://redirect.github.com/graphql/graphql-js/issues/4720\"\u003e#4720\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/graphql/graphql-js/commit/85700ed6382d57c76d47935adbee6943b29ffd75\"\u003e\u003ccode\u003e85700ed\u003c/code\u003e\u003c/a\u003e Fix mistake in GraphQLError guidance (\u003ca href=\"https://redirect.github.com/graphql/graphql-js/issues/4706\"\u003e#4706\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/graphql/graphql-js/commit/8eb6383ae7447514343457abb2063c40e5dc81bc\"\u003e\u003ccode\u003e8eb6383\u003c/code\u003e\u003c/a\u003e Allow configuration of the \u003ccode\u003eofType\u003c/code\u003e introspection depth (\u003ca href=\"https://redirect.github.com/graphql/graphql-js/issues/4317\"\u003e#4317\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/graphql/graphql-js/commit/ad9c519428ae9d95547af07f68c7559bda0d4053\"\u003e\u003ccode\u003ead9c519\u003c/code\u003e\u003c/a\u003e Add support for directives on directive definitions (\u003ca href=\"https://redirect.github.com/graphql/graphql-js/issues/4521\"\u003e#4521\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/graphql/graphql-js/commit/db2987cb63fffc372f413e780437ea022a649274\"\u003e\u003ccode\u003edb2987c\u003c/code\u003e\u003c/a\u003e fix(valueFromAST): restore variable own-property checks (\u003ca href=\"https://redirect.github.com/graphql/graphql-js/issues/4652\"\u003e#4652\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/graphql/graphql-js/commit/123e958de1362eef098c30e917b51981c484729e\"\u003e\u003ccode\u003e123e958\u003c/code\u003e\u003c/a\u003e chore(release): v16.13.2 (\u003ca href=\"https://redirect.github.com/graphql/graphql-js/issues/4632\"\u003e#4632\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/graphql/graphql-js/commit/13f130d229311cfaf3accff12d3b7134e8d43a8c\"\u003e\u003ccode\u003e13f130d\u003c/code\u003e\u003c/a\u003e Use \u003ccode\u003eObject.create(null)\u003c/code\u003e over \u003ccode\u003e{}\u003c/code\u003e to avoid prototype issues - v16 (\u003ca href=\"https://redirect.github.com/graphql/graphql-js/issues/4631\"\u003e#4631\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/graphql/graphql-js/commit/6ca59e128fe6cf26f1335fbd81d2f4a30bf9fce1\"\u003e\u003ccode\u003e6ca59e1\u003c/code\u003e\u003c/a\u003e backport: internal: streamline release process (\u003ca href=\"https://redirect.github.com/graphql/graphql-js/issues/4615\"\u003e#4615\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/graphql/graphql-js/issues/4626\"\u003e#4626\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/graphql/graphql-js/commit/df8c53f5157b9d8312160b1d5baf1f7029213097\"\u003e\u003ccode\u003edf8c53f\u003c/code\u003e\u003c/a\u003e docs: dev mode for v17 (\u003ca href=\"https://redirect.github.com/graphql/graphql-js/issues/4611\"\u003e#4611\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/graphql/graphql-js/commit/3b5c3f949ba1f3709f260984becd266b0c6fb4e8\"\u003e\u003ccode\u003e3b5c3f9\u003c/code\u003e\u003c/a\u003e internal: pin node version for release action (\u003ca href=\"https://redirect.github.com/graphql/graphql-js/issues/4610\"\u003e#4610\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/graphql/graphql-js/compare/v16.12.0...v16.14.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eMaintainer changes\u003c/summary\u003e\n\u003cp\u003eThis version was pushed to npm by \u003ca href=\"https://www.npmjs.com/~GitHub%20Actions\"\u003eGitHub Actions\u003c/a\u003e, a new releaser for graphql since your current version.\u003c/p\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `happy-dom` from 20.6.2 to 20.9.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/capricorn86/happy-dom/releases\"\u003ehappy-dom's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev20.9.0\u003c/h2\u003e\n\u003ch3\u003e:art: Features\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdds support for event listener properties on Window (e.g. \u003ccode\u003eWindow.onkeydown\u003c/code\u003e) - By \u003cstrong\u003e\u003ca href=\"https://github.com/capricorn86\"\u003e\u003ccode\u003e@​capricorn86\u003c/code\u003e\u003c/a\u003e\u003c/strong\u003e in task \u003ca href=\"https://redirect.github.com/capricorn86/happy-dom/issues/2131\"\u003e#2131\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev20.8.9\u003c/h2\u003e\n\u003ch3\u003e:construction_worker_man: Patch fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFixes issue where cookies from the current origin was being forwarded to the target origin in fetch requests - By \u003cstrong\u003e\u003ca href=\"https://github.com/capricorn86\"\u003e\u003ccode\u003e@​capricorn86\u003c/code\u003e\u003c/a\u003e\u003c/strong\u003e in task \u003ca href=\"https://redirect.github.com/capricorn86/happy-dom/issues/2117\"\u003e#2117\u003c/a\u003e\n\u003cul\u003e\n\u003cli\u003eA security advisory (\u003ca href=\"https://github.com/capricorn86/happy-dom/security/advisories/GHSA-w4gp-fjgq-3q4g\"\u003eGHSA-w4gp-fjgq-3q4g\u003c/a\u003e) was reported for this security vulnerability. Big thanks to \u003ca href=\"https://github.com/r74tech\"\u003e\u003ccode\u003e@​r74tech\u003c/code\u003e\u003c/a\u003e for reporting this!\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev20.8.8\u003c/h2\u003e\n\u003ch3\u003e:construction_worker_man: Patch fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFixes issue where export names can be interpolated as executable code in ESM - By \u003cstrong\u003e\u003ca href=\"https://github.com/capricorn86\"\u003e\u003ccode\u003e@​capricorn86\u003c/code\u003e\u003c/a\u003e\u003c/strong\u003e in task \u003ca href=\"https://redirect.github.com/capricorn86/happy-dom/issues/2113\"\u003e#2113\u003c/a\u003e\n\u003cul\u003e\n\u003cli\u003eA security advisory (\u003ca href=\"https://github.com/capricorn86/happy-dom/security/advisories/GHSA-6q6h-j7hj-3r64\"\u003eGHSA-6q6h-j7hj-3r64\u003c/a\u003e) has been reported that shows a security vulnerability where it may be possible to escape the VM context and get access to process level functionality in unsafe environments using CommonJS. Big thanks to \u003ca href=\"https://github.com/tndud042713\"\u003e\u003ccode\u003e@​tndud042713\u003c/code\u003e\u003c/a\u003e for reporting this!\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev20.8.7\u003c/h2\u003e\n\u003ch3\u003e:construction_worker_man: Patch fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eReplace implementing Node.js \u003ccode\u003eConsole\u003c/code\u003e with common \u003ccode\u003eIConsole\u003c/code\u003e interface to support latest version of Bun - By \u003cstrong\u003e\u003ca href=\"https://github.com/YevheniiKotyrlo\"\u003e\u003ccode\u003e@​YevheniiKotyrlo\u003c/code\u003e\u003c/a\u003e\u003c/strong\u003e in task \u003ca href=\"https://redirect.github.com/capricorn86/happy-dom/issues/1845\"\u003e#1845\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev20.8.6\u003c/h2\u003e\n\u003ch3\u003e:construction_worker_man: Patch fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eRequest.formData()\u003c/code\u003e should honor \u0026quot;Content-Type\u0026quot; header - By \u003cstrong\u003e\u003ca href=\"https://github.com/brianhelba\"\u003e\u003ccode\u003e@​brianhelba\u003c/code\u003e\u003c/a\u003e\u003c/strong\u003e in task \u003ca href=\"https://redirect.github.com/capricorn86/happy-dom/issues/2106\"\u003e#2106\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev20.8.5\u003c/h2\u003e\n\u003ch3\u003e:construction_worker_man: Patch fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFixes error thrown when modifying DOM structure in \u003ccode\u003econnectedCallback()\u003c/code\u003e - By \u003cstrong\u003e\u003ca href=\"https://github.com/capricorn86\"\u003e\u003ccode\u003e@​capricorn86\u003c/code\u003e\u003c/a\u003e\u003c/strong\u003e in task \u003ca href=\"https://redirect.github.com/capricorn86/happy-dom/issues/2110\"\u003e#2110\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev20.8.4\u003c/h2\u003e\n\u003ch3\u003e:construction_worker_man: Patch fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eReplace ConsoleConstructor import with indexed access type - By \u003cstrong\u003e\u003ca href=\"https://github.com/YevheniiKotyrlo\"\u003e\u003ccode\u003e@​YevheniiKotyrlo\u003c/code\u003e\u003c/a\u003e\u003c/strong\u003e in task \u003ca href=\"https://redirect.github.com/capricorn86/happy-dom/issues/1845\"\u003e#1845\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev20.8.3\u003c/h2\u003e\n\u003ch3\u003e:construction_worker_man: Patch fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eThrow error if event is not of type \u003ccode\u003eEvent\u003c/code\u003e in \u003ccode\u003eEventTarget.dispatchEvent()\u003c/code\u003e - By \u003cstrong\u003e\u003ca href=\"https://github.com/capricorn86\"\u003e\u003ccode\u003e@​capricorn86\u003c/code\u003e\u003c/a\u003e\u003c/strong\u003e in task \u003ca href=\"https://redirect.github.com/capricorn86/happy-dom/issues/2054\"\u003e#2054\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev20.8.2\u003c/h2\u003e\n\u003ch3\u003e:construction_worker_man: Patch fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eResets \u003ccode\u003eEvent.cancelBubble\u003c/code\u003e and \u003ccode\u003eEvent.defaultPrevented\u003c/code\u003e when calling \u003ccode\u003eEvent.initEvent()\u003c/code\u003e - By \u003cstrong\u003e\u003ca href=\"https://github.com/capricorn86\"\u003e\u003ccode\u003e@​capricorn86\u003c/code\u003e\u003c/a\u003e\u003c/strong\u003e in task \u003ca href=\"https://redirect.github.com/capricorn86/happy-dom/issues/2090\"\u003e#2090\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev20.8.1\u003c/h2\u003e\n\u003ch3\u003e:construction_worker_man: Patch fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eMake \u0026quot;inert\u0026quot; attribute block focus interactions - By \u003cstrong\u003e\u003ca href=\"https://github.com/coffeeandwork\"\u003e\u003ccode\u003e@​coffeeandwork\u003c/code\u003e\u003c/a\u003e\u003c/strong\u003e in task \u003ca href=\"https://redirect.github.com/capricorn86/happy-dom/issues/1422\"\u003e#1422\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev20.8.0\u003c/h2\u003e\n\u003ch3\u003e:art: Features\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdds support for setPointerCapture, hasPointerCapture, and releasePointerCapture to Element - By \u003cstrong\u003e\u003ca href=\"https://github.com/coffeeandwork\"\u003e\u003ccode\u003e@​coffeeandwork\u003c/code\u003e\u003c/a\u003e\u003c/strong\u003e in task \u003ca href=\"https://redirect.github.com/capricorn86/happy-dom/issues/1733\"\u003e#1733\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev20.7.2\u003c/h2\u003e\n\u003ch3\u003e:construction_worker_man: Patch fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eProperly decode CSS escape sequences in attribute selector values - By \u003cstrong\u003e\u003ca href=\"https://github.com/silverwind\"\u003e\u003ccode\u003e@​silverwind\u003c/code\u003e\u003c/a\u003e\u003c/strong\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/capricorn86/happy-dom/commit/4090adefaf116143ebabf3226581c1261c09e877\"\u003e\u003ccode\u003e4090ade\u003c/code\u003e\u003c/a\u003e fix: \u003ca href=\"https://redirect.github.com/capricorn86/happy-dom/issues/0\"\u003e#0\u003c/a\u003e Fix github release workflow (\u003ca href=\"https://redirect.github.com/capricorn86/happy-dom/issues/2140\"\u003e#2140\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/capricorn86/happy-dom/commit/c7c2bb506377f2b38218486b166b89a9b0e5b174\"\u003e\u003ccode\u003ec7c2bb5\u003c/code\u003e\u003c/a\u003e fix: \u003ca href=\"https://redirect.github.com/capricorn86/happy-dom/issues/0\"\u003e#0\u003c/a\u003e Fix github release workflow (\u003ca href=\"https://redirect.github.com/capricorn86/happy-dom/issues/2139\"\u003e#2139\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/capricorn86/happy-dom/commit/d541143d69e6593422e32c7c3853213ee04af545\"\u003e\u003ccode\u003ed541143\u003c/code\u003e\u003c/a\u003e fix: \u003ca href=\"https://redirect.github.com/capricorn86/happy-dom/issues/0\"\u003e#0\u003c/a\u003e Fix github release workflow (\u003ca href=\"https://redirect.github.com/capricorn86/happy-dom/issues/2138\"\u003e#2138\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/capricorn86/happy-dom/commit/a78d89e7e1cf77c42cb04833b9d9fba30a3e868a\"\u003e\u003ccode\u003ea78d89e\u003c/code\u003e\u003c/a\u003e feat: \u003ca href=\"https://redirect.github.com/capricorn86/happy-dom/issues/2131\"\u003e#2131\u003c/a\u003e Adds support for event listener properties on Window (\u003ca href=\"https://redirect.github.com/capricorn86/happy-dom/issues/2132\"\u003e#2132\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/capricorn86/happy-dom/commit/68324c21d7b98f53f7bb5a7b3e185bda7106e751\"\u003e\u003ccode\u003e68324c2\u003c/code\u003e\u003c/a\u003e fix: \u003ca href=\"https://redirect.github.com/capricorn86/happy-dom/issues/2117\"\u003e#2117\u003c/a\u003e Fixes issue related to cookies from the current origin being for...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/capricorn86/happy-dom/commit/5437fdf8f13adb9590f9f52616d9f69c3ee8db3c\"\u003e\u003ccode\u003e5437fdf\u003c/code\u003e\u003c/a\u003e fix: \u003ca href=\"https://redirect.github.com/capricorn86/happy-dom/issues/2113\"\u003e#2113\u003c/a\u003e Fixes issue where export names can be interpolated as executable...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/capricorn86/happy-dom/commit/7e97acbc0de9e9e8515b828bb1bb60f6c65eae44\"\u003e\u003ccode\u003e7e97acb\u003c/code\u003e\u003c/a\u003e fix: \u003ca href=\"https://redirect.github.com/capricorn86/happy-dom/issues/1845\"\u003e#1845\u003c/a\u003e Replace implementing Node js Console with common IConsole interf...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/capricorn86/happy-dom/commit/3373929819a55988218a32c06816c5754828f59d\"\u003e\u003ccode\u003e3373929\u003c/code\u003e\u003c/a\u003e fix: \u003ca href=\"https://redirect.github.com/capricorn86/happy-dom/issues/2106\"\u003e#2106\u003c/a\u003e \u003ccode\u003eRequest.formData()\u003c/code\u003e should honor \u003ccode\u003eContent-Type\u003c/code\u003e header (\u003ca href=\"https://redirect.github.com/capricorn86/happy-dom/issues/2107\"\u003e#2107\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/capricorn86/happy-dom/commit/55c17ba6d2883ce54010b041be165db8f6c5c974\"\u003e\u003ccode\u003e55c17ba\u003c/code\u003e\u003c/a\u003e fix: \u003ca href=\"https://redirect.github.com/capricorn86/happy-dom/issues/2110\"\u003e#2110\u003c/a\u003e Fixes error thrown when modifying DOM structure in connectedCall...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/capricorn86/happy-dom/commit/82a0888cb2c87a6123e05424b528f8e8c9b3e426\"\u003e\u003ccode\u003e82a0888\u003c/code\u003e\u003c/a\u003e fix: \u003ca href=\"https://redirect.github.com/capricorn86/happy-dom/issues/1845\"\u003e#1845\u003c/a\u003e Replace ConsoleConstructor import with indexed access type (\u003ca href=\"https://redirect.github.com/capricorn86/happy-dom/issues/2095\"\u003e#2095\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/capricorn86/happy-dom/compare/v20.6.2...v20.9.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eMaintainer changes\u003c/summary\u003e\n\u003cp\u003eThis version was pushed to npm by \u003ca href=\"https://www.npmjs.com/~GitHub%20Actions\"\u003eGitHub Actions\u003c/a\u003e, a new releaser for happy-dom since your current version.\u003c/p\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `jiti` from 2.6.1 to 2.7.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/unjs/jiti/releases\"\u003ejiti's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev2.7.0\u003c/h2\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/unjs/jiti/compare/v2.6.1...v2.7.0\"\u003ecompare changes\u003c/a\u003e\u003c/p\u003e\n\u003ch3\u003e🚀 Enhancements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd explicit resource management (\u003ccode\u003eusing\u003c/code\u003e/\u003ccode\u003eawait using\u003c/code\u003e) support (\u003ca href=\"https://redirect.github.com/unjs/jiti/pull/422\"\u003e#422\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSupport opt-in \u003ccode\u003etsconfigPaths\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/unjs/jiti/pull/427\"\u003e#427\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSupport virtual modules (\u003ca href=\"https://redirect.github.com/unjs/jiti/pull/428\"\u003e#428\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003ejiti/static\u003c/code\u003e subpath (\u003ca href=\"https://redirect.github.com/unjs/jiti/pull/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🔥 Performance\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003einteropDefault:\u003c/strong\u003e Add caching to reduce proxy overhead by ~2x (\u003ca href=\"https://redirect.github.com/unjs/jiti/pull/421\"\u003e#421\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🩹 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003erequire:\u003c/strong\u003e Passthrough resolve options (\u003ca href=\"https://redirect.github.com/unjs/jiti/pull/412\"\u003e#412\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003erequire:\u003c/strong\u003e Fallback to transpilation when \u003ccode\u003etryNative\u003c/code\u003e fails (\u003ca href=\"https://redirect.github.com/unjs/jiti/pull/413\"\u003e#413\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFallback for \u003ccode\u003eENAMETOOLONG\u003c/code\u003e when evaluating esm (\u003ca href=\"https://redirect.github.com/unjs/jiti/pull/429\"\u003e#429\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e📦 Build\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpgrade rspack to v2 (\u003ca href=\"https://github.com/unjs/jiti/commit/55194fb\"\u003e55194fb\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eExperimental rolldown config (\u003ca href=\"https://github.com/unjs/jiti/commit/8c0243f\"\u003e8c0243f\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e✅ Tests\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eIgnore jsx test for bun/cjs (\u003ca href=\"https://github.com/unjs/jiti/commit/3a744ca\"\u003e3a744ca\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e❤️ Contributors\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003ePooya Parsa (\u003ca href=\"https://github.com/pi0\"\u003e\u003ccode\u003e@​pi0\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eKricsleo (\u003ca href=\"https://github.com/kricsleo\"\u003e\u003ccode\u003e@​kricsleo\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eEspen Hovlandsdal (\u003ca href=\"https://github.com/rexxars\"\u003e\u003ccode\u003e@​rexxars\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRintaro Itokawa (\u003ca href=\"https://github.com/re-taro\"\u003e\u003ccode\u003e@​re-taro\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eMatteo Collina (\u003ca href=\"https://github.com/mcollina\"\u003e\u003ccode\u003e@​mcollina\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eMario Zechner (\u003ca href=\"https://github.com/badlogic\"\u003e\u003ccode\u003e@​badlogic\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/unjs/jiti/blob/main/CHANGELOG.md\"\u003ejiti's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev2.7.0\u003c/h2\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/unjs/jiti/compare/v2.6.1...v2.7.0\"\u003ecompare changes\u003c/a\u003e\u003c/p\u003e\n\u003ch3\u003e🚀 Enhancements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd explicit resource management (using/await using) support (\u003ca href=\"https://redirect.github.com/unjs/jiti/pull/422\"\u003e#422\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSupport opt-in \u003ccode\u003etsconfigPaths\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/unjs/jiti/pull/427\"\u003e#427\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSupport virtual modules option (\u003ca href=\"https://redirect.github.com/unjs/jiti/pull/428\"\u003e#428\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003ejiti/static\u003c/code\u003e export (\u003ca href=\"https://redirect.github.com/unjs/jiti/pull/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🔥 Performance\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003einteropDefault:\u003c/strong\u003e Add caching to reduce proxy overhead by ~2x (\u003ca href=\"https://redirect.github.com/unjs/jiti/pull/421\"\u003e#421\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🩹 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003erequire:\u003c/strong\u003e Passthrough resolve options (\u003ca href=\"https://redirect.github.com/unjs/jiti/pull/412\"\u003e#412\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eci:\u003c/strong\u003e Skip \u003ccode\u003e--coverage\u003c/code\u003e flag for node 18 (\u003ca href=\"https://github.com/unjs/jiti/commit/fe264b4\"\u003efe264b4\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003erequire:\u003c/strong\u003e Fallback to transpilation when \u003ccode\u003etryNative\u003c/code\u003e fails (\u003ca href=\"https://redirect.github.com/unjs/jiti/pull/413\"\u003e#413\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFallback for \u003ccode\u003eENAMETOOLONG\u003c/code\u003e when evaluating esm (\u003ca href=\"https://redirect.github.com/unjs/jiti/pull/429\"\u003e#429\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e📦 Build\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpgrade rspack (\u003ca href=\"https://github.com/unjs/jiti/commit/55194fb\"\u003e55194fb\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eExperimental rolldown config (\u003ca href=\"https://github.com/unjs/jiti/commit/8c0243f\"\u003e8c0243f\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🏡 Chore\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix lint issues (\u003ca href=\"https://github.com/unjs/jiti/commit/4045c7a\"\u003e4045c7a\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eUpdate deps (\u003ca href=\"https://github.com/unjs/jiti/commit/e88ac44\"\u003ee88ac44\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eUpdate deps (\u003ca href=\"https://github.com/unjs/jiti/commit/498e8d7\"\u003e498e8d7\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd missing prettier dep (\u003ca href=\"https://github.com/unjs/jiti/commit/650bc48\"\u003e650bc48\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eLint (\u003ca href=\"https://github.com/unjs/jiti/commit/058d91a\"\u003e058d91a\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eInit agents.md (\u003ca href=\"https://github.com/unjs/jiti/commit/c49c54e\"\u003ec49c54e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eUpdate agents.md (\u003ca href=\"https://github.com/unjs/jiti/commit/4deba16\"\u003e4deba16\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eUpdate deps (\u003ca href=\"https://github.com/unjs/jiti/commit/08fc868\"\u003e08fc868\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eUpdate tsconfig (\u003ca href=\"https://github.com/unjs/jiti/commit/8c7822e\"\u003e8c7822e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eUpdate release script (\u003ca href=\"https://github.com/unjs/jiti/commit/27fe3f2\"\u003e27fe3f2\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e✅ Tests\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eIgnore jsx test for bun/cjs (\u003ca href=\"https://github.com/unjs/jiti/commit/3a744ca\"\u003e3a744ca\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eUpdate (\u003ca href=\"https://github.com/unjs/jiti/commit/9ee314f\"\u003e9ee314f\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🤖 CI\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpdate node test matrix (\u003ca href=\"https://github.com/unjs/jiti/commit/0abda72\"\u003e0abda72\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e❤️ Contributors\u003c/h3\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/unjs/jiti/commit/fd3bb289b75ed207edfb686d671ed50144f7e90f\"\u003e\u003ccode\u003efd3bb28\u003c/code\u003e\u003c/a\u003e chore(release): v2.7.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/unjs/jiti/commit/27fe3f2a496b712674061c767f21ceaf34d39d83\"\u003e\u003ccode\u003e27fe3f2\u003c/code\u003e\u003c/a\u003e chore: update release script\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/unjs/jiti/commit/4fcd2f23aa31d2e1ece4b307350b8c1d72a26870\"\u003e\u003ccode\u003e4fcd2f2\u003c/code\u003e\u003c/a\u003e fix: fallback for \u003ccode\u003eENAMETOOLONG\u003c/code\u003e when evaluating esm (\u003ca href=\"https://redirect.github.com/unjs/jiti/issues/429\"\u003e#429\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/unjs/jiti/commit/8c0243f14e65193fceb023b81aed5c9a820ee2cb\"\u003e\u003ccode\u003e8c0243f\u003c/code\u003e\u003c/a\u003e build: experimental rolldown config\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/unjs/jiti/commit/55194fbb97b56af50ae1c19735ee3b06110b3903\"\u003e\u003ccode\u003e55194fb\u003c/code\u003e\u003c/a\u003e build: upgrade rspack\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/unjs/jiti/commit/0abda72c11fa31654ae17f255f9a854e4b706018\"\u003e\u003ccode\u003e0abda72\u003c/code\u003e\u003c/a\u003e ci: update node test matrix\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/unjs/jiti/commit/8c7822ef2ff03669c31de2fedfcf6676970f5b2a\"\u003e\u003ccode\u003e8c7822e\u003c/code\u003e\u003c/a\u003e chore: update tsconfig\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/unjs/jiti/commit/08fc868c928d65fb615800e51b0ec1ac78f83a69\"\u003e\u003ccode\u003e08fc868\u003c/code\u003e\u003c/a\u003e chore: update deps\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/unjs/jiti/commit/5d552e3bebf9ffcd3fb9f176364fce7b4e35134d\"\u003e\u003ccode\u003e5d552e3\u003c/code\u003e\u003c/a\u003e feat: add \u003ccode\u003ejiti/static\u003c/code\u003e export (\u003ca href=\"https://redirect.github.com/unjs/jiti/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/unjs/jiti/commit/ae790b0214512857e40e8b3078b63a7d65f7f2c9\"\u003e\u003ccode\u003eae790b0\u003c/code\u003e\u003c/a\u003e feat: support virtual modules option (\u003ca href=\"https://redirect.github.com/unjs/jiti/issues/428\"\u003e#428\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/unjs/jiti/compare/v2.6.1...v2.7.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `lint-staged` from 16.2.7 to 17.0.4\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/lint-staged/lint-staged/releases\"\u003elint-staged's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev17.0.4\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/lint-staged/lint-staged/pull/1788\"\u003e#1788\u003c/a\u003e \u003ca href=\"https://github.com/lint-staged/lint-staged/commit/f95c1f8df3368758c44c2052e568aac1b3d4c767\"\u003e\u003ccode\u003ef95c1f8\u003c/code\u003e\u003c/a\u003e - Another fix for making sure \u003cem\u003elint-staged\u003c/em\u003e adds task modifications correctly to the commit in the following cases:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eafter editing \u003ccode\u003e\u0026lt;file\u0026gt;\u003c/code\u003e it is staged with \u003ccode\u003egit add \u0026lt;file\u0026gt;\u003c/code\u003e, and then committed with \u003ccode\u003egit commit\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eafter editing \u003ccode\u003e\u0026lt;file\u0026gt;\u003c/code\u003e it is committed with \u003ccode\u003egit commit --all\u003c/code\u003e without explicit \u003ccode\u003egit add\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eafter editing \u003ccode\u003e\u0026lt;file\u0026gt;\u003c/code\u003e it is committed with \u003ccode\u003egit commit \u0026lt;pathspec\u0026gt;\u003c/code\u003e without explicit \u003ccode\u003egit add\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eThere's new test cases which actually setup the Git \u003ccode\u003epre_commit\u003c/code\u003e hook to run \u003cem\u003elint-staged\u003c/em\u003e and verify them. These issues started in \u003cstrong\u003ev17.0.0\u003c/strong\u003e when trying to improve support for committig without having explicitly staged files.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev17.0.3\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/lint-staged/lint-staged/pull/1782\"\u003e#1782\u003c/a\u003e \u003ca href=\"https://github.com/lint-staged/lint-staged/commit/06813f9ab661db987e7720086ef9ec3f552ee097\"\u003e\u003ccode\u003e06813f9\u003c/code\u003e\u003c/a\u003e Thanks \u003ca href=\"https://github.com/iiroj\"\u003e\u003ccode\u003e@​iiroj\u003c/code\u003e\u003c/a\u003e! - Fix \u003cem\u003elint-staged\u003c/em\u003e behavior when implicitly committing files without using \u003ccode\u003egit add\u003c/code\u003e by either:\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003egit commit -am \u0026quot;my commit message\u0026quot;\u003c/code\u003e where \u003ccode\u003e-a\u003c/code\u003e (\u003ccode\u003e--all\u003c/code\u003e) means to automatically stage all tracked modified and deleted files\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003egit commit -m \u0026quot;my commit message\u0026quot; .\u003c/code\u003e where \u003ccode\u003e.\u003c/code\u003e is an example of a \u003ca href=\"https://git-scm.com/docs/git-commit#Documentation/git-commit.txt-pathspec\"\u003e\u003cem\u003epathspec\u003c/em\u003e\u003c/a\u003e where matching files will be staged\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev17.0.2\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/lint-staged/lint-staged/pull/1779\"\u003e#1779\u003c/a\u003e \u003ca href=\"https://github.com/lint-staged/lint-staged/commit/88670ca2278200f6348ed663358895ddc4bfff3c\"\u003e\u003ccode\u003e88670ca\u003c/code\u003e\u003c/a\u003e Thanks \u003ca href=\"https://github.com/iiroj\"\u003e\u003ccode\u003e@​iiroj\u003c/code\u003e\u003c/a\u003e! - Enable immutable GitHub releases\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev17.0.1\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/lint-staged/lint-staged/pull/1776\"\u003e#1776\u003c/a\u003e \u003ca href=\"https://github.com/lint-staged/lint-staged/commit/4a5664be63af19590ec37940f705dad870ac5cfb\"\u003e\u003ccode\u003e4a5664b\u003c/code\u003e\u003c/a\u003e Thanks \u003ca href=\"https://github.com/iiroj\"\u003e\u003ccode\u003e@​iiroj\u003c/code\u003e\u003c/a\u003e! - Adjust GitHub Actions workflow so that automatic publishing works with signed commits.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev17.0.0\u003c/h2\u003e\n\u003ch3\u003eMajor Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/lint-staged/lint-staged/pull/1745\"\u003e#1745\u003c/a\u003e \u003ca href=\"https://github.com/lint-staged/lint-staged/commit/e244adfab430be95803e74b20acf518517054c9f\"\u003e\u003ccode\u003ee244adf\u003c/code\u003e\u003c/a\u003e Thanks \u003ca href=\"https://github.com/iiroj\"\u003e\u003ccode\u003e@​iiroj\u003c/code\u003e\u003c/a\u003e! - \u003cstrong\u003eNode.js v20 is no longer supported, and the oldest supported version is now \u003ccode\u003e22.22.1\u003c/code\u003e\u003c/strong\u003e, which is an active LTS version at the time of this release. Node.js 20 will be EOL after April 2026. Please upgrade your Node.js version!\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/lint-staged/lint-staged/pull/1676\"\u003e#1676\u003c/a\u003e \u003ca href=\"https://github.com/lint-staged/lint-staged/commit/0584e0b8824a07ea4d0151f2c17fc37c4905a421\"\u003e\u003ccode\u003e0584e0b\u003c/code\u003e\u003c/a\u003e Thanks \u003ca href=\"https://github.com/outslept\"\u003e\u003ccode\u003e@​outslept\u003c/code\u003e\u003c/a\u003e! - \u003cem\u003eLint-staged\u003c/em\u003e now tries to verify the installed Git version is at least \u003ccode\u003e2.32.0\u003c/code\u003e, released in 2021. If you're using an even older Git version, you need to \u003ca href=\"https://git-scm.com/install/mac\"\u003eupgrade\u003c/a\u003e it before running \u003cem\u003elint-staged\u003c/em\u003e!\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/lint-staged/lint-staged/pull/1745\"\u003e#1745\u003c/a\u003e \u003ca href=\"https://github.com/lint-staged/lint-staged/commit/2dcc40a1a98aea20d38f76031ac30b278f81682a\"\u003e\u003ccode\u003e2dcc40a\u003c/code\u003e\u003c/a\u003e Thanks \u003ca href=\"https://github.com/iiroj\"\u003e\u003ccode\u003e@​iiroj\u003c/code\u003e\u003c/a\u003e! - The dependency \u003ccode\u003eyaml\u003c/code\u003e is now marked as optional and probably won't be installed by default. If you're using a YAML configuration file you should install the package separately:\u003c/p\u003e\n\u003cpre lang=\"shell\"\u003e\u003ccode\u003enpm install --development yaml\r\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eIf you're using \u003ccode\u003e.lintstagedrc\u003c/code\u003e as the config file name (without a file extension), it will be treated as a YAML file. If the content is JSON, consider renaming it to \u003ccode\u003e.lintstagedrc.json\u003c/code\u003e to avoid needing to install \u003ccode\u003eyaml\u003c/code\u003e.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eMinor Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/lint-staged/lint-staged/pull/1748\"\u003e#1748\u003c/a\u003e \u003ca href=\"https://github.com/lint-staged/lint-staged/commit/809d5ef0a66edb2b26b233d33ce8e14af6c978e7\"\u003e\u003ccode\u003e809d5ef\u003c/code\u003e\u003c/a\u003e Thanks \u003ca href=\"https://github.com/iiroj\"\u003e\u003ccode\u003e@​iiroj\u003c/code\u003e\u003c/a\u003e! - Add new option \u003ccode\u003e--hide-all\u003c/code\u003e for hiding all unstaged changes and untracked files, before running tasks. This makes it easier to run tools like \u003ca href=\"https://knip.dev\"\u003eKnip\u003c/a\u003e which check for unused code. Untracked files are included in the backup stash and restored automatically after running.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/lint-staged/lint-staged/pull/1759\"\u003e#1759\u003c/a\u003e \u003ca href=\"https://github.com/lint-staged/lint-staged/commit/f13045a5eae28c3233fc37146b0e1f51739c254b\"\u003e\u003ccode\u003ef13045a\u003c/code\u003e\u003c/a\u003e Thanks \u003ca href=\"https://github.com/iiroj\"\u003e\u003ccode\u003e@​iiroj\u003c/code\u003e\u003c/a\u003e! - Update dependencies, including \u003ca href=\"https://github.com/tinylibs/tinyexec/releases/tag/1.1.1\"\u003e\u003ccode\u003etinyexec@1.1.1\u003c/code\u003e\u003c/a\u003e to fix the following issues:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eWhen using a Node.js version manager with multiple versions installed (\u003ca href=\"https://github.com/nvm-sh/nvm\"\u003envm\u003c/a\u003e, \u003ca href=\"https://github.com/tj/n\"\u003en\u003c/a\u003e, for example), scripts with the \u003ccode\u003e#!/usr/bin/env node\u003c/code\u003e shebang (\u003ca href=\"https://github.com/prettier/prettier\"\u003ePrettier\u003c/a\u003e, \u003ca href=\"https://github.com/eslint/eslint\"\u003eESLint\u003c/a\u003e, for example) were previously spawned using the default Node.js version configured by the version manager (the one \u003ccode\u003ewhich node\u003c/code\u003e points to) on POSIX systems. Now, they will be spawned with the same version that \u003cem\u003elint-staged\u003c/em\u003e itself was started with.\n\u003cul\u003e\n\u003cli\u003eFor example, if your default Node.js version is 24.14.1 but \u003cem\u003elint-staged\u003c/em\u003e is run with the latest version 25.9.0, the tasks spawned by \u003cem\u003elint-staged\u003c/em\u003e will now also use version 25.9.0. Previously they were spawned using 24.14.1.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/lint-staged/lint-staged/blob/main/CHANGELOG.md\"\u003elint-staged's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e17.0.4\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/lint-staged/lint-staged/pull/1788\"\u003e#1788\u003c/a\u003e \u003ca href=\"https://github.com/lint-staged/lint-staged/commit/f95c1f8df3368758c44c2052e568aac1b3d4c767\"\u003e\u003ccode\u003ef95c1f8\u003c/code\u003e\u003c/a\u003e - Another fix for making sure \u003cem\u003elint-staged\u003c/em\u003e adds task modifications correctly to the commit in the following cases:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eafter editing \u003ccode\u003e\u0026lt;file\u0026gt;\u003c/code\u003e it is staged with \u003ccode\u003egit add \u0026lt;file\u0026gt;\u003c/code\u003e, and then committed with \u003ccode\u003egit commit\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eafter editing \u003ccode\u003e\u0026lt;file\u0026gt;\u003c/code\u003e it is committed with \u003ccode\u003egit commit --all\u003c/code\u003e without explicit \u003ccode\u003egit add\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eafter editing \u003ccode\u003e\u0026lt;file\u0026gt;\u003c/code\u003e it is committed with \u003ccode\u003egit commit \u0026lt;pathspec\u0026gt;\u003c/code\u003e without explicit \u003ccode\u003egit add\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eThere's new test cases which actually setup the Git \u003ccode\u003epre_commit\u003c/code\u003e hook to run \u003cem\u003elint-staged\u003c/em\u003e and verify them. These issues started in \u003cstrong\u003ev17.0.0\u003c/strong\u003e when trying to improve support for committig without having explicitly staged files.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e17.0.3\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/lint-staged/lint-staged/pull/1782\"\u003e#1782\u003c/a\u003e \u003ca href=\"https://github.com/lint-staged/lint-staged/commit/06813f9ab661db987e7720086ef9ec3f552ee097\"\u003e\u003ccode\u003e06813f9\u003c/code\u003e\u003c/a\u003e Thanks \u003ca href=\"https://github.com/iiroj\"\u003e\u003ccode\u003e@​iiroj\u003c/code\u003e\u003c/a\u003e! - Fix \u003cem\u003elint-staged\u003c/em\u003e behavior when implicitly committing files without using \u003ccode\u003egit add\u003c/code\u003e by either:\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003egit commit -am \u0026quot;my commit message\u0026quot;\u003c/code\u003e where \u003ccode\u003e-a\u003c/code\u003e (\u003ccode\u003e--all\u003c/code\u003e) means to automatically stage all tracked modified and deleted files\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003egit commit -m \u0026quot;my commit message\u0026quot; .\u003c/code\u003e where \u003ccode\u003e.\u003c/code\u003e is an example of a \u003ca href=\"https://git-scm.com/docs/git-commit#Documentation/git-commit.txt-pathspec\"\u003e\u003cem\u003epathspec\u003c/em\u003e\u003c/a\u003e where matching files will be staged\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e17.0.2\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/lint-staged/lint-staged/pull/1779\"\u003e#1779\u003c/a\u003e \u003ca href=\"https://github.com/lint-staged/lint-staged/commit/88670ca2278200f6348ed663358895ddc4bfff3c\"\u003e\u003ccode\u003e88670ca\u003c/code\u003e\u003c/a\u003e Thanks \u003ca href=\"https://github.com/iiroj\"\u003e\u003ccode\u003e@​iiroj\u003c/code\u003e\u003c/a\u003e! - Enable immutable GitHub releases\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e17.0.1\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/lint-staged/lint-staged/pull/1776\"\u003e#1776\u003c/a\u003e \u003ca href=\"https://github.com/lint-staged/lint-staged/commit/4a5664be63af19590ec37940f705dad870ac5cfb\"\u003e\u003ccode\u003e4a5664b\u003c/code\u003e\u003c/a\u003e Thanks \u003ca href=\"https://github.com/iiroj\"\u003e\u003ccode\u003e@​iiroj\u003c/code\u003e\u003c/a\u003e! - Adjust GitHub Actions workflow so that automatic publishing works with signed commits.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e17.0.0\u003c/h2\u003e\n\u003ch3\u003eMajor Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/lint-staged/lint-staged/pull/1745\"\u003e#1745\u003c/a\u003e \u003ca href=\"https://github.com/lint-staged/lint-staged/commit/e244adfab430be95803e74b20acf518517054c9f\"\u003e\u003ccode\u003ee244adf\u003c/code\u003e\u003c/a\u003e Thanks \u003ca href=\"https://github.com/iiroj\"\u003e\u003ccode\u003e@​iiroj\u003c/code\u003e\u003c/a\u003e! - \u003cstrong\u003eNode.js v20 is no longer supported, and the oldest supported version is now \u003ccode\u003e22.22.1\u003c/code\u003e\u003c/strong\u003e, which is an active LTS version at the time of this release. Node.js 20 will be EOL after April 2026. Please upgrade your Node.js version!\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/lint-staged/lint-staged/pull/1676\"\u003e#1676\u003c/a\u003e \u003ca href=\"https://github.com/lint-staged/lint-staged/commit/0584e0b8824a07ea4d0151f2c17fc37c4905a421\"\u003e\u003ccode\u003e0584e0b\u003c/code\u003e\u003c/a\u003e Thanks \u003ca href=\"https://github.com/outslept\"\u003e\u003ccode\u003e@​outslept\u003c/code\u003e\u003c/a\u003e! - \u003cem\u003eLint-staged\u003c/em\u003e now tries to verify the installed Git version is at least \u003ccode\u003e2.32.0\u003c/code\u003e, released in 2021. If you're using an even older Git version, you need to \u003ca href=\"https://git-scm.com/install/mac\"\u003eupgrade\u003c/a\u003e it before running \u003cem\u003elint-staged\u003c/em\u003e!\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/lint-staged/lint-staged/pull/1745\"\u003e#1745\u003c/a\u003e \u003ca href=\"https://github.com/lint-staged/lint-staged/commit/2dcc40a1a98aea20d38f76031ac30b278f81682a\"\u003e\u003ccode\u003e2dcc40a\u003c/code\u003e\u003c/a\u003e Thanks \u003ca href=\"https://github.com/iiroj\"\u003e\u003ccode\u003e@​iiroj\u003c/code\u003e\u003c/a\u003e! - The dependency \u003ccode\u003eyaml\u003c/code\u003e is now marked as optional and probably won't be installed by default. If you're using a YAML configuration file you should install the package separately:\u003c/p\u003e\n\u003cpre lang=\"shell\"\u003e\u003ccode\u003enpm install --development yaml\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eIf you're using \u003ccode\u003e.lintstagedrc\u003c/code\u003e as the config file name (without a file extension), it will be treated as a YAML file. If the content is JSON, consider renaming it to \u003ccode\u003e.lintstagedrc.json\u003c/code\u003e to avoid needing to install \u003ccode\u003eyaml\u003c/code\u003e.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eMinor Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/lint-staged/lint-staged/pull/1748\"\u003e#1748\u003c/a\u003e \u003ca href=\"https://github.com/lint-staged/lint-staged/commit/809d5ef0a66edb2b26b233d33ce8e14af6c978e7\"\u003e\u003ccode\u003e809d5ef\u003c/code\u003e\u003c/a\u003e Thanks \u003ca href=\"https://github.com/iiroj\"\u003e\u003ccode\u003e@​iiroj\u003c/code\u003e\u003c/a\u003e! - Add new option \u003ccode\u003e--hide-all\u003c/code\u003e for hiding all unstaged changes and untracked files, before running tasks. This makes it easier to run tools like \u003ca href=\"https://knip.dev\"\u003eKnip\u003c/a\u003e which check for unused code. Untracked files are included in the backup stash and restored automatically after running.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/lint-staged/lint-staged/commit/2862964b2429df8df2aae05ff7b73cf69f440c90\"\u003e\u003ccode\u003e2862964\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/lint-staged/lint-staged/issues/1789\"\u003e#1789\u003c/a\u003e from lint-staged/changeset-release/main\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/lint-staged/lint-staged/commit/c9ecd54417e1fb698fba0377c912a5ac819a51b8\"\u003e\u003ccode\u003ec9ecd54\u003c/code\u003e\u003c/a\u003e chore(changeset): release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/lint-staged/lint-staged/commit/cc6b51ab2d1564ebe27f47a9eba02b74353805bc\"\u003e\u003ccode\u003ecc6b51a\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/lint-staged/lint-staged/issues/1788\"\u003e#1788\u003c/a\u003e from lint-staged/fix-update-index-again\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/lint-staged/lint-staged/commit/f95c1f8df3368758c44c2052e568aac1b3d4c767\"\u003e\u003ccode\u003ef95c1f8\u003c/code\u003e\u003c/a\u003e fix: update both default index.lock and non-standard lock when latter exists\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/lint-staged/lint-staged/commit/f44ee688dd1c7070f32cde8ca1f910d7f8a96e3e\"\u003e\u003ccode\u003ef44ee68\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/lint-staged/lint-staged/issues/1786\"\u003e#1786\u003c/a\u003e from lint-staged/update-repo-url\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/lint-staged/lint-staged/commit/a61cf18ea5af3bfa06623bed1f80217fe3865871\"\u003e\u003ccode\u003ea61cf18\u003c/code\u003e\u003c/a\u003e build(deps): update dependencies\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/lint-staged/lint-staged/commit/ea00037e1f399f7b36252e0c558c9d3dbb026435\"\u003e\u003ccode\u003eea00037\u003c/code\u003e\u003c/a\u003e docs: disable Changesets \u0026quot;thanks\u0026quot;\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/lint-staged/lint-staged/commit/ab7c26c826f9e97823bab42aac0515f2b4b9f0f6\"\u003e\u003ccode\u003eab7c26c\u003c/code\u003e\u003c/a\u003e docs: update repo URL to point in \u003ccode\u003elint-staged/lint-staged\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/lint-staged/lint-staged/commit/a36ec1eab4e2a24f7599377a11b0b3cb0f692bd0\"\u003e\u003ccode\u003ea36ec1e\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/lint-staged/lint-staged/issues/1783\"\u003e#1783\u003c/a\u003e from lint-staged/changeset-release/main\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/lint-staged/lint-staged/commit/03ce2a9dea52523f3cc69bf279d1049558859272\"\u003e\u003ccode\u003e03ce2a9\u003c/code\u003e\u003c/a\u003e chore(changeset): release\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/lint-staged/lint-staged/compare/v16.2.7...v17.0.4\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `mermaid` from 11.12.3 to 11.14.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/mermaid-js/mermaid/releases\"\u003emermaid's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003emermaid@11.14.0\u003c/h2\u003e\n\u003cp\u003eThanks to our awesome mermaid community that contributed to this release: \u003ca href=\"https://github.com/ashishjain0512\"\u003e\u003ccode\u003e@​ashishjain0512\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/tractorjuice\"\u003e\u003ccode\u003e@​tractorjuice\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/autofix-ci%5Bbot%5D\"\u003e\u003ccode\u003e@​autofix-ci[bot]\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/aloisklink\"\u003e\u003ccode\u003e@​aloisklink\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/knsv\"\u003e\u003ccode\u003e@​knsv\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/kibanana\"\u003e\u003ccode\u003e@​kibanana\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/chandershekhar22\"\u003e\u003ccode\u003e@​chandershekhar22\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/khalil\"\u003e\u003ccode\u003e@​khalil\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/ytatsuno\"\u003e\u003ccode\u003e@​ytatsuno\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/sidharthv96\"\u003e\u003ccode\u003e@​sidharthv96\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/github-actions%5Bbot%5D\"\u003e\u003ccode\u003e@​github-actions[bot]\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/dripcoding\"\u003e\u003ccode\u003e@​dripcoding\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/knsv-bot\"\u003e\u003ccode\u003e@​knsv-bot\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/jeroensmink98\"\u003e\u003ccode\u003e@​jeroensmink98\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/Alex9583\"\u003e\u003ccode\u003e@​Alex9583\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/GhassenS\"\u003e\u003ccode\u003e@​GhassenS\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/omkarht\"\u003e\u003ccode\u003e@​omkarht\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/darshanr0107\"\u003e\u003ccode\u003e@​darshanr0107\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/leentaylor\"\u003e\u003ccode\u003e@​leentaylor\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/lee-treehouse\"\u003e\u003ccode\u003e@​lee-treehouse\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/veeceey\"\u003e\u003ccode\u003e@​veeceey\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/turntrout\"\u003e\u003ccode\u003e@​turntrout\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/Mermaid-Chart\"\u003e\u003ccode\u003e@​Mermaid-Chart\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/BambioGaming\"\u003e\u003ccode\u003e@​BambioGaming\u003c/code\u003e\u003c/a\u003e, Claude\u003c/p\u003e\n\u003ch1\u003eReleases\u003c/h1\u003e\n\u003ch2\u003e\u003ccode\u003e@​mermaid-js/examples\u003c/code\u003e\u003ca href=\"https://github.com/1\"\u003e\u003ccode\u003e@​1\u003c/code\u003e\u003c/a\u003e.2.0\u003c/h2\u003e\n\u003ch3\u003eMinor Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/mermaid-js/mermaid/pull/7526\"\u003e#7526\u003c/a\u003e \u003ca href=\"https://github.com/mermaid-js/mermaid/commit/efe218a47fb5a4c2bd5489b48ce69213b141e519\"\u003e\u003ccode\u003eefe218a\u003c/code\u003e\u003c/a\u003e - add new TreeView diagram\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003emermaid@11.14.0\u003c/h2\u003e\n\u003ch3\u003eMinor Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/mermaid-js/mermaid/pull/7526\"\u003e#7526\u003c/a\u003e \u003ca href=\"https://github.com/mermaid-js/mermaid/commit/efe218a47fb5a4c2bd5489b48ce69213b141e519\"\u003e\u003ccode\u003eefe218a\u003c/code\u003e\u003c/a\u003e - Add Wardley Maps diagram type (beta)\u003c/p\u003e\n\u003cp\u003eAdds Wardley Maps as a new diagram type to Mermaid (available as \u003ccode\u003ewardley-beta\u003c/code\u003e). Wardley Maps are visual representations of business strategy that help map value chains and component evolution.\u003c/p\u003e\n\u003cp\u003eFeatures:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eComponent positioning with [visibility, evolution] coordinates (OWM format)\u003c/li\u003e\n\u003cli\u003eAnchors for users/customers\u003c/li\u003e\n\u003cli\u003eMultiple link types: dependencies, flows, labeled links\u003c/li\u003e\n\u003cli\u003eEvolution arrows and trend indicators\u003c/li\u003e\n\u003cli\u003eCustom evolution stages with optional dual labels\u003c/li\u003e\n\u003cli\u003eCustom stage widths using \u003ca href=\"https://github.com/boundary\"\u003e\u003ccode\u003e@​boundary\u003c/code\u003e\u003c/a\u003e notation\u003c/li\u003e\n\u003cli\u003ePipeline components with visibility inheritance\u003c/li\u003e\n\u003cli\u003eAnnotations, notes, and visual elements\u003c/li\u003e\n\u003cli\u003eSource strategy markers: build, buy, outsource, market\u003c/li\u003e\n\u003cli\u003eInertia indicators\u003c/li\u003e\n\u003cli\u003eTheme integration\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eImplementation includes parser, D3.js renderer, unit tests, E2E tests, and comprehensive documentation.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/mermaid-js/mermaid/pull/7526\"\u003e#7526\u003c/a\u003e \u003ca href=\"https://github.com/mermaid-js/mermaid/commit/efe218a47fb5a4c2bd5489b48ce69213b141e519\"\u003e\u003ccode\u003eefe218a\u003c/code\u003e\u003c/a\u003e  - feat: implement neo look styling for state diagrams\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/mermaid-js/mermaid/pull/7526\"\u003e#7526\u003c/a\u003e \u003ca href=\"https://github.com/mermaid-js/mermaid/commit/efe218a47fb5a4c2bd5489b48ce69213b141e519\"\u003e\u003ccode\u003eefe218a\u003c/code\u003e\u003c/a\u003e  - feat: implement neo look support for sequence diagrams with drop shadows, and enhanced styling\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/mermaid-js/mermaid/pull/7526\"\u003e#7526\u003c/a\u003e \u003ca href=\"https://github.com/mermaid-js/mermaid/commit/efe218a47fb5a4c2bd5489b48ce69213b141e519\"\u003e\u003ccode\u003eefe218a\u003c/code\u003e\u003c/a\u003e  - feat: add \u003ccode\u003erandomize\u003c/code\u003e config option for architecture diagrams, defaulting to \u003ccode\u003efalse\u003c/code\u003e for deterministic layout\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/mermaid-js/mermaid/pull/7526\"\u003e#7526\u003c/a\u003e \u003ca href=\"https://github.com/mermaid-js/mermaid/commit/efe218a47fb5a4c2bd5489b48ce69213b141e519\"\u003e\u003ccode\u003eefe218a\u003c/code\u003e\u003c/a\u003e - feat: Add option to change timeline direction\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/mermaid-js/mermaid/pull/7526\"\u003e#7526\u003c/a\u003e \u003ca href=\"https://github.com/mermaid-js/mermaid/commit/efe218a47fb5a4c2bd5489b48ce69213b141e519\"\u003e\u003ccode\u003eefe218a\u003c/code\u003e\u003c/a\u003e  - Fix duplicate SVG element IDs when rendering multiple diagrams on the same page. Internal element IDs (nodes, edges, markers, clusters) are now prefixed with the diagram's SVG element ID across all diagram types. Custom CSS or JS using exact ID selectors like \u003ccode\u003e#arrowhead\u003c/code\u003e should use attribute-ending selectors like \u003ccode\u003e[id$=\u0026quot;-arrowhead\u0026quot;]\u003c/code\u003e instead.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/mermaid-js/mermaid/pull/7526\"\u003e#7526\u003c/a\u003e \u003ca href=\"https://github.com/mermaid-js/mermaid/commit/efe218a47fb5a4c2bd5489b48ce69213b141e519\"\u003e\u003ccode\u003eefe218a\u003c/code\u003e\u003c/a\u003e  - feat: implement neo look styling for ER diagrams\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/mermaid-js/mermaid/pull/7526\"\u003e#7526\u003c/a\u003e \u003ca href=\"https://github.com/mermaid-js/mermaid/commit/efe218a47fb5a4c2bd5489b48ce69213b141e519\"\u003e\u003ccode\u003eefe218a\u003c/code\u003e\u003c/a\u003e  - feat: implement neo look styling for requirement diagrams\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/mermaid-js/mermaid/pull/7526\"\u003e#7526\u003c/a\u003e \u003ca href=\"https://github.com/mermaid-js/mermaid/commit/efe218a47fb5a4c2bd5489b48ce69213b141e519\"\u003e\u003ccode\u003eefe218a\u003c/code\u003e\u003c/a\u003e - feat: add theme support for data label colour in xy chart\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mermaid-js/mermaid/commit/2b9d054d622101a727b03c5d47a15f3bd98125fa\"\u003e\u003ccode\u003e2b9d054\u003c/code\u003e\u003c/a\u003e Version Packages (\u003ca href=\"https://redirect.github.com/mermaid-js/mermaid/issues/7561\"\u003e#7561\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mermaid-js/mermaid/commit/efe218a47fb5a4c2bd5489b48ce69213b141e519\"\u003e\u003ccode\u003eefe218a\u003c/code\u003e\u003c/a\u003e Release candidate 11.14.0 (\u003ca href=\"https://redirect.github.com/mermaid-js/mermaid/issues/7526\"\u003e#7526\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mermaid-js/mermaid/commit/d2b5b2b9292b3b0e1e15fe2819d13b4cae7a6893\"\u003e\u003ccode\u003ed2b5b2b\u003c/code\u003e\u003c/a\u003e chore: Editor Picker V2 (\u003ca href=\"https://redirect.github.com/mermaid-js/mermaid/issues/7497\"\u003e#7497\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mermaid-js/mermaid/commit/07c554e2b4c1589f4e0fb1031868ea8ffee2742d\"\u003e\u003ccode\u003e07c554e\u003c/code\u003e\u003c/a\u003e Setting the link to Get started to the correct on\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mermaid-js/mermaid/commit/b1a5e9be56b58ae87e5341898c139c90bc35ed17\"\u003e\u003ccode\u003eb1a5e9b\u003c/code\u003e\u003c/a\u003e Version Packages (\u003ca href=\"https://redirect.github.com/mermaid-js/mermaid/issues/7466\"\u003e#7466\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mermaid-js/mermaid/commit/bdd7abdb177c38d0c77239d52cc6ca10344d89b2\"\u003e\u003ccode\u003ebdd7abd\u003c/code\u003e\u003c/a\u003e fix: use correct package name for elk\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mermaid-js/mermaid/commit/a900618c924616d89fad37d99795af7ebce5d478\"...\n\n_Description has been truncated_","html_url":"https://github.com/ACT-House-Engineering/gsu-hackathon/pull/5","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/ACT-House-Engineering%2Fgsu-hackathon/issues/5","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/5/packages"}},{"old_version":"5.1.3","new_version":"5.2.0","update_type":"minor","path":null,"pr_created_at":"2026-05-11T04:51:55.000Z","version_change":"5.1.3 → 5.2.0","issue":{"uuid":"4418153705","node_id":"PR_kwDORgtRS87aHH0O","number":9,"state":"closed","title":"deps(deps): bump the all-dependencies group across 1 directory with 65 updates","user":"dependabot[bot]","labels":[],"assignees":[],"locked":false,"comments_count":2,"pull_request":true,"closed_at":"2026-05-18T05:23:49.000Z","author_association":null,"state_reason":null,"created_at":"2026-05-11T04:51:55.000Z","updated_at":"2026-05-18T05:23:50.000Z","time_to_close":606714,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"deps(deps): bump","group_name":"all-dependencies","update_count":65,"packages":[{"name":"@eslint-react/eslint-plugin","old_version":"2.13.0","new_version":"5.7.5","repository_url":"https://github.com/Rel1cx/eslint-react"},{"name":"@eslint/js","old_version":"9.39.2","new_version":"10.0.1","repository_url":"https://github.com/eslint/eslint"},{"name":"@typescript-eslint/eslint-plugin","old_version":"8.56.0","new_version":"8.59.2","repository_url":"https://github.com/typescript-eslint/typescript-eslint"},{"name":"@typescript-eslint/parser","old_version":"8.56.0","new_version":"8.59.2","repository_url":"https://github.com/typescript-eslint/typescript-eslint"},{"name":"eslint","old_version":"9.39.2","new_version":"10.3.0","repository_url":"https://github.com/eslint/eslint"},{"name":"eslint-plugin-react-hooks","old_version":"7.0.1","new_version":"7.1.1","repository_url":"https://github.com/facebook/react"},{"name":"globals","old_version":"17.3.0","new_version":"17.6.0","repository_url":"https://github.com/sindresorhus/globals"},{"name":"graphql","old_version":"16.12.0","new_version":"16.14.0","repository_url":"https://github.com/graphql/graphql-js"},{"name":"happy-dom","old_version":"20.6.2","new_version":"20.9.0","repository_url":"https://github.com/capricorn86/happy-dom"},{"name":"jiti","old_version":"2.6.1","new_version":"2.7.0","repository_url":"https://github.com/unjs/jiti"},{"name":"lint-staged","old_version":"16.2.7","new_version":"17.0.4","repository_url":"https://github.com/lint-staged/lint-staged"},{"name":"mermaid","old_version":"11.12.3","new_version":"11.14.0","repository_url":"https://github.com/mermaid-js/mermaid"},{"name":"prettier","old_version":"3.8.1","new_version":"3.8.3","repository_url":"https://github.com/prettier/prettier"},{"name":"react","old_version":"19.2.4","new_version":"19.2.6","repository_url":"https://github.com/facebook/react"},{"name":"typescript","old_version":"5.9.3","new_version":"6.0.3","repository_url":"https://github.com/microsoft/TypeScript"},{"name":"typescript-eslint","old_version":"8.56.0","new_version":"8.59.2","repository_url":"https://github.com/typescript-eslint/typescript-eslint"},{"name":"typescript-language-server","old_version":"5.1.3","new_version":"5.2.0","repository_url":"https://github.com/typescript-language-server/typescript-language-server"},{"name":"vite","old_version":"7.3.1","new_version":"8.0.11","repository_url":"https://github.com/vitejs/vite"},{"name":"vitepress","old_version":"2.0.0-alpha.16","new_version":"2.0.0-alpha.17","repository_url":"https://github.com/vuejs/vitepress"},{"name":"vitepress-plugin-llms","old_version":"1.11.0","new_version":"1.12.2","repository_url":"https://github.com/okineadev/vitepress-plugin-llms"},{"name":"vitest","old_version":"4.0.18","new_version":"4.1.5","repository_url":"https://github.com/vitest-dev/vitest"},{"name":"wrangler","old_version":"4.66.0","new_version":"4.90.0","repository_url":"https://github.com/cloudflare/workers-sdk"},{"name":"@ai-sdk/openai","old_version":"3.0.29","new_version":"3.0.63","repository_url":"https://github.com/vercel/ai"},{"name":"@better-auth/passkey","old_version":"1.4.18","new_version":"1.6.10","repository_url":"https://github.com/better-auth/better-auth"},{"name":"@better-auth/stripe","old_version":"1.4.18","new_version":"1.6.10","repository_url":"https://github.com/better-auth/better-auth"},{"name":"@trpc/server","old_version":"11.10.0","new_version":"11.17.0","repository_url":"https://github.com/trpc/trpc"},{"name":"ai","old_version":"6.0.91","new_version":"6.0.177","repository_url":"https://github.com/vercel/ai"},{"name":"better-auth","old_version":"1.4.18","new_version":"1.6.10","repository_url":"https://github.com/better-auth/better-auth"},{"name":"drizzle-orm","old_version":"0.45.1","new_version":"0.45.2","repository_url":"https://github.com/drizzle-team/drizzle-orm"},{"name":"postgres","old_version":"3.4.8","new_version":"3.4.9","repository_url":"https://github.com/porsager/postgres"},{"name":"resend","old_version":"6.9.2","new_version":"6.12.3","repository_url":"https://github.com/resend/resend-node"},{"name":"stripe","old_version":"20.3.1","new_version":"22.1.1","repository_url":"https://github.com/stripe/stripe-node"},{"name":"@cloudflare/workers-types","old_version":"4.20260218.0","new_version":"4.20260511.1","repository_url":"https://github.com/cloudflare/workerd"},{"name":"@types/bun","old_version":"1.3.9","new_version":"1.3.13","repository_url":"https://github.com/DefinitelyTyped/DefinitelyTyped"},{"name":"hono","old_version":"4.11.10","new_version":"4.12.18","repository_url":"https://github.com/honojs/hono"},{"name":"@tanstack/react-query","old_version":"5.90.21","new_version":"5.100.9","repository_url":"https://github.com/TanStack/query"},{"name":"@tanstack/react-router","old_version":"1.161.1","new_version":"1.169.2","repository_url":"https://github.com/TanStack/router"},{"name":"@trpc/client","old_version":"11.10.0","new_version":"11.17.0","repository_url":"https://github.com/trpc/trpc"},{"name":"@trpc/tanstack-react-query","old_version":"11.10.0","new_version":"11.17.0","repository_url":"https://github.com/trpc/trpc"},{"name":"jotai","old_version":"2.17.1","new_version":"2.20.0","repository_url":"https://github.com/pmndrs/jotai"},{"name":"lucide-react","old_version":"0.574.0","new_version":"1.14.0","repository_url":"https://github.com/lucide-icons/lucide"},{"name":"react-dom","old_version":"19.2.4","new_version":"19.2.6","repository_url":"https://github.com/facebook/react"},{"name":"tailwind-merge","old_version":"3.4.1","new_version":"3.6.0","repository_url":"https://github.com/dcastil/tailwind-merge"},{"name":"@tailwindcss/postcss","old_version":"4.2.0","new_version":"4.3.0","repository_url":"https://github.com/tailwindlabs/tailwindcss"},{"name":"@tanstack/react-query-devtools","old_version":"5.91.3","new_version":"5.100.9","repository_url":"https://github.com/TanStack/query"},{"name":"@tanstack/react-router-devtools","old_version":"1.161.1","new_version":"1.166.13","repository_url":"https://github.com/TanStack/router"},{"name":"@tanstack/router-plugin","old_version":"1.161.1","new_version":"1.167.35","repository_url":"https://github.com/TanStack/router"},{"name":"@types/node","old_version":"25.2.3","new_version":"25.6.2","repository_url":"https://github.com/DefinitelyTyped/DefinitelyTyped"},{"name":"@vitejs/plugin-react","old_version":"5.1.4","new_version":"6.0.1","repository_url":"https://github.com/vitejs/vite-plugin-react"},{"name":"@vitejs/plugin-react-swc","old_version":"4.2.3","new_version":"4.3.0","repository_url":"https://github.com/vitejs/vite-plugin-react"},{"name":"autoprefixer","old_version":"10.4.24","new_version":"10.5.0","repository_url":"https://github.com/postcss/autoprefixer"},{"name":"globby","old_version":"16.1.1","new_version":"16.2.0","repository_url":"https://github.com/sindresorhus/globby"},{"name":"@react-email/components","old_version":"1.0.8","new_version":"1.0.12","repository_url":"https://github.com/resend/react-email"},{"name":"@react-email/render","old_version":"2.0.4","new_version":"2.0.8","repository_url":"https://github.com/resend/react-email"},{"name":"@react-email/preview-server","old_version":"5.2.8","new_version":"5.2.10","repository_url":"https://github.com/resend/react-email"},{"name":"react-email","old_version":"5.2.8","new_version":"6.1.1","repository_url":"https://github.com/resend/react-email"},{"name":"@astrojs/react","old_version":"4.4.2","new_version":"5.0.4","repository_url":"https://github.com/withastro/astro"},{"name":"astro","old_version":"5.17.2","new_version":"6.3.1","repository_url":"https://github.com/withastro/astro"},{"name":"dotenv","old_version":"17.3.1","new_version":"17.4.2","repository_url":"https://github.com/motdotla/dotenv"},{"name":"drizzle-kit","old_version":"0.31.9","new_version":"0.31.10","repository_url":"https://github.com/drizzle-team/drizzle-orm"},{"name":"@modelcontextprotocol/sdk","old_version":"1.26.0","new_version":"1.29.0","repository_url":"https://github.com/modelcontextprotocol/typescript-sdk"},{"name":"got","old_version":"14.6.6","new_version":"15.0.5","repository_url":"https://github.com/sindresorhus/got"}],"path":null,"ecosystem":"npm"},"body":"Bumps the all-dependencies group with 62 updates in the / directory:\n\n| Package | From | To |\n| --- | --- | --- |\n| [@eslint-react/eslint-plugin](https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin) | `2.13.0` | `5.7.5` |\n| [@eslint/js](https://github.com/eslint/eslint/tree/HEAD/packages/js) | `9.39.2` | `10.0.1` |\n| [@typescript-eslint/eslint-plugin](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin) | `8.56.0` | `8.59.2` |\n| [@typescript-eslint/parser](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/parser) | `8.56.0` | `8.59.2` |\n| [eslint](https://github.com/eslint/eslint) | `9.39.2` | `10.3.0` |\n| [eslint-plugin-react-hooks](https://github.com/facebook/react/tree/HEAD/packages/eslint-plugin-react-hooks) | `7.0.1` | `7.1.1` |\n| [globals](https://github.com/sindresorhus/globals) | `17.3.0` | `17.6.0` |\n| [graphql](https://github.com/graphql/graphql-js) | `16.12.0` | `16.14.0` |\n| [happy-dom](https://github.com/capricorn86/happy-dom) | `20.6.2` | `20.9.0` |\n| [jiti](https://github.com/unjs/jiti) | `2.6.1` | `2.7.0` |\n| [lint-staged](https://github.com/lint-staged/lint-staged) | `16.2.7` | `17.0.4` |\n| [mermaid](https://github.com/mermaid-js/mermaid) | `11.12.3` | `11.14.0` |\n| [prettier](https://github.com/prettier/prettier) | `3.8.1` | `3.8.3` |\n| [react](https://github.com/facebook/react/tree/HEAD/packages/react) | `19.2.4` | `19.2.6` |\n| [typescript](https://github.com/microsoft/TypeScript) | `5.9.3` | `6.0.3` |\n| [typescript-eslint](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/typescript-eslint) | `8.56.0` | `8.59.2` |\n| [typescript-language-server](https://github.com/typescript-language-server/typescript-language-server) | `5.1.3` | `5.2.0` |\n| [vite](https://github.com/vitejs/vite/tree/HEAD/packages/vite) | `7.3.1` | `8.0.11` |\n| [vitepress](https://github.com/vuejs/vitepress) | `2.0.0-alpha.16` | `2.0.0-alpha.17` |\n| [vitepress-plugin-llms](https://github.com/okineadev/vitepress-plugin-llms) | `1.11.0` | `1.12.2` |\n| [vitest](https://github.com/vitest-dev/vitest/tree/HEAD/packages/vitest) | `4.0.18` | `4.1.5` |\n| [wrangler](https://github.com/cloudflare/workers-sdk/tree/HEAD/packages/wrangler) | `4.66.0` | `4.90.0` |\n| [@ai-sdk/openai](https://github.com/vercel/ai/tree/HEAD/packages/openai) | `3.0.29` | `3.0.63` |\n| [@better-auth/passkey](https://github.com/better-auth/better-auth/tree/HEAD/packages/passkey) | `1.4.18` | `1.6.10` |\n| [@better-auth/stripe](https://github.com/better-auth/better-auth/tree/HEAD/packages/stripe) | `1.4.18` | `1.6.10` |\n| [@trpc/server](https://github.com/trpc/trpc/tree/HEAD/packages/server) | `11.10.0` | `11.17.0` |\n| [ai](https://github.com/vercel/ai/tree/HEAD/packages/ai) | `6.0.91` | `6.0.177` |\n| [better-auth](https://github.com/better-auth/better-auth/tree/HEAD/packages/better-auth) | `1.4.18` | `1.6.10` |\n| [drizzle-orm](https://github.com/drizzle-team/drizzle-orm) | `0.45.1` | `0.45.2` |\n| [postgres](https://github.com/porsager/postgres) | `3.4.8` | `3.4.9` |\n| [resend](https://github.com/resend/resend-node) | `6.9.2` | `6.12.3` |\n| [stripe](https://github.com/stripe/stripe-node) | `20.3.1` | `22.1.1` |\n| [@cloudflare/workers-types](https://github.com/cloudflare/workerd) | `4.20260218.0` | `4.20260511.1` |\n| [@types/bun](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/bun) | `1.3.9` | `1.3.13` |\n| [hono](https://github.com/honojs/hono) | `4.11.10` | `4.12.18` |\n| [@tanstack/react-query](https://github.com/TanStack/query/tree/HEAD/packages/react-query) | `5.90.21` | `5.100.9` |\n| [@tanstack/react-router](https://github.com/TanStack/router/tree/HEAD/packages/react-router) | `1.161.1` | `1.169.2` |\n| [@trpc/client](https://github.com/trpc/trpc/tree/HEAD/packages/client) | `11.10.0` | `11.17.0` |\n| [@trpc/tanstack-react-query](https://github.com/trpc/trpc/tree/HEAD/packages/tanstack-react-query) | `11.10.0` | `11.17.0` |\n| [jotai](https://github.com/pmndrs/jotai) | `2.17.1` | `2.20.0` |\n| [lucide-react](https://github.com/lucide-icons/lucide/tree/HEAD/packages/lucide-react) | `0.574.0` | `1.14.0` |\n| [react-dom](https://github.com/facebook/react/tree/HEAD/packages/react-dom) | `19.2.4` | `19.2.6` |\n| [tailwind-merge](https://github.com/dcastil/tailwind-merge) | `3.4.1` | `3.6.0` |\n| [@tailwindcss/postcss](https://github.com/tailwindlabs/tailwindcss/tree/HEAD/packages/@tailwindcss-postcss) | `4.2.0` | `4.3.0` |\n| [@tanstack/react-query-devtools](https://github.com/TanStack/query/tree/HEAD/packages/react-query-devtools) | `5.91.3` | `5.100.9` |\n| [@tanstack/react-router-devtools](https://github.com/TanStack/router/tree/HEAD/packages/react-router-devtools) | `1.161.1` | `1.166.13` |\n| [@tanstack/router-plugin](https://github.com/TanStack/router/tree/HEAD/packages/router-plugin) | `1.161.1` | `1.167.35` |\n| [@types/node](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/node) | `25.2.3` | `25.6.2` |\n| [@vitejs/plugin-react](https://github.com/vitejs/vite-plugin-react/tree/HEAD/packages/plugin-react) | `5.1.4` | `6.0.1` |\n| [@vitejs/plugin-react-swc](https://github.com/vitejs/vite-plugin-react/tree/HEAD/packages/plugin-react-swc) | `4.2.3` | `4.3.0` |\n| [autoprefixer](https://github.com/postcss/autoprefixer) | `10.4.24` | `10.5.0` |\n| [globby](https://github.com/sindresorhus/globby) | `16.1.1` | `16.2.0` |\n| [@react-email/components](https://github.com/resend/react-email/tree/HEAD/packages/components) | `1.0.8` | `1.0.12` |\n| [@react-email/render](https://github.com/resend/react-email/tree/HEAD/packages/render) | `2.0.4` | `2.0.8` |\n| [@react-email/preview-server](https://github.com/resend/react-email/tree/HEAD/packages/preview-server) | `5.2.8` | `5.2.10` |\n| [react-email](https://github.com/resend/react-email/tree/HEAD/packages/react-email) | `5.2.8` | `6.1.1` |\n| [@astrojs/react](https://github.com/withastro/astro/tree/HEAD/packages/integrations/react) | `4.4.2` | `5.0.4` |\n| [astro](https://github.com/withastro/astro/tree/HEAD/packages/astro) | `5.17.2` | `6.3.1` |\n| [dotenv](https://github.com/motdotla/dotenv) | `17.3.1` | `17.4.2` |\n| [drizzle-kit](https://github.com/drizzle-team/drizzle-orm) | `0.31.9` | `0.31.10` |\n| [@modelcontextprotocol/sdk](https://github.com/modelcontextprotocol/typescript-sdk) | `1.26.0` | `1.29.0` |\n| [got](https://github.com/sindresorhus/got) | `14.6.6` | `15.0.5` |\n\n\nUpdates `@eslint-react/eslint-plugin` from 2.13.0 to 5.7.5\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/Rel1cx/eslint-react/releases\"\u003e@​eslint-react/eslint-plugin's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev5.7.5 (2026-05-08)\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003ch3\u003e🏗️ Internal\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eBumped \u003ccode\u003e@eslint/compat\u003c/code\u003e from 2.0.5 to 2.1.0.\u003c/li\u003e\n\u003cli\u003eBumped \u003ccode\u003e@types/node\u003c/code\u003e from 25.6.0 to 25.6.2.\u003c/li\u003e\n\u003cli\u003eBumped \u003ccode\u003enext\u003c/code\u003e from 16.2.5 to 16.2.6.\u003c/li\u003e\n\u003cli\u003eBumped \u003ccode\u003epublint\u003c/code\u003e from 0.3.19 to 0.3.20.\u003c/li\u003e\n\u003cli\u003eBumped \u003ccode\u003etsdown\u003c/code\u003e from 0.21.10 to 0.22.0.\u003c/li\u003e\n\u003cli\u003eBumped \u003ccode\u003epnpm\u003c/code\u003e from 10.33.4 to 11.0.8.\u003c/li\u003e\n\u003cli\u003eAdjusted website styles.\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/Rel1cx/eslint-react/compare/v5.7.4...v5.7.5\"\u003ehttps://github.com/Rel1cx/eslint-react/compare/v5.7.4...v5.7.5\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev5.7.4 (2026-05-07)\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003ch3\u003e🏗️ Internal\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eBumped \u003ccode\u003e@typescript-eslint\u003c/code\u003e packages from 8.59.1 to 8.59.2.\u003c/li\u003e\n\u003cli\u003eBumped \u003ccode\u003ereact\u003c/code\u003e and \u003ccode\u003ereact-dom\u003c/code\u003e from 19.2.5 to 19.2.6.\u003c/li\u003e\n\u003cli\u003eBumped \u003ccode\u003enext\u003c/code\u003e from 16.2.4 to 16.2.5.\u003c/li\u003e\n\u003cli\u003eBumped \u003ccode\u003enx\u003c/code\u003e from 22.7.1 to 23.0.0-canary.20260506-b594537.\u003c/li\u003e\n\u003cli\u003eBumped \u003ccode\u003efumadocs-core\u003c/code\u003e and \u003ccode\u003efumadocs-ui\u003c/code\u003e from 16.8.5 to 16.8.7.\u003c/li\u003e\n\u003cli\u003eBumped \u003ccode\u003epostcss\u003c/code\u003e from 8.5.13 to 8.5.14.\u003c/li\u003e\n\u003cli\u003eBumped \u003ccode\u003epublint\u003c/code\u003e from 0.3.18 to 0.3.19.\u003c/li\u003e\n\u003cli\u003eBumped \u003ccode\u003epnpm\u003c/code\u003e from 10.33.2 to 10.33.4.\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/Rel1cx/eslint-react/compare/v5.7.3...v5.7.4\"\u003ehttps://github.com/Rel1cx/eslint-react/compare/v5.7.3...v5.7.4\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev5.7.3 (2026-05-06)\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003ch3\u003e🐞 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003e\u003ccode\u003ereact-x/immutability\u003c/code\u003e\u003c/strong\u003e: Exempted ref mutations via a naming heuristic — any object whose identifier is \u003ccode\u003eref\u003c/code\u003e or ends with \u003ccode\u003eRef\u003c/code\u003e is treated as a mutable ref and skipped from immutability checks. This fixes false positives when mutating \u003ccode\u003eRefObject\u0026lt;T\u0026gt;\u003c/code\u003e values received as props (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1752\"\u003e#1752\u003c/a\u003e, \u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1751\"\u003e#1751\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003e\u003ccode\u003ereact-x/immutability\u003c/code\u003e\u003c/strong\u003e: Added \u003ccode\u003enoRefLikeStateName\u003c/code\u003e diagnostic to prevent state variables from being named \u003ccode\u003eref\u003c/code\u003e or ending with \u003ccode\u003eRef\u003c/code\u003e, which would otherwise bypass the ref exemption heuristic (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1752\"\u003e#1752\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e📝 Documentation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFixed the full rule name in \u003ccode\u003ereact-jsx/no-key-after-spread\u003c/code\u003e documentation (\u003ccode\u003ejsx/no-key-after-spread\u003c/code\u003e → \u003ccode\u003ejsx-no-key-after-spread\u003c/code\u003e) (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1750\"\u003e#1750\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/Rel1cx/eslint-react/compare/v5.7.2...v5.7.3\"\u003ehttps://github.com/Rel1cx/eslint-react/compare/v5.7.2...v5.7.3\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev5.7.2 (2026-05-04)\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003ch3\u003e🐞 Fixes\u003c/h3\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/Rel1cx/eslint-react/blob/main/CHANGELOG.md\"\u003e@​eslint-react/eslint-plugin's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev5.7.5 (2026-05-08)\u003c/h2\u003e\n\u003ch3\u003e🏗️ Internal\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eBumped \u003ccode\u003e@eslint/compat\u003c/code\u003e from 2.0.5 to 2.1.0.\u003c/li\u003e\n\u003cli\u003eBumped \u003ccode\u003e@types/node\u003c/code\u003e from 25.6.0 to 25.6.2.\u003c/li\u003e\n\u003cli\u003eBumped \u003ccode\u003enext\u003c/code\u003e from 16.2.5 to 16.2.6.\u003c/li\u003e\n\u003cli\u003eBumped \u003ccode\u003epublint\u003c/code\u003e from 0.3.19 to 0.3.20.\u003c/li\u003e\n\u003cli\u003eBumped \u003ccode\u003etsdown\u003c/code\u003e from 0.21.10 to 0.22.0.\u003c/li\u003e\n\u003cli\u003eBumped \u003ccode\u003epnpm\u003c/code\u003e from 10.33.4 to 11.0.8.\u003c/li\u003e\n\u003cli\u003eAdjusted website styles.\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/Rel1cx/eslint-react/compare/v5.7.4...v5.7.5\"\u003ehttps://github.com/Rel1cx/eslint-react/compare/v5.7.4...v5.7.5\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev5.7.4 (2026-05-07)\u003c/h2\u003e\n\u003ch3\u003e🏗️ Internal\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eBumped \u003ccode\u003e@typescript-eslint\u003c/code\u003e packages from 8.59.1 to 8.59.2.\u003c/li\u003e\n\u003cli\u003eBumped \u003ccode\u003ereact\u003c/code\u003e and \u003ccode\u003ereact-dom\u003c/code\u003e from 19.2.5 to 19.2.6.\u003c/li\u003e\n\u003cli\u003eBumped \u003ccode\u003enext\u003c/code\u003e from 16.2.4 to 16.2.5.\u003c/li\u003e\n\u003cli\u003eBumped \u003ccode\u003enx\u003c/code\u003e from 22.7.1 to 23.0.0-canary.20260506-b594537.\u003c/li\u003e\n\u003cli\u003eBumped \u003ccode\u003efumadocs-core\u003c/code\u003e and \u003ccode\u003efumadocs-ui\u003c/code\u003e from 16.8.5 to 16.8.7.\u003c/li\u003e\n\u003cli\u003eBumped \u003ccode\u003epostcss\u003c/code\u003e from 8.5.13 to 8.5.14.\u003c/li\u003e\n\u003cli\u003eBumped \u003ccode\u003epublint\u003c/code\u003e from 0.3.18 to 0.3.19.\u003c/li\u003e\n\u003cli\u003eBumped \u003ccode\u003epnpm\u003c/code\u003e from 10.33.2 to 10.33.4.\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/Rel1cx/eslint-react/compare/v5.7.3...v5.7.4\"\u003ehttps://github.com/Rel1cx/eslint-react/compare/v5.7.3...v5.7.4\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev5.7.3 (2026-05-06)\u003c/h2\u003e\n\u003ch3\u003e🐞 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003e\u003ccode\u003ereact-x/immutability\u003c/code\u003e\u003c/strong\u003e: Exempted ref mutations via a naming heuristic — any object whose identifier is \u003ccode\u003eref\u003c/code\u003e or ends with \u003ccode\u003eRef\u003c/code\u003e is treated as a mutable ref and skipped from immutability checks. This fixes false positives when mutating \u003ccode\u003eRefObject\u0026lt;T\u0026gt;\u003c/code\u003e values received as props (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1752\"\u003e#1752\u003c/a\u003e, \u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1751\"\u003e#1751\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003e\u003ccode\u003ereact-x/immutability\u003c/code\u003e\u003c/strong\u003e: Added \u003ccode\u003enoRefLikeStateName\u003c/code\u003e diagnostic to prevent state variables from being named \u003ccode\u003eref\u003c/code\u003e or ending with \u003ccode\u003eRef\u003c/code\u003e, which would otherwise bypass the ref exemption heuristic (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1752\"\u003e#1752\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e📝 Documentation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFixed the full rule name in \u003ccode\u003ereact-jsx/no-key-after-spread\u003c/code\u003e documentation (\u003ccode\u003ejsx/no-key-after-spread\u003c/code\u003e → \u003ccode\u003ejsx-no-key-after-spread\u003c/code\u003e) (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1750\"\u003e#1750\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/Rel1cx/eslint-react/compare/v5.7.2...v5.7.3\"\u003ehttps://github.com/Rel1cx/eslint-react/compare/v5.7.2...v5.7.3\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev5.7.2 (2026-05-04)\u003c/h2\u003e\n\u003ch3\u003e🐞 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003e\u003ccode\u003ereact-x/no-unused-state\u003c/code\u003e\u003c/strong\u003e: Removed the rule from the \u003ccode\u003erecommended\u003c/code\u003e preset for now (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1747\"\u003e#1747\u003c/a\u003e, \u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1748\"\u003e#1748\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e📝 Documentation\u003c/h3\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/de60fa2e3003c60e8c4f03970b5b84c7c9c84334\"\u003e\u003ccode\u003ede60fa2\u003c/code\u003e\u003c/a\u003e release: 5.7.5\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/2b075487d7952a8662c76305b64ce677776bab34\"\u003e\u003ccode\u003e2b07548\u003c/code\u003e\u003c/a\u003e release: 5.7.5-beta.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/9e186c17a28ff1d9e02e0a22f4f6b18193ceadca\"\u003e\u003ccode\u003e9e186c1\u003c/code\u003e\u003c/a\u003e release: 5.7.5-next.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/f7b012180b71b03a69e944b39fdc88811b16839b\"\u003e\u003ccode\u003ef7b0121\u003c/code\u003e\u003c/a\u003e chore: bump dependencies and adjust website styles (\u003ca href=\"https://github.com/Rel1cx/eslint-react/tree/HEAD/plugins/eslint-plugin/issues/1754\"\u003e#1754\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/99736d816cdcb56dd71be0ba8440c6b12017d862\"\u003e\u003ccode\u003e99736d8\u003c/code\u003e\u003c/a\u003e release: 5.7.4\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/bcd23f09215b120a119a53eacdb12e670ee897b9\"\u003e\u003ccode\u003ebcd23f0\u003c/code\u003e\u003c/a\u003e release: 5.7.4-beta.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/52071021ab5ae079fa69fc3996ac9109a76c230a\"\u003e\u003ccode\u003e5207102\u003c/code\u003e\u003c/a\u003e release: 5.7.4-next.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/b35fba3ea0e14827433efcc6017e8eaef0ca6486\"\u003e\u003ccode\u003eb35fba3\u003c/code\u003e\u003c/a\u003e Bump dependencies: eslint, react, next, and nx packages\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/a9098f22fc1a8c7b59e3b4916d0d5ff3cb2358be\"\u003e\u003ccode\u003ea9098f2\u003c/code\u003e\u003c/a\u003e release: 5.7.3\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rel1cx/eslint-react/commit/677db67c648814dbc500bdd40dea84ac9efa770c\"\u003e\u003ccode\u003e677db67\u003c/code\u003e\u003c/a\u003e release: 5.7.2\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/Rel1cx/eslint-react/commits/v5.7.5/plugins/eslint-plugin\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@eslint/js` from 9.39.2 to 10.0.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/eslint/eslint/releases\"\u003e@​eslint/js's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev10.0.1\u003c/h2\u003e\n\u003ch2\u003eBug Fixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/c87d5bded54c5cf491eb04c24c9d09bbbd42c23e\"\u003e\u003ccode\u003ec87d5bd\u003c/code\u003e\u003c/a\u003e fix: update eslint (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20531\"\u003e#20531\u003c/a\u003e) (renovate[bot])\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/d84100115c14691691058f00779c94e74fca946a\"\u003e\u003ccode\u003ed841001\u003c/code\u003e\u003c/a\u003e fix: update \u003ccode\u003eminimatch\u003c/code\u003e to \u003ccode\u003e10.2.1\u003c/code\u003e to address security vulnerabilities (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20519\"\u003e#20519\u003c/a\u003e) (루밀LuMir)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/04c21475b3004904948f02049f2888b401d82c78\"\u003e\u003ccode\u003e04c2147\u003c/code\u003e\u003c/a\u003e fix: update error message for unused suppressions (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20496\"\u003e#20496\u003c/a\u003e) (fnx)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/38b089c1726feac0e31a31d47941bd99e29ce003\"\u003e\u003ccode\u003e38b089c\u003c/code\u003e\u003c/a\u003e fix: update dependency \u003ccode\u003e@​eslint/config-array\u003c/code\u003e to ^0.23.1 (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20484\"\u003e#20484\u003c/a\u003e) (renovate[bot])\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eDocumentation\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/5b3dbce50a1404a9f118afe810cefeee79388a2a\"\u003e\u003ccode\u003e5b3dbce\u003c/code\u003e\u003c/a\u003e docs: add AI acknowledgement section to templates (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20431\"\u003e#20431\u003c/a\u003e) (루밀LuMir)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/6f23076037d5879f20fb3be2ef094293b1e8d38c\"\u003e\u003ccode\u003e6f23076\u003c/code\u003e\u003c/a\u003e docs: toggle nav in no-JS mode (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20476\"\u003e#20476\u003c/a\u003e) (Tanuj Kanti)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/b69cfb32a16c5d5e9986390d484fae1d21e406f9\"\u003e\u003ccode\u003eb69cfb3\u003c/code\u003e\u003c/a\u003e docs: Update README (GitHub Actions Bot)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eChores\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/e5c281ffd038a3a7a3e5364db0b9378e0ad83020\"\u003e\u003ccode\u003ee5c281f\u003c/code\u003e\u003c/a\u003e chore: updates for v9.39.3 release (Jenkins)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/8c3832adb77cd993b4a24891900d5eeaaf093cdc\"\u003e\u003ccode\u003e8c3832a\u003c/code\u003e\u003c/a\u003e chore: update \u003ccode\u003e@​typescript-eslint/parser\u003c/code\u003e to ^8.56.0 (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20514\"\u003e#20514\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/8330d238ae6adb68bb6a1c9381e38cfedd990d94\"\u003e\u003ccode\u003e8330d23\u003c/code\u003e\u003c/a\u003e test: add tests for config-api (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20493\"\u003e#20493\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/37d6e91e88fa6a2ca6d8726679096acff21ba6cc\"\u003e\u003ccode\u003e37d6e91\u003c/code\u003e\u003c/a\u003e chore: remove eslint v10 prereleases from eslint-config-eslint deps (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20494\"\u003e#20494\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/da7cd0e79197ad16e17052eef99df141de6dbfb1\"\u003e\u003ccode\u003eda7cd0e\u003c/code\u003e\u003c/a\u003e refactor: cleanup error message templates (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20479\"\u003e#20479\u003c/a\u003e) (Francesco Trotta)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/84fb885d49ac810e79a9491276b4828b53d913e5\"\u003e\u003ccode\u003e84fb885\u003c/code\u003e\u003c/a\u003e chore: package.json update for \u003ccode\u003e@​eslint/js\u003c/code\u003e release (Jenkins)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/1f667344b57c4c09b548d94bcfac1f91b6e5c63d\"\u003e\u003ccode\u003e1f66734\u003c/code\u003e\u003c/a\u003e chore: add \u003ccode\u003eeslint\u003c/code\u003e to \u003ccode\u003epeerDependencies\u003c/code\u003e of \u003ccode\u003e@eslint/js\u003c/code\u003e (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20467\"\u003e#20467\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev10.0.0\u003c/h2\u003e\n\u003ch2\u003eBreaking Changes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/f9e54f43a5e497cdfa179338b431093245cb787b\"\u003e\u003ccode\u003ef9e54f4\u003c/code\u003e\u003c/a\u003e feat!: estimate rule-tester failure location (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20420\"\u003e#20420\u003c/a\u003e) (ST-DDT)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/a176319d8ade1a7d9b2d7fb8f038f55a2662325f\"\u003e\u003ccode\u003ea176319\u003c/code\u003e\u003c/a\u003e feat!: replace \u003ccode\u003echalk\u003c/code\u003e with \u003ccode\u003estyleText\u003c/code\u003e and add \u003ccode\u003ecolor\u003c/code\u003e to \u003ccode\u003eResultsMeta\u003c/code\u003e (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20227\"\u003e#20227\u003c/a\u003e) (루밀LuMir)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/c7046e6c1e03c4ca0eee4888a1f2eba4c6454f84\"\u003e\u003ccode\u003ec7046e6\u003c/code\u003e\u003c/a\u003e feat!: enable JSX reference tracking (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20152\"\u003e#20152\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/fa31a608901684fbcd9906d1907e66561d16e5aa\"\u003e\u003ccode\u003efa31a60\u003c/code\u003e\u003c/a\u003e feat!: add \u003ccode\u003ename\u003c/code\u003e to configs (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20015\"\u003e#20015\u003c/a\u003e) (Kirk Waiblinger)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/3383e7ec9028166cafc8ea7986c2f7498d0049f0\"\u003e\u003ccode\u003e3383e7e\u003c/code\u003e\u003c/a\u003e fix!: remove deprecated \u003ccode\u003eSourceCode\u003c/code\u003e methods (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20137\"\u003e#20137\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/501abd0e916a35554c58b7c0365537f1fa3880ce\"\u003e\u003ccode\u003e501abd0\u003c/code\u003e\u003c/a\u003e feat!: update dependency minimatch to v10 (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20246\"\u003e#20246\u003c/a\u003e) (renovate[bot])\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/ca4d3b40085de47561f89656a2207d09946ed45e\"\u003e\u003ccode\u003eca4d3b4\u003c/code\u003e\u003c/a\u003e fix!: stricter rule tester assertions for valid test cases (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20125\"\u003e#20125\u003c/a\u003e) (唯然)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/96512a66c86402fb0538cdcb6cd30b9073f6bf3b\"\u003e\u003ccode\u003e96512a6\u003c/code\u003e\u003c/a\u003e fix!: Remove deprecated rule context methods (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20086\"\u003e#20086\u003c/a\u003e) (Nicholas C. Zakas)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/c69fdacdb2e886b9d965568a397aa8220db3fe90\"\u003e\u003ccode\u003ec69fdac\u003c/code\u003e\u003c/a\u003e feat!: remove eslintrc support (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20037\"\u003e#20037\u003c/a\u003e) (Francesco Trotta)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/208b5cc34a8374ff81412b5bec2e0800eebfbd04\"\u003e\u003ccode\u003e208b5cc\u003c/code\u003e\u003c/a\u003e feat!: Use \u003ccode\u003eScopeManager#addGlobals()\u003c/code\u003e (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20132\"\u003e#20132\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/a2ee188ea7a38a0c6155f3d39e2b00e1d0f36e14\"\u003e\u003ccode\u003ea2ee188\u003c/code\u003e\u003c/a\u003e fix!: add \u003ccode\u003euniqueItems: true\u003c/code\u003e in \u003ccode\u003eno-invalid-regexp\u003c/code\u003e option (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20155\"\u003e#20155\u003c/a\u003e) (Tanuj Kanti)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/a89059dbf2832d417dd493ee81483227ec44e4ab\"\u003e\u003ccode\u003ea89059d\u003c/code\u003e\u003c/a\u003e feat!: Program range span entire source text (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20133\"\u003e#20133\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/39a6424373d915fa9de0d7b0caba9a4dc3da9b53\"\u003e\u003ccode\u003e39a6424\u003c/code\u003e\u003c/a\u003e fix!: assert 'text' is a string across all RuleFixer methods (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20082\"\u003e#20082\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/f28fbf846244e043c92b355b224d121b06140b44\"\u003e\u003ccode\u003ef28fbf8\u003c/code\u003e\u003c/a\u003e fix!: Deprecate \u003ccode\u003e\u0026quot;always\u0026quot;\u003c/code\u003e and \u003ccode\u003e\u0026quot;as-needed\u0026quot;\u003c/code\u003e options of the \u003ccode\u003eradix\u003c/code\u003e rule (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20223\"\u003e#20223\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/aa3fb2b233e929b37220be940575f42c280e0b98\"\u003e\u003ccode\u003eaa3fb2b\u003c/code\u003e\u003c/a\u003e fix!: tighten \u003ccode\u003efunc-names\u003c/code\u003e schema (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20119\"\u003e#20119\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/f6c0ed0311dcfee853367d5068c765d066e6b756\"\u003e\u003ccode\u003ef6c0ed0\u003c/code\u003e\u003c/a\u003e feat!: report \u003ccode\u003eeslint-env\u003c/code\u003e comments as errors (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20128\"\u003e#20128\u003c/a\u003e) (Francesco Trotta)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/4bf739fb533e59f7f0a66b65f7bc80be0f37d8db\"\u003e\u003ccode\u003e4bf739f\u003c/code\u003e\u003c/a\u003e fix!: remove deprecated \u003ccode\u003eLintMessage#nodeType\u003c/code\u003e and \u003ccode\u003eTestCaseError#type\u003c/code\u003e (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20096\"\u003e#20096\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/523c076866400670fb2192a3f55dbf7ad3469247\"\u003e\u003ccode\u003e523c076\u003c/code\u003e\u003c/a\u003e feat!: drop support for jiti \u0026lt; 2.2.0 (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20016\"\u003e#20016\u003c/a\u003e) (michael faith)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/454a292c95f34dad232411ddac06408e6383bb64\"\u003e\u003ccode\u003e454a292\u003c/code\u003e\u003c/a\u003e feat!: update \u003ccode\u003eeslint:recommended\u003c/code\u003e configuration (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20210\"\u003e#20210\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/4f880ee02992e1bf0e96ebaba679985e2d1295f1\"\u003e\u003ccode\u003e4f880ee\u003c/code\u003e\u003c/a\u003e feat!: remove \u003ccode\u003ev10_*\u003c/code\u003e and inactive \u003ccode\u003eunstable_*\u003c/code\u003e flags (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20225\"\u003e#20225\u003c/a\u003e) (sethamus)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/f18115c363a4ac7671a4c7f30ee13d57ebba330f\"\u003e\u003ccode\u003ef18115c\u003c/code\u003e\u003c/a\u003e feat!: \u003ccode\u003eno-shadow-restricted-names\u003c/code\u003e report \u003ccode\u003eglobalThis\u003c/code\u003e by default (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20027\"\u003e#20027\u003c/a\u003e) (sethamus)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/c6358c31fbd3937b92d89be2618ffdf5a774604e\"\u003e\u003ccode\u003ec6358c3\u003c/code\u003e\u003c/a\u003e feat!: Require Node.js \u003ccode\u003e^20.19.0 || ^22.13.0 || \u0026gt;=24\u003c/code\u003e (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20160\"\u003e#20160\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eFeatures\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/bff9091927811497dbf066b0e3b85ecb37d43822\"\u003e\u003ccode\u003ebff9091\u003c/code\u003e\u003c/a\u003e feat: handle \u003ccode\u003eArray.fromAsync\u003c/code\u003e in \u003ccode\u003earray-callback-return\u003c/code\u003e (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20457\"\u003e#20457\u003c/a\u003e) (Francesco Trotta)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/290c594bb50c439fb71bc75521ee5360daa8c222\"\u003e\u003ccode\u003e290c594\u003c/code\u003e\u003c/a\u003e feat: add \u003ccode\u003eself\u003c/code\u003e to \u003ccode\u003eno-implied-eval\u003c/code\u003e rule (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20468\"\u003e#20468\u003c/a\u003e) (sethamus)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/43677de07ebd6e14bfac40a46ad749ba783c45f2\"\u003e\u003ccode\u003e43677de\u003c/code\u003e\u003c/a\u003e feat: fix handling of function and class expression names in \u003ccode\u003eno-shadow\u003c/code\u003e (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20432\"\u003e#20432\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/84fb885d49ac810e79a9491276b4828b53d913e5\"\u003e\u003ccode\u003e84fb885\u003c/code\u003e\u003c/a\u003e chore: package.json update for \u003ccode\u003e@​eslint/js\u003c/code\u003e release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/1f667344b57c4c09b548d94bcfac1f91b6e5c63d\"\u003e\u003ccode\u003e1f66734\u003c/code\u003e\u003c/a\u003e chore: add \u003ccode\u003eeslint\u003c/code\u003e to \u003ccode\u003epeerDependencies\u003c/code\u003e of \u003ccode\u003e@eslint/js\u003c/code\u003e (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20467\"\u003e#20467\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/f3fbc2f60cbe2c718364feb8c3fc0452c0df3c56\"\u003e\u003ccode\u003ef3fbc2f\u003c/code\u003e\u003c/a\u003e chore: set \u003ccode\u003e@eslint/js\u003c/code\u003e version to 10.0.0 to skip releasing it (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20466\"\u003e#20466\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/b4b3127f8542c599ce2dea804b6582ebc40c993d\"\u003e\u003ccode\u003eb4b3127\u003c/code\u003e\u003c/a\u003e chore: package.json update for \u003ccode\u003e@​eslint/js\u003c/code\u003e release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/0b14059491d830a49b3577931f4f68fbcfce6be5\"\u003e\u003ccode\u003e0b14059\u003c/code\u003e\u003c/a\u003e chore: package.json update for \u003ccode\u003e@​eslint/js\u003c/code\u003e release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/fa31a608901684fbcd9906d1907e66561d16e5aa\"\u003e\u003ccode\u003efa31a60\u003c/code\u003e\u003c/a\u003e feat!: add \u003ccode\u003ename\u003c/code\u003e to configs (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20015\"\u003e#20015\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/1e2cad5f6fa47ed6ed89d2a29798dda926d50990\"\u003e\u003ccode\u003e1e2cad5\u003c/code\u003e\u003c/a\u003e chore: package.json update for \u003ccode\u003e@​eslint/js\u003c/code\u003e release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/454a292c95f34dad232411ddac06408e6383bb64\"\u003e\u003ccode\u003e454a292\u003c/code\u003e\u003c/a\u003e feat!: update \u003ccode\u003eeslint:recommended\u003c/code\u003e configuration (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20210\"\u003e#20210\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/c6358c31fbd3937b92d89be2618ffdf5a774604e\"\u003e\u003ccode\u003ec6358c3\u003c/code\u003e\u003c/a\u003e feat!: Require Node.js \u003ccode\u003e^20.19.0 || ^22.13.0 || \u0026gt;=24\u003c/code\u003e (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20160\"\u003e#20160\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/eslint/eslint/commits/v10.0.1/packages/js\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@typescript-eslint/eslint-plugin` from 8.56.0 to 8.59.2\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases\"\u003e@​typescript-eslint/eslint-plugin's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev8.59.2\u003c/h2\u003e\n\u003ch2\u003e8.59.2 (2026-05-04)\u003c/h2\u003e\n\u003ch3\u003e🩹 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unsafe-type-assertion] handle crash on recursive template literal types (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12150\"\u003e#12150\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-deprecated] object destructuring values should be treated as declarations (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12292\"\u003e#12292\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003erule-tester:\u003c/strong\u003e add TypeScript as a peer dependency (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12288\"\u003e#12288\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e❤️ Thank You\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eDariusz Czajkowski\u003c/li\u003e\n\u003cli\u003eDima Barabash\u003c/li\u003e\n\u003cli\u003eKirk Waiblinger \u003ca href=\"https://github.com/kirkwaiblinger\"\u003e\u003ccode\u003e@​kirkwaiblinger\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.2\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003ev8.59.1\u003c/h2\u003e\n\u003ch2\u003e8.59.1 (2026-04-27)\u003c/h2\u003e\n\u003ch3\u003e🩹 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-type-assertion] fix crash \u0026quot;TypeError: checker.getTypeArguments is not a function\u0026quot; (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12246\"\u003e#12246\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-type-assertion] preserve index signatures in undefined unions (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12257\"\u003e#12257\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-type-assertion] preserve phantom type arguments in generic inference (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12269\"\u003e#12269\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-type-assertion] avoid false positive in logical assignment assertions (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12278\"\u003e#12278\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-type-arguments] handle instantiation expressions (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12220\"\u003e#12220\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-condition] treat void as nullish in no-unnecessary-condition (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12241\"\u003e#12241\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e❤️ Thank You\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eanasm266 \u003ca href=\"https://github.com/anasm266\"\u003e\u003ccode\u003e@​anasm266\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAnshika Jain \u003ca href=\"https://github.com/Anshikakalpana\"\u003e\u003ccode\u003e@​Anshikakalpana\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUlrich Stark\u003c/li\u003e\n\u003cli\u003eyugo innami \u003ca href=\"https://github.com/nami8824\"\u003e\u003ccode\u003e@​nami8824\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.1\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003ev8.59.0\u003c/h2\u003e\n\u003ch2\u003e8.59.0 (2026-04-20)\u003c/h2\u003e\n\u003ch3\u003e🚀 Features\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-type-assertion] report more cases based on assignability (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/11789\"\u003e#11789\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e❤️ Thank You\u003c/h3\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/CHANGELOG.md\"\u003e@​typescript-eslint/eslint-plugin's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e8.59.2 (2026-05-04)\u003c/h2\u003e\n\u003ch3\u003e🩹 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-deprecated] object destructuring values should be treated as declarations (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12292\"\u003e#12292\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unsafe-type-assertion] handle crash on recursive template literal types (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12150\"\u003e#12150\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e❤️ Thank You\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eDima Barabash\u003c/li\u003e\n\u003cli\u003eKirk Waiblinger \u003ca href=\"https://github.com/kirkwaiblinger\"\u003e\u003ccode\u003e@​kirkwaiblinger\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.2\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003e8.59.1 (2026-04-27)\u003c/h2\u003e\n\u003ch3\u003e🩹 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-condition] treat void as nullish in no-unnecessary-condition (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12241\"\u003e#12241\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-type-arguments] handle instantiation expressions (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12220\"\u003e#12220\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-type-assertion] avoid false positive in logical assignment assertions (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12278\"\u003e#12278\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-type-assertion] preserve phantom type arguments in generic inference (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12269\"\u003e#12269\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-type-assertion] preserve index signatures in undefined unions (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12257\"\u003e#12257\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-type-assertion] fix crash \u0026quot;TypeError: checker.getTypeArguments is not a function\u0026quot; (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12246\"\u003e#12246\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e❤️ Thank You\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eanasm266 \u003ca href=\"https://github.com/anasm266\"\u003e\u003ccode\u003e@​anasm266\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAnshika Jain \u003ca href=\"https://github.com/Anshikakalpana\"\u003e\u003ccode\u003e@​Anshikakalpana\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUlrich Stark\u003c/li\u003e\n\u003cli\u003eyugo innami \u003ca href=\"https://github.com/nami8824\"\u003e\u003ccode\u003e@​nami8824\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.1\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003e8.59.0 (2026-04-20)\u003c/h2\u003e\n\u003ch3\u003e🚀 Features\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-type-assertion] report more cases based on assignability (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/11789\"\u003e#11789\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e❤️ Thank You\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUlrich Stark\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.0\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/2ec35f1760aade4df4c631d76d78c7ed5e136333\"\u003e\u003ccode\u003e2ec35f1\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.59.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/ec3ef25390f7daf5a9ff33a60282bdbbb49ab0f3\"\u003e\u003ccode\u003eec3ef25\u003c/code\u003e\u003c/a\u003e test: make no-useless-empty-export tests fully static (\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin/issues/12260\"\u003e#12260\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/60d0a513870d833617374ff8ea256d86ca3cbbbb\"\u003e\u003ccode\u003e60d0a51\u003c/code\u003e\u003c/a\u003e chore(eslint-plugin): switch auto-generated test cases to hand-written in no-...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/5c53da230a70aba7d6f3d6474b5d249b430a95d0\"\u003e\u003ccode\u003e5c53da2\u003c/code\u003e\u003c/a\u003e fix(eslint-plugin): [no-deprecated] object destructuring values should be tre...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/80c28a1ada3f975a932a02587cefee632ccf6550\"\u003e\u003ccode\u003e80c28a1\u003c/code\u003e\u003c/a\u003e fix(eslint-plugin): [no-unsafe-type-assertion] handle crash on recursive temp...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/b7b2670123f76419630f88f3a807f85b7c535230\"\u003e\u003ccode\u003eb7b2670\u003c/code\u003e\u003c/a\u003e test: make no-this-alias tests fully static (\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin/issues/12258\"\u003e#12258\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/52457932e5507b5ca01e720a541f3f8d01e09b9d\"\u003e\u003ccode\u003e5245793\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.59.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/3cef12471659c42c9d4b179f4113a080b1fa2d66\"\u003e\u003ccode\u003e3cef124\u003c/code\u003e\u003c/a\u003e chore(eslint-plugin): switch auto-generated test cases to hand-written in dot...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/27c507b6e532abcd1efa51055f045b00f22055c3\"\u003e\u003ccode\u003e27c507b\u003c/code\u003e\u003c/a\u003e test: make sort-type-constituents tests fully static (\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin/issues/12262\"\u003e#12262\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/a03b31d422be35d8ddc979f48f9317e3f33dd1ce\"\u003e\u003ccode\u003ea03b31d\u003c/code\u003e\u003c/a\u003e chore(eslint-plugin): switch auto-generated test cases to hand-written in no-...\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commits/v8.59.2/packages/eslint-plugin\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@typescript-eslint/parser` from 8.56.0 to 8.59.2\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases\"\u003e@​typescript-eslint/parser's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev8.59.2\u003c/h2\u003e\n\u003ch2\u003e8.59.2 (2026-05-04)\u003c/h2\u003e\n\u003ch3\u003e🩹 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unsafe-type-assertion] handle crash on recursive template literal types (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12150\"\u003e#12150\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-deprecated] object destructuring values should be treated as declarations (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12292\"\u003e#12292\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003erule-tester:\u003c/strong\u003e add TypeScript as a peer dependency (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12288\"\u003e#12288\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e❤️ Thank You\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eDariusz Czajkowski\u003c/li\u003e\n\u003cli\u003eDima Barabash\u003c/li\u003e\n\u003cli\u003eKirk Waiblinger \u003ca href=\"https://github.com/kirkwaiblinger\"\u003e\u003ccode\u003e@​kirkwaiblinger\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.2\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003ev8.59.1\u003c/h2\u003e\n\u003ch2\u003e8.59.1 (2026-04-27)\u003c/h2\u003e\n\u003ch3\u003e🩹 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-type-assertion] fix crash \u0026quot;TypeError: checker.getTypeArguments is not a function\u0026quot; (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12246\"\u003e#12246\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-type-assertion] preserve index signatures in undefined unions (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12257\"\u003e#12257\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-type-assertion] preserve phantom type arguments in generic inference (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12269\"\u003e#12269\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-type-assertion] avoid false positive in logical assignment assertions (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12278\"\u003e#12278\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-type-arguments] handle instantiation expressions (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12220\"\u003e#12220\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-condition] treat void as nullish in no-unnecessary-condition (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12241\"\u003e#12241\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e❤️ Thank You\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eanasm266 \u003ca href=\"https://github.com/anasm266\"\u003e\u003ccode\u003e@​anasm266\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAnshika Jain \u003ca href=\"https://github.com/Anshikakalpana\"\u003e\u003ccode\u003e@​Anshikakalpana\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUlrich Stark\u003c/li\u003e\n\u003cli\u003eyugo innami \u003ca href=\"https://github.com/nami8824\"\u003e\u003ccode\u003e@​nami8824\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.1\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003ev8.59.0\u003c/h2\u003e\n\u003ch2\u003e8.59.0 (2026-04-20)\u003c/h2\u003e\n\u003ch3\u003e🚀 Features\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-type-assertion] report more cases based on assignability (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/11789\"\u003e#11789\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e❤️ Thank You\u003c/h3\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/parser/CHANGELOG.md\"\u003e@​typescript-eslint/parser's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e8.59.2 (2026-05-04)\u003c/h2\u003e\n\u003cp\u003eThis was a version bump only for parser to align it with other projects, there were no code changes.\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.2\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003e8.59.1 (2026-04-27)\u003c/h2\u003e\n\u003cp\u003eThis was a version bump only for parser to align it with other projects, there were no code changes.\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.1\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003e8.59.0 (2026-04-20)\u003c/h2\u003e\n\u003cp\u003eThis was a version bump only for parser to align it with other projects, there were no code changes.\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.0\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003e8.58.2 (2026-04-13)\u003c/h2\u003e\n\u003ch3\u003e🩹 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eremove tsbuildinfo cache file from published packages (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12187\"\u003e#12187\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e❤️ Thank You\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAbhijeet Singh \u003ca href=\"https://github.com/cseas\"\u003e\u003ccode\u003e@​cseas\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.58.2\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003e8.58.1 (2026-04-08)\u003c/h2\u003e\n\u003cp\u003eThis was a version bump only for parser to align it with other projects, there were no code changes.\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.58.1\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003e8.58.0 (2026-03-30)\u003c/h2\u003e\n\u003ch3\u003e🚀 Features\u003c/h3\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/2ec35f1760aade4df4c631d76d78c7ed5e136333\"\u003e\u003ccode\u003e2ec35f1\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.59.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/52457932e5507b5ca01e720a541f3f8d01e09b9d\"\u003e\u003ccode\u003e5245793\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.59.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/ea9ae4f8817873480e3501145059f63e39e8d8a1\"\u003e\u003ccode\u003eea9ae4f\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.59.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/90c2803a4c250e0343598d41e973f95e743bf4ce\"\u003e\u003ccode\u003e90c2803\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.58.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/be6b49a02d68db9bdc8985e7e9e1598700fda2fa\"\u003e\u003ccode\u003ebe6b49a\u003c/code\u003e\u003c/a\u003e fix: remove tsbuildinfo cache file from published packages (\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/parser/issues/12187\"\u003e#12187\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/5311ed312eadf4e238324f2726ae0b1f3f2206e6\"\u003e\u003ccode\u003e5311ed3\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.58.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/493341709fe7d1d6433332b7bd2724e3332c7cdf\"\u003e\u003ccode\u003e4933417\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.58.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/8cde2d06fb9bc591a4c93452509ddbd600c76a35\"\u003e\u003ccode\u003e8cde2d0\u003c/code\u003e\u003c/a\u003e feat: support TypeScript 6 (\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/parser/issues/12124\"\u003e#12124\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/be4d54d26e695cc93605ffcca67dd75848e95c6f\"\u003e\u003ccode\u003ebe4d54d\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.57.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/c7c38aa252d7bf6708a225aebedc57686ac33dcd\"\u003e\u003ccode\u003ec7c38aa\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.57.1\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commits/v8.59.2/packages/parser\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `eslint` from 9.39.2 to 10.3.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/eslint/eslint/releases\"\u003eeslint's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev10.3.0\u003c/h2\u003e\n\u003ch2\u003eFeatures\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/379571a975f2b24d88037b9de2e72ec61d004130\"\u003e\u003ccode\u003e379571a\u003c/code\u003e\u003c/a\u003e feat: add suggestions for no-unused-private-class-members (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20773\"\u003e#20773\u003c/a\u003e) (sethamus)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eBug Fixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/b6ae5cf07b9b51802367539cb24b245b61eaa37c\"\u003e\u003ccode\u003eb6ae5cf\u003c/code\u003e\u003c/a\u003e fix: handle unavailable require cache (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20812\"\u003e#20812\u003c/a\u003e) (Simon Podlipsky)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/6fb3685bcbe9a6f72fd7dfb9129686b6fb96b0bd\"\u003e\u003ccode\u003e6fb3685\u003c/code\u003e\u003c/a\u003e fix: rule suggestions cause continuation in class body (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20787\"\u003e#20787\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eDocumentation\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/32cc7ab4ec653ce89da92deb5c40a9f4fc707fe5\"\u003e\u003ccode\u003e32cc7ab\u003c/code\u003e\u003c/a\u003e docs: fix typos in docs and comments (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20809\"\u003e#20809\u003c/a\u003e) (Tanuj Kanti)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/7f479376a2fa463d823ab762db6bb37ce8d2ee8f\"\u003e\u003ccode\u003e7f47937\u003c/code\u003e\u003c/a\u003e docs: Update README (GitHub Actions Bot)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eChores\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/d32235ec19ceea211fa86452afa383ca05f5c2f9\"\u003e\u003ccode\u003ed32235e\u003c/code\u003e\u003c/a\u003e ci: use pnpm in \u003ccode\u003eeslint-flat-config-utils\u003c/code\u003e type integration test (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20826\"\u003e#20826\u003c/a\u003e) (Francesco Trotta)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/3ffb14ea517de750ed1181579ef844af342e4096\"\u003e\u003ccode\u003e3ffb14e\u003c/code\u003e\u003c/a\u003e chore: clean up typos in comments and JSDoc (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20821\"\u003e#20821\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/22eb58a21cbde2fbd53a1fae99453d408672de50\"\u003e\u003ccode\u003e22eb58a\u003c/code\u003e\u003c/a\u003e chore: add missing continue-on-error to ecosystem-tests.yml (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20818\"\u003e#20818\u003c/a\u003e) (Josh Goldberg ✨)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/88bf0024cb36caebf2880516d9a1f81aa75dafe2\"\u003e\u003ccode\u003e88bf002\u003c/code\u003e\u003c/a\u003e ci: bump pnpm/action-setup from 6.0.1 to 6.0.3 (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20815\"\u003e#20815\u003c/a\u003e) (dependabot[bot])\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/97c8c330beae9557ad24e19f94eebc8d08d1a722\"\u003e\u003ccode\u003e97c8c33\u003c/code\u003e\u003c/a\u003e chore: update ilshidur/action-discord action to v0.4.0 (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20811\"\u003e#20811\u003c/a\u003e) (renovate[bot])\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/2f58136dd47364a4cae7054a64f7bf1e79693813\"\u003e\u003ccode\u003e2f58136\u003c/code\u003e\u003c/a\u003e chore: pin peter-evans/create-pull-request action to 5f6978f (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20810\"\u003e#20810\u003c/a\u003e) (renovate[bot])\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/77add7f1bc91ed17bba3be3289928a9146c5f5a1\"\u003e\u003ccode\u003e77add7f\u003c/code\u003e\u003c/a\u003e chore: add initial ecosystem plugin tests workflow (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/19643\"\u003e#19643\u003c/a\u003e) (Josh Goldberg ✨)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/4023b55490fae55e464fe35530ef038cdf5d79a5\"\u003e\u003ccode\u003e4023b55\u003c/code\u003e\u003c/a\u003e test: Add unit tests for SuppressionsService.prune() (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20797\"\u003e#20797\u003c/a\u003e) (kuldeep kumar)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/54080dad4f77bb39a1a843933d4ff3a2b7c175e2\"\u003e\u003ccode\u003e54080da\u003c/code\u003e\u003c/a\u003e test: add unit tests for ForkContext (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20778\"\u003e#20778\u003c/a\u003e) (kuldeep kumar)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/f0e2bcc4bf19253aaebfbd7df87824b0ca4a151f\"\u003e\u003ccode\u003ef0e2bcc\u003c/code\u003e\u003c/a\u003e test: add unit tests for SuppressionsService.suppress() method (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20765\"\u003e#20765\u003c/a\u003e) (kuldeep kumar)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/a7f0b94743a99bcdf8d07cff15ffbfa6a6c5f927\"\u003e\u003ccode\u003ea7f0b94\u003c/code\u003e\u003c/a\u003e chore: update dependency prettier to v3.8.3 (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20782\"\u003e#20782\u003c/a\u003e) (renovate[bot])\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/7bf93d9e79f6dbf77242cbb9a9b8be834730fccd\"\u003e\u003ccode\u003e7bf93d9\u003c/code\u003e\u003c/a\u003e chore: update TypeScript to v6 (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20677\"\u003e#20677\u003c/a\u003e) (sethamus)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/b42dd72e76e7f90e7f0be9458288d93353052adc\"\u003e\u003ccode\u003eb42dd72\u003c/code\u003e\u003c/a\u003e ci: bump pnpm/action-setup from 6.0.0 to 6.0.1 (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20781\"\u003e#20781\u003c/a\u003e) (dependabot[bot])\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/2b252be80f362cca7be3326a6dbe958680fdfe9a\"\u003e\u003ccode\u003e2b252be\u003c/code\u003e\u003c/a\u003e test: add unit tests for IdGenerator (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20775\"\u003e#20775\u003c/a\u003e) (kuldeep kumar)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev10.2.1\u003c/h2\u003e\n\u003ch2\u003eBug Fixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/14be92b6d1fa0923b8923830f2208e5e2705b002\"\u003e\u003ccode\u003e14be92b\u003c/code\u003e\u003c/a\u003e fix: model generator yield resumption paths in code path analysis (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20665\"\u003e#20665\u003c/a\u003e) (sethamus)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/84a19d2c32255db6b9cfc08644a607aae6d5cb62\"\u003e\u003ccode\u003e84a19d2\u003c/code\u003e\u003c/a\u003e fix: no-async-promise-executor false positives for shadowed Promise (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20740\"\u003e#20740\u003c/a\u003e) (xbinaryx)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/af764af0ec38225755fbf8a6f207f0c77b595a8d\"\u003e\u003ccode\u003eaf764af\u003c/code\u003e\u003c/a\u003e fix: clarify language and processor validation errors (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20729\"\u003e#20729\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/e251b89a38280973e468a4a9386c138f4f55d10d\"\u003e\u003ccode\u003ee251b89\u003c/code\u003e\u003c/a\u003e fix: update eslint (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20715\"\u003e#20715\u003c/a\u003e) (renovate[bot])\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eDocumentation\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/ca92ca0fb4599e8de1e2fb914e695fe7397cbe63\"\u003e\u003ccode\u003eca92ca0\u003c/code\u003e\u003c/a\u003e docs: reuse markdown-it instance for markdown filter (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20768\"\u003e#20768\u003c/a\u003e) (Amaresh  S M)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/57d2ee213305cee0cb55ef08e0480b57396269a9\"\u003e\u003ccode\u003e57d2ee2\u003c/code\u003e\u003c/a\u003e docs:  Enable Eleventy incremental mode for watch (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20767\"\u003e#20767\u003c/a\u003e) (Amaresh  S M)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/c1621b915742276e5f4b25efe790ca62296330dc\"\u003e\u003ccode\u003ec1621b9\u003c/code\u003e\u003c/a\u003e docs: fix typos in code-path-analyzer.js (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20700\"\u003e#20700\u003c/a\u003e) (Ayush Shukla)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/1418d522d10bde1960f4942afb548bc7160ec49e\"\u003e\u003ccode\u003e1418d52\u003c/code\u003e\u003c/a\u003e docs: Update README (GitHub Actions Bot)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/39771e6e600f0b0617fdeafff6dd07e4211ffde6\"\u003e\u003ccode\u003e39771e6\u003c/code\u003e\u003c/a\u003e docs: Update README (GitHub Actions Bot)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/71e04693def2df57268f08f3072a2749df6bf438\"\u003e\u003ccode\u003e71e0469\u003c/code\u003e\u003c/a\u003e docs: fix incomplete JSDoc param description in no-shadow rule (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20728\"\u003e#20728\u003c/a\u003e) (kuldeep kumar)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/22119ceb93e28f62262fc1d98ff1b1442d6e2dbf\"\u003e\u003ccode\u003e22119ce\u003c/code\u003e\u003c/a\u003e docs: clarify scope of for-direction rule with dead code examples (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20723\"\u003e#20723\u003c/a\u003e) (Amaresh  S M)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/8f3fb77f122a5641d1833cad5d93f3f54fa3be0b\"\u003e\u003ccode\u003e8f3fb77\u003c/code\u003e\u003c/a\u003e docs: document \u003ccode\u003emeta.docs.dialects\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20718\"\u003e#20718\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eChores\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/7ddfea9c4f62add1588c5c0b0da568c299246383\"\u003e\u003ccode\u003e7ddfea9\u003c/code\u003e\u003c/a\u003e chore: update dependency prettier to v3.8.2 (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20770\"\u003e#20770\u003c/a\u003e) (renovate[bot])\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/fac40e1de2ba7646cc7cd2d3f93fbdd1f8819001\"\u003e\u003ccode\u003efac40e1\u003c/code\u003e\u003c/a\u003e ci: bump pnpm/action-setup from 5.0.0 to 6.0.0 (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20763\"\u003e#20763\u003c/a\u003e) (dependabot[bot])\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/7246f923332522d8b3d46b6ee646fce88535f3fb\"\u003e\u003ccode\u003e7246f92\u003c/code\u003e\u003c/a\u003e test: add tests for SuppressionsService.load() error handling (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20734\"\u003e#20734\u003c/a\u003e) (kuldeep kumar)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/4f34b1e592b0f63d766d9903998e8e36eb49d3aa\"\u003e\u003ccode\u003e4f34b1e\u003c/code\u003e\u003c/a\u003e chore: update pnpm/action-setup action to v5 (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20762\"\u003e#20762\u003c/a\u003e) (renovate[bot])\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/78892043a36da4aa7640b59c99344b00c181048a\"\u003e\u003ccode\u003e7889204\u003c/code\u003e\u003c/a\u003e 10.3.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/5b69b4fce4dc407c8e960eba638b5a3409c4f1fd\"\u003e\u003ccode\u003e5b69b4f\u003c/code\u003e\u003c/a\u003e Build: changelog update for 10.3.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/d32235ec19ceea211fa86452afa383ca05f5c2f9\"\u003e\u003ccode\u003ed32235e\u003c/code\u003e\u003c/a\u003e ci: use pnpm in \u003ccode\u003eeslint-flat-config-utils\u003c/code\u003e type integration test (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20826\"\u003e#20826\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/b6ae5cf07b9b51802367539cb24b245b61eaa37c\"\u003e\u003ccode\u003eb6ae5cf\u003c/code\u003e\u003c/a\u003e fix: handle unavailable require cache (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20812\"\u003e#20812\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/3ffb14ea517de750ed1181579ef844af342e4096\"\u003e\u003ccode\u003e3ffb14e\u003c/code\u003e\u003c/a\u003e chore: clean up typos in comments and JSDoc (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20821\"\u003e#20821\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/6fb3685bcbe9a6f72fd7dfb9129686b6fb96b0bd\"\u003e\u003ccode\u003e6fb3685\u003c/code\u003e\u003c/a\u003e fix: rule suggestions cause continuation in class body (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20787\"\u003e#20787\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/22eb58a21cbde2fbd53a1fae99453d408672de50\"\u003e\u003ccode\u003e22eb58a\u003c/code\u003e\u003c/a\u003e chore: add missing continue-on-error to ecosystem-tests.yml (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20818\"\u003e#20818\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/88bf0024cb36caebf2880516d9a1f81aa75dafe2\"\u003e\u003ccode\u003e88bf002\u003c/code\u003e\u003c/a\u003e ci: bump pnpm/action-setup from 6.0.1 to 6.0.3 (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20815\"\u003e#20815\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/379571a975f2b24d88037b9de2e72ec61d004130\"\u003e\u003ccode\u003e379571a\u003c/code\u003e\u003c/a\u003e feat: add suggestions for no-unused-private-class-members (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20773\"\u003e#20773\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/97c8c330beae9557ad24e19f94eebc8d08d1a722\"\u003e\u003ccode\u003e97c8c33\u003c/code\u003e\u003c/a\u003e chore: update ilshidur/action-discord action to v0.4.0 (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20811\"\u003e#20811\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/eslint/eslint/compare/v9.39.2...v10.3.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `eslint-plugin-react-hooks` from 7.0.1 to 7.1.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/facebook/react/releases\"\u003eeslint-plugin-react-hooks's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eeslint-plugin-react-hooks@7.1.1 (April 17, 2026)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eNote:\u003c/strong\u003e 7.1.0 accidentally removed the \u003ccode\u003ecomponent-hook-factories\u003c/code\u003e rule, causing errors for users who referenced it in their ESLint config. This is now fixed.\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdd deprecated no-op \u003ccode\u003ecomponent-hook-factories\u003c/code\u003e rule for backwards compatibility. (\u003ca href=\"https://github.com/mofeiZ\"\u003e\u003ccode\u003e@​mofeiZ\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/36307\"\u003e#36307\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eeslint-plugin-react-hooks@7.1.0 (April 16, 2026)\u003c/h2\u003e\n\u003cp\u003eThis release adds ESLint v10 support, improves performance by skipping compilation for non-React files, and includes compiler lint improvements including better \u003ccode\u003eset-state-in-effect\u003c/code\u003e detection, improved ref validation, and more helpful error reporting.\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdd ESLint v10 support. (\u003ca href=\"https://github.com/azat-io\"\u003e\u003ccode\u003e@​azat-io\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/35720\"\u003e#35720\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSkip compilation for non-React files to improve performance. (\u003ca href=\"https://github.com/josephsavona\"\u003e\u003ccode\u003e@​josephsavona\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/35589\"\u003e#35589\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix exhaustive deps bug with Flow type casting. (\u003ca href=\"https://github.com/jorge-cab\"\u003e\u003ccode\u003e@​jorge-cab\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/35691\"\u003e#35691\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix \u003ccode\u003euseEffectEvent\u003c/code\u003e checks in component syntax. (\u003ca href=\"https://github.com/jbrown215\"\u003e\u003ccode\u003e@​jbrown215\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/35041\"\u003e#35041\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eImproved \u003ccode\u003eset-state-in-effect\u003c/code\u003e validation with fewer false negatives. (\u003ca href=\"https://github.com/jorge-cab\"\u003e\u003ccode\u003e@​jorge-cab\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/35134\"\u003e#35134\u003c/a\u003e, \u003ca href=\"https://github.com/josephsavona\"\u003e\u003ccode\u003e@​josephsavona\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/35147\"\u003e#35147\u003c/a\u003e, \u003ca href=\"https://github.com/jackpope\"\u003e\u003ccode\u003e@​jackpope\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/35214\"\u003e#35214\u003c/a\u003e, \u003ca href=\"https://github.com/chesnokov-tony\"\u003e\u003ccode\u003e@​chesnokov-tony\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/35419\"\u003e#35419\u003c/a\u003e, \u003ca href=\"https://github.com/jsleitor\"\u003e\u003ccode\u003e@​jsleitor\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/36107\"\u003e#36107\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eImproved ref validation for non-mutating functions and event handler props. (\u003ca href=\"https://github.com/josephsavona\"\u003e\u003ccode\u003e@​josephsavona\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/35893\"\u003e#35893\u003c/a\u003e, \u003ca href=\"https://github.com/kolvian\"\u003e\u003ccode\u003e@​kolvian\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/35062\"\u003e#35062\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCompiler now reports all errors instead of stopping at the first. (\u003ca href=\"https://github.com/josephsavona\"\u003e\u003ccode\u003e@​josephsavona\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/35873\"\u003e#35873\u003c/a\u003e–\u003ca href=\"https://redirect.github.com/facebook/react/pull/35884\"\u003e#35884\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eImproved source locations and error display in compiler diagnostics. (\u003ca href=\"https://github.com/nathanmarks\"\u003e\u003ccode\u003e@​nathanmarks\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/35348\"\u003e#35348\u003c/a\u003e, \u003ca href=\"https://github.com/josephsavona\"\u003e\u003ccode\u003e@​josephsavona\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/34963\"\u003e#34963\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/facebook/react/blob/main/packages/eslint-plugin-react-hooks/CHANGELOG.md\"\u003eeslint-plugin-react-hooks's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e7.1.1\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eNote:\u003c/strong\u003e 7.1.0 accidentally removed the \u003ccode\u003ecomponent-hook-factories\u003c/code\u003e rule, causing errors for users who referenced it in their ESLint config. This is now fixed.\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdd deprecated no-op \u003ccode\u003ecomponent-hook-factories\u003c/code\u003e rule for backwards compatibility. (\u003ca href=\"https://github.com/mofeiZ\"\u003e\u003ccode\u003e@​mofeiZ\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/facebook/react/pull/36307\"\u003e#36307\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e7.1.0\u003c/h2\u003e\n\u003cp\u003eThis release adds ESLint v10 support, improves performance by skipping compilation for non-React...\n\n_Description has been truncated_","html_url":"https://github.com/zvineshielding/zvine-app/pull/9","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/zvineshielding%2Fzvine-app/issues/9","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/9/packages"}}]}